Merge branch 'master' of github.com:failedxyz/easyctf
This commit is contained in:
commit
2c5c7e31dc
16 changed files with 24 additions and 173 deletions
File diff suppressed because one or more lines are too long
|
@ -1,3 +1,3 @@
|
||||||
SUU<EFBFBD>‹‰û
|
SUU<EFBFBD>‹‰û
|
||||||
]òŒÔ#ÓDœöG•Z<12><1C><>)!!"rÛ5¥ã q£{,./³Ý:À;o°`99:É3,:ÍRÈDºVšTm¸D\IjÌ”Y¡\ÛVXY¨Tœ
|
]òŒÔ#ÓDœöG•Z<12><1C><>)!!"rÛ5¥ã q£{,./³Ý:À;o°`99:É3,:ÍRÈDºVšTm¸D\IjÌ”Y¡\ÛVXY¨Tœ
|
||||||
’nsg@è%Gãi•{±qJ<71>avW,†y-ö–z{|$ŒpÙ@ÖÖvŠ—ƒ¬É‡<07>qŸM<C5B8>¶`›Ï¥™™ši“<69>š»R®ûbVª·£Œ[¥ñ¨‰ö\¿ ¶—ìëàŒ>€»»¼È¶2NüÃÃÄ.ÁJF„ËË̉ŸB“ÕYÓ+Å‹‰‡ƒQ]‹ÜÞßÕ÷<EFBFBD>ºláÖ(`l¼ííî,jh˳¤™“–‹œÚž’‰›<E280B0> ujf$gct|)d~aok}<1`|a{r7lv:-<nwxNHDJGDHSOCLY_K\;234åv^9šÝ®ýgP5a%,0e/3iIÐÒÕò %q6&97xWXYZ[]_][egekmomkege{}}{egekmomkege[]_][¥§¥«¯«¥§¥»½¿½»¥§¥«¯«¥§¥ÛÝßÝÛåçåëíïíëåçåûýÿýûåçåëíïíëåçåÛÝßÝÛ¥§¥«¯«¥§¥»½¿½»¥§¥«¯«¥§¥[]_][egekmomkege{}}{egekmomkege[]_][¥
|
’nsg@è%Gãi•{±qJ<71>avW,†y-ö–z{|$ŒpÙ@ÖÖvŠ—ƒ¬É‡<07>qŸM<C5B8>¶`›Ï¥™™ši“<69>š»R®ûbVª·£Œ[¥ñ¨‰ö\¿ ¶—ìëàŒ>€»»¼È¶2NüÃÃÄ.ÁJF„ËË̉ŸB“ÕYÓ+Å‹‰‡ƒQ]‹ÜÞßÕ÷³"èláÖ(`l¼ííî,jh˳¤™“–‹œÚž’‰›<E280B0> ujf$gct|)d~aok}<1`|a{r7lv:-<nwxNHDJGDHSOCLY_K\;234åv^9šÝ®ýgP5a%,0e/3iIÐÒÕò %q6&97xWXYZ[]_][egekmomkege{}}{egekmomkege[]_][¥§¥«¯«¥§¥»½¿½»¥§¥«¯«¥§¥ÛÝßÝÛåçåëíïíëåçåûýÿýûåçåëíïíëåçåÛÝßÝÛ¥§¥«¯«¥§¥»½¿½»¥§¥«¯«¥§¥[]_][egekmomkege{}}{egekmomkege[]_][¥
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1 +1 @@
|
||||||
¼°wþ;$ân6ßi2*Élu ež5ry ãi<19>åဠriZ?{ hpŽ0ä0$ùæ˜ flêgkß5.NÓâ)ˆW‹ LL$’ræ¶rü]<05> U)xˆŠrLO’üM“\(¬l¯%wØ8trrq"˜j9úM8Þ®89:<3A><=>GGÊGÉiH¬qÿJKL…NOP%Y\â_ÜμZ[\ª¼Öæ„bcd¦®ghi±klmbû<rþX{<7B>}£yz{•}~ý<7F><C3BD>5Á<35>€ÏbBbŒ<62>Ž|<7C>‘’–—˜™š›œ<E280BA>žŸ ›µ£¤¥¦§¨©ª‚±ãÁßÕ<C39F>²Œ´µ¶å¸¹º»½¼¼¼ÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄÄüüüüÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄļ¼¼¼DDDDLLLLDDDD\\\\DDDDLLLLDDDD||||DDDDLLLLDDDD\\\\DDDDLLLLDDDD¼¼¼¼ÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄÄüüüüÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄļ¼¼¼DDDDLLLLDDDD\\\\DDDDLLLLDDDD||||DDDDLLLLDDDD\\\\
|
¼°wþ;$ân6ßi2*Élu ež5ry ãi<19>åဠriZ&s hpŽ0ä0$ùæ˜ flêgkß5.NÓâ)ˆW‹ LL$’ræ¶rü]<05> U)xˆŠrLO’üM“\(¬l¯%wØ8trrq"˜j9úM8Þ®89:<3A><=>GGÊGÉiH¬qÿJKL…NOP+Y\â_ÜμZ[\ª¼Öæ„bcd¦®ghi±klmbû<rþX{<7B>}£yz{•}~ý<7F><C3BD>5Á<35>€ÏbBbŒ<62>Ž|<7C>‘’–—˜™š›œ<E280BA>žŸ ›µ£¤¥¦§¨©ª‚±ãÁßÕ<C39F>²Œ´µ¶å¸¹º»½¼¼¼ÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄÄüüüüÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄļ¼¼¼DDDDLLLLDDDD\\\\DDDDLLLLDDDD||||DDDDLLLLDDDD\\\\DDDDLLLLDDDD¼¼¼¼ÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄÄüüüüÄÄÄÄÌÌÌÌÄÄÄÄÜÜÜÜÄÄÄÄÌÌÌÌÄÄÄļ¼¼¼DDDDLLLLDDDD\\\\DDDDLLLLDDDD||||DDDDLLLLDDDD\\\\
|
|
@ -117,10 +117,10 @@ past_trash:
|
||||||
pop edx
|
pop edx
|
||||||
|
|
||||||
mov eax, dword [esi+temp_val]
|
mov eax, dword [esi+temp_val]
|
||||||
; 0x61375a7b = little endian of '{Z7a'
|
; 0x336a687b = little endian of '{hj3'
|
||||||
; 0x61375a7b ^ 0x3fab396d which is the value of the correct input 1.33769
|
; 0x336a687b ^ 0x3fab396d which is the value of the correct input 1.33769
|
||||||
; is equal to 0x5e9c6316
|
; is equal to 0x5e9c6316
|
||||||
xor eax, 0x5e9c6316
|
xor eax, 0xcc15116
|
||||||
mov dword [edi], eax
|
mov dword [edi], eax
|
||||||
xor eax, eax
|
xor eax, eax
|
||||||
mov dword [esi+temp_val], eax
|
mov dword [esi+temp_val], eax
|
||||||
|
|
Binary file not shown.
|
@ -22,14 +22,14 @@ include 'std.inc'
|
||||||
; 3 - 5,7 - '_'
|
; 3 - 5,7 - '_'
|
||||||
; 5 - 7,11 - 'e'
|
; 5 - 7,11 - 'e'
|
||||||
; 7 - 11,13 - 'x'
|
; 7 - 11,13 - 'x'
|
||||||
; 11 - 13,17 - 't'
|
; 11 - 13,17 - 'z'
|
||||||
; 13 - 17,19 - '}'
|
; 13 - 17,19 - '}'
|
||||||
; 17 - 19,23 - '}'
|
; 17 - 19,23 - '}'
|
||||||
; 19 - 23,29 - '}'
|
; 19 - 23,29 - '}'
|
||||||
|
|
||||||
; 3 * 7 * 11 * 17 = 3927
|
; 2 * 7 * 11 * 17 = 0x74e
|
||||||
; answer "2 4 6 12"
|
; answer "0 4 8 13"
|
||||||
; flag _xt}
|
; flag -ez}
|
||||||
|
|
||||||
start:
|
start:
|
||||||
push edi
|
push edi
|
||||||
|
@ -50,7 +50,7 @@ start:
|
||||||
jnz .lp
|
jnz .lp
|
||||||
|
|
||||||
mov eax, dword [esi+super_val]
|
mov eax, dword [esi+super_val]
|
||||||
cmp eax, 3927
|
cmp eax, 0x74e
|
||||||
jnz .bad
|
jnz .bad
|
||||||
jmp .finish
|
jmp .finish
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@ above_handler:
|
||||||
|
|
||||||
eleven:
|
eleven:
|
||||||
dd thirteen,seventeen
|
dd thirteen,seventeen
|
||||||
db 't',11
|
db 'z',11
|
||||||
|
|
||||||
mul_handler:
|
mul_handler:
|
||||||
movzx eax, byte [ebp+9]
|
movzx eax, byte [ebp+9]
|
||||||
|
|
Binary file not shown.
|
@ -1,13 +1,13 @@
|
||||||
def grade(random, key):
|
def grade(random, key):
|
||||||
if key.find("Z7a_ok_qfme_xt") != -1:
|
if key.find("hj3-0p9cgfb-ez") != -1:
|
||||||
return True, "Correct!"
|
return True, "Correct!"
|
||||||
incorrect_txt = 'Wrong. '
|
incorrect_txt = 'Wrong. '
|
||||||
if key.find("Z7a") == -1:
|
if key.find("hj3") == -1:
|
||||||
incorrect_txt += "Phase 1 failed. "
|
incorrect_txt += "Phase 1 failed. "
|
||||||
if key.find("_ok_") == -1:
|
if key.find("-0p9") == -1:
|
||||||
incorrect_txt += "Phase 2 failed. "
|
incorrect_txt += "Phase 2 failed. "
|
||||||
if key.find("qfme") == -1:
|
if key.find("cgfb") == -1:
|
||||||
incorrect_txt += "Phase 3 failed. "
|
incorrect_txt += "Phase 3 failed. "
|
||||||
if key.find("_xt") == -1:
|
if key.find("-ez") == -1:
|
||||||
incorrect_txt += "Phase 4 failed. "
|
incorrect_txt += "Phase 4 failed. "
|
||||||
return False, incorrect_txt
|
return False, incorrect_txt
|
||||||
|
|
Binary file not shown.
|
@ -62,10 +62,10 @@ printLoop:
|
||||||
|
|
||||||
mov ecx, dword [esi+inputVal]
|
mov ecx, dword [esi+inputVal]
|
||||||
pop edi
|
pop edi
|
||||||
; 433695873 is the answer
|
; 797691075 is the answer
|
||||||
; (struct.unpack('<I', b'_ok_')[0] ^ 0x19d9ac81)
|
; (struct.unpack('<I', b'-0p9')[0] ^ 0x2f8bccc3)
|
||||||
; This part of the flag is _ok_ ^ the 35th value in the pattern.
|
; This part of the flag is -0p9 ^ the 36th value in the pattern.
|
||||||
xor ecx, 0x46b2c3de
|
xor ecx, 0x16fbfcee
|
||||||
mov dword [edi], ecx
|
mov dword [edi], ecx
|
||||||
|
|
||||||
push edi
|
push edi
|
||||||
|
@ -80,7 +80,7 @@ printLoop:
|
||||||
|
|
||||||
ret
|
ret
|
||||||
|
|
||||||
pattern_text db 'What is the 35th number (index 34) in the following sequence?', 0
|
pattern_text db 'What is the 36th number (index 35) in the following sequence?', 0
|
||||||
format_text db '%d ', 0
|
format_text db '%d ', 0
|
||||||
|
|
||||||
; ecx = arg
|
; ecx = arg
|
||||||
|
|
Binary file not shown.
|
@ -92,7 +92,7 @@ fail:
|
||||||
mov eax, 0
|
mov eax, 0
|
||||||
ret
|
ret
|
||||||
|
|
||||||
to_match db 'ezpr', 0
|
to_match db 'xtnq', 0
|
||||||
|
|
||||||
idiot:
|
idiot:
|
||||||
lea ecx, [esi+idiot_text]
|
lea ecx, [esi+idiot_text]
|
||||||
|
@ -104,7 +104,7 @@ idiot:
|
||||||
dec esp
|
dec esp
|
||||||
ret
|
ret
|
||||||
|
|
||||||
alphabet db '{m}krzyjfwngpshteoialduqxvcb|', 0
|
alphabet db 'hqxfbntvirwml{cap|z}sjeodygku', 0
|
||||||
; abcdefghijklmnopqrstuvwxyz{|}
|
; abcdefghijklmnopqrstuvwxyz{|}
|
||||||
; flag is "qfme"
|
; flag is "cgfb"
|
||||||
resv_stuff 512-$
|
resv_stuff 512-$
|
||||||
|
|
Binary file not shown.
Loading…
Reference in a new issue