๋ฌธ์ ํ์ผ >> ์ฝ๋์์ง ์ฌ์ดํธ
๋ชฉํ๊ฐ : Key ๊ฐ์ด BEDA-2F56-BC4F4368-8A71-870B ์ผ๋ Name์ MD5 ํด์ฌ๊ฐ
์คํ์ ์์ผ๋ด ๋๋ค.
Name ๊ฐ์ ํ์๋ฆฌ๋ผ๊ณ ํ์ต๋๋ค.
๋๋ฒ๊ฑฐ๋ก ์ด ๋ถ๋ถ์ ์์ ํด์ค์๋ค.
์ฐํด๋ฆญ -> All referenced text strings -> 'Please Enter More Chars...' ๋ฌธ์์ด์ ์ฐพ์๊ฐ ์ค๋๋ค.
์์ cmp eax, 3 ๋ผ๋ ๋ฌธ์์ด ๊ธธ์ด ๋น๊ต ๋ช ๋ น์ด ์์ต๋๋ค.
์ด๋ฅผ cmp eax, 1 ๋ก ๋ฐ๊ฟ์ฃผ๊ณ , ์ฐํด๋ฆญ -> Copy to Executable -> Save file ์ผ๋ก ์ ์ฅํ ๋ค ์์ ๋ ํ์ผ์ ์ด์ด์ค๋๋ค.
์ฑ๊ณต์ ์ถ๋ ฅ๋ ๋ฏํ ๋ฌธ์์ด์ด ์์ต๋๋ค.
์ด๋ํด์ ํ์ธ์ ํด ๋ณธ ๊ฒฐ๊ณผ JNZ ๋ช ๋ น์ด ๋ถ๊ธฐ์ ์ ๋๋ค.
๋ฐ๋ก ์์์ ํธ์ถ๋ ํจ์๋ฅผ ๋ถ์ํด๋ด ์๋ค.
EAX์ EDX๋ฅผ ๋น๊ตํ ๋ค ๊ฐ์ผ๋ฉด ๋ฐํ ๊ฐ์ 0์ผ๋ก ๋ง๋ค๊ณ ๋ฆฌํดํฉ๋๋ค.
๋ ์ง์คํฐ ์ฐฝ์์ EAX ๊ฐ์ ์ฐ๋ฆฌ๊ฐ ์ ๋ ฅํ Serial, EDX ๊ฐ์ ์์ฑ๋ ์๋ฆฌ์ผ์ด๋ผ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ ๋ง์ด์ฃ .
์ด ํจ์๋ ๋ฌธ์์ด ๋น๊ต ํจ์์ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ๊ทธ ์์์ ํธ์ถ๋ ํจ์๊ฐ ์๋ฆฌ์ผ์ ์์ฑํ๋ค๊ณ ์ถ์ธกํ ์ ์์ต๋๋ค.
45B850 ํจ์์ stepinํด ๋ถ์ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
์ด์ ๊ฐ์ ์๋ฆฌ์ผ ์์ฑ ๋ฃจํด์ ๊ฑฐ์นฉ๋๋ค.
ESI ๋ฅผ ๊ฐ๊ณตํ ๋ค ๊ทธ ๊ฐ์ EDX ์ ์ฎ๊ฒจ์ฃผ๋๊ตฐ์.
ESI ๊ฐ์ 0๋ถํฐ z๊น์ง ํ ๊ธ์์ฉ ๋์ ํด ์๋ฆฌ์ผ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ ๊ฒ ์ ๋๋ค.
์์คํค์ฝ๋๋ก ์ซ์ 0 ์ 0x30์, z ๋ 0x7A์ ๋ํ๋ด๋ ์ด ๋ฒ์ ๋ด์์ ์ฐจ๋ก๋๋ก ๋์ ํด BEDA ๋ก ์์ํ๋ ์๋ฆฌ์ผ ๊ฐ์ ๊ฐ์ง๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
#include <stdio.h>
int main(void)
{
int ESI = 0, EDX = 0;
for (int i = 0x30; i <= 0x7A; i++) { //from 0 to z
ESI = i * 0x772; //IMUL ESI, ESI, 0x772
EDX = ESI; //MOV EDX, ESI
EDX *= ESI; //IMUL EDX, ESI
ESI += EDX; //ADD ESI, EDX
ESI *= 0x474; //IMUL ESI, ESI, 0x474
ESI += ESI; //ADD ESI, ESI
EDX = ESI;
printf("%c >> %X\n", i, EDX); //์์ฑ๋ ์๋ฆฌ์ผ ์ถ๋ ฅ
}
return 0;
}
OR ESI, ESI ๋ฅผ ์๋ตํ ์ด์ ๋ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ก ESI ๊ฐ์ด ๋ณํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด๋ฅผ ์คํํด ๋ด ์๋ค.
์ด๋ ๊ฒ ๋๋ฌธ์ F๊ฐ BEDA๋ก ์์ํ๋ ์๋ฆฌ์ผ์ ๊ฐ์ง๋๋ค.
์๋ง Name ๊ฐ์ F ๊ฐ ๋๊ฒ ๋ค์.
ํ ๋ฒ ์๋ฆฌ์ผ ๊ฐ๊ณผ ํจ๊ป ๋ฃ์ด์ ํ์ธํด๋ณผ๊น์?
์ด๋ ๊ฒ Name ๊ฐ์ด F๊ฐ ๋ง๋ค๋ ๊ฒ์ ํ์ธํ์ต๋๋ค.
์ด์ F์ MD5 ํด์๊ฐ์ ๊ตฌํด์ผ ํฉ๋๋ค.
๊ฐ๋จํ๊ฒ ์จ๋ผ์ธ MD5 ํด์ ์์ฑ๊ธฐ๋ฅผ ์ด์ฉํ์ต๋๋ค.
F์ MD5 ํด์ ๊ฐ์ 800618943025315F869E4E1F09471012 ์
๋๋ค.
์ด๋ฅผ Auth ์ ์ธ์ฆํด๋ณด๊ฒ ์ต๋๋ค.
'reverse engineering > CodeEngn' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CodeEngn] Basic RCE L19 ๋ฌธ์ ํ์ด (0) | 2021.01.30 |
---|---|
[CodeEngn] Basic RCE L18 ๋ฌธ์ ํ์ด (0) | 2020.12.26 |
[CodeEngn] Basic RCE L16 ๋ฌธ์ ํ์ด (0) | 2020.12.17 |
[CodeEngn] Basic RCE L15 ๋ฌธ์ ํ์ด (2) | 2020.12.15 |
[CodeEngn] Basic RCE L14 ๋ฌธ์ ํ์ด (4) | 2020.12.14 |