-
์ํฐ ๋ฆฌ๋ฒ์ฑ :: 03 - ์ํฐ ๋๋ฒ๊น ์์ SECURITY/REVERSING 2020. 8. 4. 15:32
์ํฐ ๋๋ฒ๊น ์ ๋ํ ๊ฐ๋จํ ์์ ๋ฅผ ํ๋ ์ดํด๋ณผ ๊ฒ์ด๋ค.
์์ ๋ฌธ์ ๋ lena ์ ๊ฐ์ข 19ํธ Debugger detected and anti-anti-techniques ์ค ReverseMe.A ์ด๋ค.
(https://forum.tuts4you.com/files/file/1307-lenas-reversing-for-newbies/)
ReverseMe.A
๊ทธ๋ฅ ์คํ์ํค๋ฉด
์ด ๋จ์ง๋ง, ollydbg ๋ก ๋๋ฒ๊น ์ ์์ํ๋ฉด
์ด ๋ฌ๋ค.
๋๋ฒ๊ฑฐ๋ก ์คํํ๊ณ ์๋ค๋ ๊ฒ์ ๊ฐ์งํ๊ณ , ๋ค๋ฅธ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ๋ ๊ฒ์ด๋ค.
ํจ์ CALL ์ ์ดํด๋ณด๋ฉด IsDebuggerPresent ํจ์๋ฅผ ํธ์ถํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
IsDebuggerPresent ํจ์ : https://docs.microsoft.com/en-us/windows/win32/api/debugapi/nf-debugapi-isdebuggerpresent
- ๋ฆฌํด๊ฐ : ๋๋ฒ๊ฑฐ๋ก ์คํํ๋ค๋ฉด 0 ์ด ์๋ ๊ฐ, ๋๋ฒ๊ฑฐ๋ก ์คํ์ค์ด์ง ์์ผ๋ฉด 0 ์ ๋ฆฌํด
์ฆ, ์ด ํจ์๊ฐ ๋๋ฒ๊ฑฐ๋ฅผ ๊ฐ์งํ๊ณ 1์ ๋ฆฌํดํ์ฌ "keyfile is not valid. Sorry." ๋ฅผ ์ถ๋ ฅํ๋ ๊ฒ์ด๋ค.
์ด๋ฅผ ํด์ฒดํ๊ธฐ ์ํด์ , ํจ์ ํธ์ถ ๋ด๋ถ๋ก ๋ค์ด๊ฐ์ EAX ์ 0 ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
๋๋ฒ๊ฑฐ๋ฅผ ํตํด์๋ ์ด ๋ฉ์์ง ์ถ๋ ฅ ์ฑ๊ณต ~
๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก๋ IsDebeggerPresent ํจ์ ํธ์ถ ์์ฒด๋ฅผ ๋ฌดํจํ์ํค๊ฑฐ๋ (NOP),
ํน์ 00401103 ์ JE ๋ฅผ JNZ ๋ก ํจ์นํด๋ ๋๋ฒ๊น ์ ํ ์ ์๋ค. (๋ค๋ง ๊ทธ๋ฅ ํ์ผ์ ์คํํ๋ฉด ๋ฐ๋์ ๊ฒฐ๊ณผ๊ฐ ๋์ฌ ๋ฟ..)
'SECURITY > REVERSING' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ํฐ ๋ฆฌ๋ฒ์ฑ :: 05 - ์ํฐ ๋์ค์ด์ ๋ธ (0) 2020.08.05 ์ํฐ ๋ฆฌ๋ฒ์ฑ :: 04 - ์ํฐ ๋๋ฒ๊น ๊ธฐ๋ฒ๋ค ์๊ฐ (0) 2020.08.05 ์ํฐ ๋ฆฌ๋ฒ์ฑ :: 02 - ์ํฐ ๋๋ฒ๊น (0) 2020.08.04 ์ํฐ ๋ฆฌ๋ฒ์ฑ :: 01 - ์ํฐ ๋ฆฌ๋ฒ์ฑ์ด๋? (2) 2020.08.04 ๋ฆฌ๋ฒ์ฑ ์์ :: ollydbg -03 Serial ์ฐพ๊ธฐ (0) 2020.07.29