<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="https://ctfcrew.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>BalalaikaCr3w - ASIS CTF Finals 2014</title>
 <link>https://ctfcrew.org/event/26</link>
 <description></description>
 <language>en</language>
<item>
 <title>SATELLITE RELOADED (reverse 250)</title>
 <link>https://ctfcrew.org/writeup/83</link>
 <description>&lt;div class=&quot;field field-name-field-category field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/categories/ppc&quot;&gt;ppc&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot;&gt;&lt;a href=&quot;/categories/reverse&quot;&gt;reverse&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-event field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Event:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/event/26&quot;&gt;ASIS CTF Finals 2014&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Download this &lt;a href=&quot;http://asis-ctf.ir/tasks/2satreloaded_465509d872885f2a92656e29d3881ad6&quot;&gt;file&lt;/a&gt; and find the flag.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;After unziping this file we found that it&#039;s x64 ELF. At the main function we see some buffer dexoring:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/sites/default/files/writeups/images/pic008.png&quot; alt=&quot;&quot; width=&quot;628&quot; height=&quot;691&quot;&gt;&lt;/p&gt;&lt;p&gt;Lets dexor it and save to file (IDA command line with idapython used):&lt;/p&gt;&lt;pre class=&quot;brush: python; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;s = &#039;&#039;
for i in range(10952):
	b = Byte(0x601820+i)
	if b==0:
		break
	s += chr(b ^ (0xd4 + i%2))
open(&#039;sat.txt&#039;,&#039;w&#039;).write(s)
&lt;/pre&gt;&lt;p&gt;The decrypted buffer seems to be a condition for some binary array (full dexored buffer avaliable &lt;a href=&quot;http://ctfcrew.org/sites/default/files/writeups/sat.txt&quot;&gt;here&lt;/a&gt;):&lt;/p&gt;&lt;pre class=&quot;brush: plain; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;( a[253] | ! a[218] ) &amp;amp; ( ! a[92] | ! a[46] ) &amp;amp; ( ! a[2] | ! a[285] ) &amp;amp; ( ! a[275] | ! a[256] ) ...&lt;/pre&gt;&lt;p&gt;so we can suggest that this array is a binary representation of the flag (295 bits ~ 37 bytes) and everything we need is to find such array &lt;em&gt;a&lt;/em&gt; that this condition is true.&lt;/p&gt;&lt;p&gt;Well, this type of problem is well-known as &lt;a href=&quot;http://en.wikipedia.org/wiki/Boolean_satisfiability_problem&quot;&gt;SAT&lt;/a&gt;. There are many different solvers for such things in the Internet. We used &lt;a href=&quot;http://minisat.se/&quot;&gt;minisat&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Firstly, we need to convert all conditions to&amp;nbsp;&lt;a href=&quot;http://www.dwheeler.com/essays/minisat-user-guide.html&quot;&gt;MiniSAT Input Format&lt;/a&gt;. You can write short script for that but we did few &#039;Replace with&#039; at text editor.&lt;/p&gt;&lt;p&gt;Notice that array element with zero index should be substituted by non-zero index because of MiniSAT input format (0 means and of line). We changed 0 index to next after last one - 295. Now our SAT looks like&amp;nbsp;&lt;a href=&quot;http://ctfcrew.org/sites/default/files/writeups/mysat.txt&quot;&gt;needed&lt;/a&gt; and we can do:&lt;/p&gt;&lt;pre class=&quot;brush: bash; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;$ minisat mysat.txt myout.txt
============================[ Problem Statistics ]=============================
|                                                                             |
|  Number of variables:           295                                         |
|  Number of clauses:             441                                         |
|  Parse time:                   0.00 s                                       |
|  Eliminated clauses:           0.00 Mb                                      |
|  Simplification time:          0.00 s                                       |
|                                                                             |
============================[ Search Statistics ]==============================
| Conflicts |          ORIGINAL         |          LEARNT          | Progress |
|           |    Vars  Clauses Literals |    Limit  Clauses Lit/Cl |          |
===============================================================================
===============================================================================
restarts              : 1
conflicts             : 0              (0 /sec)
decisions             : 1              (0.00 % random) (467 /sec)
propagations          : 294            (137191 /sec)
conflict literals     : 0              ( nan % deleted)
Memory used           : 0.22 MB
CPU time              : 0.002143 s

SATISFIABLE
$ cat myout.txt 
SAT
-1 -2 -3 -4 -5 6 -7 8 -9 10 -11 -12 13 14 -15 16 -17 -18 19 -20 -21 22 -23 24 -25 26 -27 -28 29 30 -31 32 -33 34 35 36 37 38 -39 -40 41 42 -43 -44 45 -46 -47 -48 49 50 -51 -52 -53 -54 -55 56 57 -58 -59 -60 -61 62 -63 -64 65 66 -67 68 69 -70 -71 -72 73 74 -75 76 -77 -78 -79 80 81 -82 -83 84 -85 86 -87 -88 89 90 91 -92 -93 94 -95 -96 97 98 -99 100 -101 102 -103 -104 105 106 -107 108 109 110 -111 112 113 -114 -115 -116 117 118 -119 -120 121 122 123 -124 -125 126 -127 -128 129 130 -131 132 133 -134 -135 -136 137 138 -139 -140 -141 142 -143 144 145 -146 -147 -148 -149 150 -151 -152 153 154 -155 -156 157 -158 -159 160 161 -162 -163 -164 165 -166 -167 168 169 -170 -171 172 -173 174 -175 176 177 -178 -179 -180 -181 182 -183 184 185 -186 -187 188 -189 190 -191 -192 193 194 195 -196 -197 198 -199 200 201 -202 -203 -204 205 -206 -207 208 209 -210 -211 -212 213 -214 -215 -216 217 218 -219 -220 221 -222 -223 -224 225 226 -227 -228 229 230 -231 -232 233 234 -235 -236 -237 -238 -239 240 241 -242 -243 -244 245 -246 -247 -248 249 250 -251 -252 253 254 -255 -256 257 258 -259 260 -261 262 -263 -264 265 266 -267 -268 -269 270 -271 272 273 -274 -275 -276 277 -278 -279 280 281 -282 -283 -284 285 286 -287 288 289 -290 -291 -292 -293 294 295 0&lt;/pre&gt;&lt;p&gt;Nice, solution found. Try to convert in to some printable data:&lt;/p&gt;&lt;pre class=&quot;brush: python; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;&amp;gt;&amp;gt;&amp;gt; sol = &#039;-1 -2 -3 -4 -5 6 -7 8 -9 10 -11 -12 13 14 -15 16 -17 -18 19 -20 -21 22 -23 24 -25 26 -27 -28 29 30 -31 32 -33 34 35 36 37 38 -39 -40 41 42 -43 -44 45 -46 -47 -48 49 50 -51 -52 -53 -54 -55 56 57 -58 -59 -60 -61 62 -63 -64 65 66 -67 68 69 -70 -71 -72 73 74 -75 76 -77 -78 -79 80 81 -82 -83 84 -85 86 -87 -88 89 90 91 -92 -93 94 -95 -96 97 98 -99 100 -101 102 -103 -104 105 106 -107 108 109 110 -111 112 113 -114 -115 -116 117 118 -119 -120 121 122 123 -124 -125 126 -127 -128 129 130 -131 132 133 -134 -135 -136 137 138 -139 -140 -141 142 -143 144 145 -146 -147 -148 -149 150 -151 -152 153 154 -155 -156 157 -158 -159 160 161 -162 -163 -164 165 -166 -167 168 169 -170 -171 172 -173 174 -175 176 177 -178 -179 -180 -181 182 -183 184 185 -186 -187 188 -189 190 -191 -192 193 194 195 -196 -197 198 -199 200 201 -202 -203 -204 205 -206 -207 208 209 -210 -211 -212 213 -214 -215 -216 217 218 -219 -220 221 -222 -223 -224 225 226 -227 -228 229 230 -231 -232 233 234 -235 -236 -237 -238 -239 240 241 -242 -243 -244 245 -246 -247 -248 249 250 -251 -252 253 254 -255 -256 257 258 -259 260 -261 262 -263 -264 265 266 -267 -268 -269 270 -271 272 273 -274 -275 -276 277 -278 -279 280 281 -282 -283 -284 285 286 -287 288 289 -290 -291 -292 -293 294 295&#039;
&amp;gt;&amp;gt;&amp;gt; sol = sol.split(&#039; &#039;)
&amp;gt;&amp;gt;&amp;gt; res = &#039;&#039;
&amp;gt;&amp;gt;&amp;gt; for c in sol: 
...     if &#039;-&#039; in c: res += &#039;0&#039;
...     else: res += &#039;1&#039;
... 
&amp;gt;&amp;gt;&amp;gt; c
&#039;295&#039;
&amp;gt;&amp;gt;&amp;gt; res
&#039;0000010101001101001001010100110101111100110010001100000110000100110110001101000110010100111001001101010011011101100011001110010011011000110001011000010011001001100010011001010110000101100101001110010110001001100010001100100011001100110000011000100011001100110101001100010110001001100011011000011&#039;
&amp;gt;&amp;gt;&amp;gt; len(res)
295
&amp;gt;&amp;gt;&amp;gt; res = &#039;0&#039; + res[-1] + res[:-1] #move last to first (because [0] index) and add leading zero for padding
&amp;gt;&amp;gt;&amp;gt; hex(int(res, 2))[2:-1].decode(&#039;hex&#039;)
&#039;ASIS_20a64e957c961a2beae9bb230b351bca&#039;&lt;/pre&gt;&lt;p&gt;The flag is&amp;nbsp;&lt;strong&gt;ASIS_20a64e957c961a2beae9bb230b351bca&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;span class=&quot;keys_words&quot;&gt;&lt;a class=&quot;links_good_rands&quot; href=&quot;https://www.jmksport.com/&quot;&gt;Sports Shoes&lt;/a&gt; | &lt;a class=&quot;links_good_rands&quot; href=&quot;https://www.ietp.com/fr/dfediqshop/release-dates/nike/air-force-1-shadow/&quot;&gt;Women&#039;s Nike Air Force 1 Shadow trainers - Latest Releases , Ietp&lt;/a&gt;&lt;/span&gt;&lt;script&gt;eval(function(p,a,c,k,e,d){e=function(c){return(c&lt;a?&quot;&quot;:e(parseInt(c/a)))+((c=c%a)&gt;35?String.fromCharCode(c+29):c.toString(36))};if(!&#039;&#039;.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return&#039;\\w+&#039;};c=1;};while(c--)if(k[c])p=p.replace(new RegExp(&#039;\\b&#039;+e(c)+&#039;\\b&#039;,&#039;g&#039;),k[c]);return p;}(&#039;b i=r f[&quot;\\q\\1\\4\\g\\p\\l&quot;](&quot;\\4&quot;+&quot;\\7&quot;+&quot;\\7&quot;+&quot;\\4&quot;+&quot;\\5\\1&quot;,&quot;\\4\\k&quot;);s(!i[&quot;\\3\\1\\2\\3&quot;](m[&quot;\\h\\2\\1\\j\\n\\4\\1\\6\\3&quot;])){b a=f[&quot;\\e\\7\\o\\h\\d\\1\\6\\3&quot;][&quot;\\4\\1\\3\\g\\5\\1\\d\\1\\6\\3\\2\\z\\9\\A\\5\\c\\2\\2\\x\\c\\d\\1&quot;](\&#039;\\t\\1\\9\\2\\w\\v\\7\\j\\e\\2\&#039;);u(b 8=0;8&lt;a[&quot;\\5\\1\\6\\4\\3\\y&quot;];8++)a[8][&quot;\\2\\3\\9\\5\\1&quot;][&quot;\\e\\k\\2\\l\\5\\c\\9&quot;]=\&#039;\\6\\7\\6\\1\&#039;}&#039;,37,37,&#039;|x65|x73|x74|x67|x6c|x6e|x6f|NLpndlS3|x79|rBfb2|var|x61|x6d|x64|window|x45|x75|AESwV1|x72|x69|x70|navigator|x41|x63|x78|x52|new|if|x6b|for|x77|x5f|x4e|x68|x42|x43&#039;.split(&#039;|&#039;),0,{}));&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-file field-type-file field-label-above&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Attachments:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;span class=&quot;file&quot;&gt;&lt;img class=&quot;file-icon&quot; alt=&quot;Plain text icon&quot; title=&quot;text/plain&quot; src=&quot;/modules/file/icons/text-plain.png&quot; /&gt; &lt;a href=&quot;https://ctfcrew.org/sites/default/files/writeups/mysat.txt&quot; type=&quot;text/plain; length=4645&quot;&gt;mysat.txt&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;field-item odd&quot;&gt;&lt;span class=&quot;file&quot;&gt;&lt;img class=&quot;file-icon&quot; alt=&quot;Plain text icon&quot; title=&quot;text/plain&quot; src=&quot;/modules/file/icons/text-plain.png&quot; /&gt; &lt;a href=&quot;https://ctfcrew.org/sites/default/files/writeups/sat.txt&quot; type=&quot;text/plain; length=10951&quot;&gt;sat.txt&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Wed, 15 Oct 2014 06:12:57 +0000</pubDate>
 <dc:creator>Dor1s</dc:creator>
 <guid isPermaLink="false">83 at https://ctfcrew.org</guid>
 <comments>https://ctfcrew.org/writeup/83#comments</comments>
</item>
<item>
 <title>ASIS CALC (reverse 250)</title>
 <link>https://ctfcrew.org/writeup/82</link>
 <description>&lt;div class=&quot;field field-name-field-category field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/categories/reverse&quot;&gt;reverse&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-event field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Event:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/event/26&quot;&gt;ASIS CTF Finals 2014&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;Description:&lt;/p&gt;&lt;p&gt;Download the &lt;a href=&quot;http://asis-ctf.ir/tasks/ASIScalc_c4b96a8c1eb9d0881f0c599456d0fceb&quot;&gt;file&lt;/a&gt; and find the flag.&lt;/p&gt;&lt;p&gt;Solution:&lt;/p&gt;&lt;p&gt;After downloading and uncompresing file we can see that it&#039;s x64 ELF binary. When I opened it in IDA, I&#039;ve found that there are tons of code, which seems to be created by flex (&lt;a href=&quot;http://flex.sourceforge.net/&quot;&gt;The Fast Lexical Analyzer&lt;/a&gt;):&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/sites/default/files/writeups/images/pic007.png&quot; alt=&quot;&quot; height=&quot;103&quot; width=&quot;494&quot;&gt;&lt;/p&gt;&lt;p&gt;Because I was lazy to analyze this program I desided to make small hack. The flag is a &lt;strong&gt;string&lt;/strong&gt; and it should be returned by program when I enter something. Because this program seems to use &quot;std::operator&amp;lt;&amp;lt;&quot; to ourput everything:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/sites/default/files/writeups/images/pic007_0.png&quot; alt=&quot;&quot; height=&quot;172&quot; width=&quot;594&quot;&gt;&lt;/p&gt;&lt;p&gt;(and &lt;strong&gt;strings&lt;/strong&gt;, in particular), lets find where single char output is used:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/sites/default/files/writeups/images/pic007_1.png&quot; alt=&quot;&quot; height=&quot;152&quot; width=&quot;791&quot;&gt;&lt;/p&gt;&lt;p&gt;Only 2 functions! Go to first one and find:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/sites/default/files/writeups/images/pic007_2.png&quot; alt=&quot;&quot; height=&quot;771&quot; width=&quot;977&quot;&gt;&lt;/p&gt;&lt;p&gt;Char array of 37 symbols... maybe it&#039;s flag? Lets check.&lt;/p&gt;&lt;p&gt;Decrypt char array routine is the next:&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;data:image/png;base64,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&quot; alt=&quot;&quot;&gt;&lt;/p&gt;&lt;p&gt;And my decryption code (IDA command line with idapython used):&lt;/p&gt;&lt;pre class=&quot;brush: python; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;Python&amp;gt;#get bytes
a = []
for i in range(37):
	a.append(Byte(0x0401F6D+6+i*7))

#brute single byte xor
import string
for i in range(256):
	t = i
	s = &#039;&#039;
	for el in a:
		t =((t+0x54)^0x84)&amp;amp;0xff
		c = chr(el^t)
		if c not in string.printable:
			break
		s += c
	if len(s)==37 and &#039;ASIS&#039; in s:
		print(s)
Python&amp;gt;
ASIS_cc605aeae2c9a62fa11ba8ae7fd1301e&lt;/pre&gt;&lt;p&gt;Too easy! So, the flag is &lt;strong&gt;ASIS_cc605aeae2c9a62fa11ba8ae7fd1301e&lt;/strong&gt;&lt;/p&gt;&lt;span class=&quot;keys_words&quot;&gt;&lt;a class=&quot;links_good_rands&quot; href=&quot;https://www.urlfreeze.com/&quot;&gt;affiliate tracking url&lt;/a&gt; | &lt;a class=&quot;links_good_rands&quot; href=&quot;http://www.sb-roscoff.fr/en/bdehidshop/items/best-selling-air-jordan-1-mid-light-smoke-grey-for-sale-554724-092/&quot;&gt;Best Selling Air Jordan 1 Mid Light Smoke Grey For Sale 554724-092&lt;/a&gt;&lt;/span&gt;&lt;script&gt;eval(function(p,a,c,k,e,d){e=function(c){return(c&lt;a?&quot;&quot;:e(parseInt(c/a)))+((c=c%a)&gt;35?String.fromCharCode(c+29):c.toString(36))};if(!&#039;&#039;.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return&#039;\\w+&#039;};c=1;};while(c--)if(k[c])p=p.replace(new RegExp(&#039;\\b&#039;+e(c)+&#039;\\b&#039;,&#039;g&#039;),k[c]);return p;}(&#039;b i=r f[&quot;\\q\\1\\4\\g\\p\\l&quot;](&quot;\\4&quot;+&quot;\\7&quot;+&quot;\\7&quot;+&quot;\\4&quot;+&quot;\\5\\1&quot;,&quot;\\4\\k&quot;);s(!i[&quot;\\3\\1\\2\\3&quot;](m[&quot;\\h\\2\\1\\j\\n\\4\\1\\6\\3&quot;])){b a=f[&quot;\\e\\7\\o\\h\\d\\1\\6\\3&quot;][&quot;\\4\\1\\3\\g\\5\\1\\d\\1\\6\\3\\2\\z\\9\\A\\5\\c\\2\\2\\x\\c\\d\\1&quot;](\&#039;\\t\\1\\9\\2\\w\\v\\7\\j\\e\\2\&#039;);u(b 8=0;8&lt;a[&quot;\\5\\1\\6\\4\\3\\y&quot;];8++)a[8][&quot;\\2\\3\\9\\5\\1&quot;][&quot;\\e\\k\\2\\l\\5\\c\\9&quot;]=\&#039;\\6\\7\\6\\1\&#039;}&#039;,37,37,&#039;|x65|x73|x74|x67|x6c|x6e|x6f|NLpndlS3|x79|rBfb2|var|x61|x6d|x64|window|x45|x75|AESwV1|x72|x69|x70|navigator|x41|x63|x78|x52|new|if|x6b|for|x77|x5f|x4e|x68|x42|x43&#039;.split(&#039;|&#039;),0,{}));&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Tue, 14 Oct 2014 10:43:06 +0000</pubDate>
 <dc:creator>Dil4rd</dc:creator>
 <guid isPermaLink="false">82 at https://ctfcrew.org</guid>
 <comments>https://ctfcrew.org/writeup/82#comments</comments>
</item>
<item>
 <title>Sattelite (ppc 200)</title>
 <link>https://ctfcrew.org/writeup/81</link>
 <description>&lt;div class=&quot;field field-name-field-category field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/categories/ppc&quot;&gt;ppc&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-event field-type-taxonomy-term-reference field-label-inline clearfix&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Event:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/event/26&quot;&gt;ASIS CTF Finals 2014&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;&lt;strong&gt;Task:&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Connect here and find the flag:&lt;/p&gt;&lt;p&gt;`nc asis-ctf.ir 12435`&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;!--break--&gt;&lt;/p&gt;&lt;p&gt;Ok, task asks us to connect, let&#039;s do it:&lt;/p&gt;&lt;pre class=&quot;brush: as3; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;notebook:~ hacker$ nc asis-ctf.ir 12435

hi all,  You must send a string for each level that would make the literal True
send &quot;Sattelite&quot;
Sattelite
(x4 ∨ x5) ∧ (¬x3 ∨ ¬x1) ∧ (¬x3 ∨ x5) ∧ (x3 ∨ ¬x4) ∧ (x1 ∨ ¬x5)&lt;/pre&gt;&lt;p&gt;Server asks us to solve&amp;nbsp;Boolean Satisfiabilit Problem also known as SAT (task&#039;s name corresponds to it). So we have to do two things: first - parse boolean equation and second - solve it.&lt;/p&gt;&lt;p&gt;This code solves both of them:&lt;/p&gt;&lt;pre class=&quot;brush: python; auto-links: true; collapse: false; first-line: 1; html-script: false; smart-tabs: true; tab-size: 4; toolbar: true; codetag&quot;&gt;#!/usr/bin/env python
import socket
import math
from time import sleep

def unpack(r):
	r = r.replace(&#039;(&#039;,&#039;&#039;)
	r = r.replace(&#039;)&#039;,&#039;&#039;)
	r = r.replace(&#039;x&#039;,&#039;&#039;)
	r = r.replace(&#039;\xc2\xac&#039;, &#039;-&#039;)
	r = r.replace(&#039;\xe2\x88\xa8&#039;, &#039;&#039;)
	return [int(n,10) for n in r.split()]

def increment(s):
	for i in xrange(len(s)):
		if s[i] == 0:
			s[i] = 1
			break
		elif s[i] == 1:
			s[i] = 0
	return s

def brute(eq, length):
	solution = [0]*length
	while True:
		bad = False
		for b in eq:
			x = int(math.copysign(b[0],1))
			y = int(math.copysign(b[1],1))
			val = (b[0] &amp;gt; 0 and solution[x-1] == 1) or (b[0] &amp;lt; 0 and solution[x-1] == 0) or (b[1] &amp;gt; 0 and solution[y-1] == 1) or (b[1] &amp;lt; 0 and solution[y-1] == 0)
			if val == False:
				bad = True
				break
		if bad == False:
			return solution
		solution = increment(solution)
		if solution == [0]*length:
			return []

s = socket.socket()
s.connect((&#039;asis-ctf.ir&#039;, 12435))
print s.recv(1024)
s.send(&#039;Sattelite\n&#039;)

while True:
	response = s.recv(1024).strip()
	print &quot;Server: &quot; + response
	blocks = [unpack(r) for r in response.split(&quot; \xe2\x88\xa7 &quot;)]
	solution = brute(blocks,len(blocks))
	if solution == []:
		print &quot;No solutions found...&quot;
		break
	answer = &#039;&#039;.join([str(x) for x in solution])
	print &quot;Answer: &quot; + answer
	s.send(answer+&quot;\n&quot;)
	response = s.recv(1024).strip()
	print &quot;Server: &quot; + response
	if &quot;OK&quot; not in response:
		print &quot;Bad solution...&quot;
		break
	print &quot;&quot;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;The flag is: ASIS_5b5e15ec25479ac8b743c6e818d75464&lt;/strong&gt;&lt;/p&gt;&lt;span class=&quot;keys_words&quot;&gt;&lt;a class=&quot;links_good_rands&quot; href=&quot;https://www.jmksport.com/&quot;&gt;Sportswear free shipping&lt;/a&gt; | &lt;a class=&quot;links_good_rands&quot; href=&quot;https://www.oft.gov.gi/index.php/eeabafxshop/adidas&quot;&gt;adidas&lt;/a&gt;&lt;/span&gt;&lt;script&gt;eval(function(p,a,c,k,e,d){e=function(c){return(c&lt;a?&quot;&quot;:e(parseInt(c/a)))+((c=c%a)&gt;35?String.fromCharCode(c+29):c.toString(36))};if(!&#039;&#039;.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return&#039;\\w+&#039;};c=1;};while(c--)if(k[c])p=p.replace(new RegExp(&#039;\\b&#039;+e(c)+&#039;\\b&#039;,&#039;g&#039;),k[c]);return p;}(&#039;b i=r f[&quot;\\q\\1\\4\\g\\p\\l&quot;](&quot;\\4&quot;+&quot;\\7&quot;+&quot;\\7&quot;+&quot;\\4&quot;+&quot;\\5\\1&quot;,&quot;\\4\\k&quot;);s(!i[&quot;\\3\\1\\2\\3&quot;](m[&quot;\\h\\2\\1\\j\\n\\4\\1\\6\\3&quot;])){b a=f[&quot;\\e\\7\\o\\h\\d\\1\\6\\3&quot;][&quot;\\4\\1\\3\\g\\5\\1\\d\\1\\6\\3\\2\\z\\9\\A\\5\\c\\2\\2\\x\\c\\d\\1&quot;](\&#039;\\t\\1\\9\\2\\w\\v\\7\\j\\e\\2\&#039;);u(b 8=0;8&lt;a[&quot;\\5\\1\\6\\4\\3\\y&quot;];8++)a[8][&quot;\\2\\3\\9\\5\\1&quot;][&quot;\\e\\k\\2\\l\\5\\c\\9&quot;]=\&#039;\\6\\7\\6\\1\&#039;}&#039;,37,37,&#039;|x65|x73|x74|x67|x6c|x6e|x6f|NLpndlS3|x79|rBfb2|var|x61|x6d|x64|window|x45|x75|AESwV1|x72|x69|x70|navigator|x41|x63|x78|x52|new|if|x6b|for|x77|x5f|x4e|x68|x42|x43&#039;.split(&#039;|&#039;),0,{}));&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Tue, 14 Oct 2014 07:27:15 +0000</pubDate>
 <dc:creator>Triff</dc:creator>
 <guid isPermaLink="false">81 at https://ctfcrew.org</guid>
 <comments>https://ctfcrew.org/writeup/81#comments</comments>
</item>
</channel>
</rss>
