๐ ์ด์ ๋ธ๋ฆฌ์ด ์ค์ต ๋ฐฉ๋ฒ - ์ฝ๋ ํจ์น
1๋ถํฐ 100๊น์ง์ ํฉ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ ์ Immunity Debugger์์ ์ฝ๋ ํจ์น๋ฅผ ์ด์ฉํ์ฌ ์๋ก์ด ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃจ๋ ค๊ณ ํ๋ค.
๋๋ฒ๊ฑฐ์์ ์๋ฌด ์คํ ํ์ผ(*.exe)์ ์ด๊ณ , ์ฝ๋ ๋ถ๋ถ์ ๋๋ธ ํด๋ฆญํด์ ์์ ํ๋ฉด ๋๋ค.
์ฝ๋๋ฅผ ๋๋ธ ํด๋ฆญํ๋ฉด
์ผ์ชฝ ์ฒ๋ผ ๋ฐ ํ ๋ฐ, ์ฌ๊ธฐ์ ์ฝ๋๋ฅผ ์์ ํ๊ณ Assemble์ ๋๋ฅด๋ฉด ํด๋น ์ค์ ์ฝ๋๊ฐ ๋ณ๊ฒฝ๋๊ณ ๋ฐ์๋ NOP์ผ๋ก ๋ชจ๋ ๋ณ๊ฒฝ๋๋ค.
์๋๋ก ์์๋๋ก ์ฝ๋ ํจ์น๋ฅผ ์งํํ๋ฉด ๋๋ค.
๐ 1๋ถํฐ 100๊น์ง์ ํฉ ver.1 (๋ ์ง์คํฐ 3๊ฐ ์ฌ์ฉ)
- EAX, EBX๊ฐ์ 1๋ก ์ด๊ธฐํ ์ํค๊ณ EBX๋ฅผ 1์ฉ ์ฆ๊ฐ์ํค๋ฉด์ EAX์ EBX๋ฅผ ๋ํด์ค๋ค.
- LOOP๋ EBX๊ฐ 100์ด ๋ ๋๊น์ง ๋๋ค. (ECX๊ฐ 0์ผ ๋๊น์ง ๋๋ค. ์ฌ๊ธฐ์ LOOP ๋ช ๋ น์ด๋ ECX๋ฅผ ๋จผ์ 1๊ฐ์ํ๊ณ 0์ธ์ง ์๋์ง ๋น๊ตํจ์ ์ฃผ์)
๐ป ์ฝ๋
- EAX๋ฅผ 1๋ก ์ด๊ธฐํ ์ํจ๋ค.
- EBX๋ฅผ 1๋ก ์ด๊ธฐํ ์ํจ๋ค.
- LOOP๋ EBX๊ฐ 100์ผ ๋๊น์ง ๋ํ๋ ค๋ฉด 2~100๊น์ง ์ฆ 99๋ฒ ๋์์ผ ํ๋ฏ๋ก ECX๊ฐ์ 99๋ก ์ ํด ์ค์ผํจ. 99๋ฅผ 16์ง์๋ก ํ๋ฉด 63์ด๊ธฐ ๋๋ฌธ์ 63์ผ๋ก ์ด๊ธฐํ ์ํจ๋ค.
- ๋ณด๊ธฐ ํธํ๊ฒ ํ ์ค ๋์ฐ๊ธฐ ์ํด NOP ์ฌ์ฉ. (ํด๋น ์ค์ ์์ด๋ ๋๋ค.)
- EBX๋ฅผ 1์ฉ ์ฆ๊ฐ์ํจ๋ค.
(1~100์ ๋ํ๋๋ฐ EAX๊ฐ 1์ด๊ณ EBX๋ 1์ด๊ธฐ ๋๋ฌธ์ EBX๋ฅผ ๋จผ์ 1์ฆ๊ฐ์ํค๊ณ EAX์ ๋ํ๋ ๊ฒ์ ๋ฐ๋ณตํ๋ค.) - EAX์ EBX๋ฅผ ๋ํด์ EAX์ ์ ์ฅํ๋ค.
- 5๋ฒ ์ค๊ณผ 6๋ฒ์ค์ EBX๊ฐ 100์ด ๋ ๋๊น์ง (CX๊ฐ 0์ด ๋ ๋๊น์ง)๋ฐ๋ณตํ๋ค.
๐ก ๋ ์ง์คํฐ ๋ณํ ํ์ธ
1. EAX, EBX, ECX ์ด๊ธฐํ
2. ๋ํ๋ ๊ณผ์
EBX๊ฐ์ 1 ์ฆ๊ฐ์ํจ ํ EAX์ EBX๋ฅผ ๋ํ๋ค.
3. ๊ฒฐ๊ณผ
ECX๊ฐ 0์ด ๋๋ฉด LOOP๋ฅผ ๋ฉ์ถ๋ค. 99๋ฒ ๋์๊ธฐ ๋๋ฌธ์ ์ด ์์ ์์ EBX๊ฐ์ ๋ณด๋ฉด 1์์ 99๋ฅผ ๋ํ 64(10์ง์๋ก 100)์ด๋ค.
๋ํ EAX ๊ฐ์ 1์์ 100๊น์ง๋ฅผ ๋ํ 13BA(10์ง์๋ก 5050)๊ฐ ๋์ด์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๐ 1๋ถํฐ 100๊น์ง์ ํฉ ver.2 (๋ ์ง์คํฐ 2๊ฐ ์ฌ์ฉ)
- EAX๊ฐ์ 0์ผ๋ก ์ด๊ธฐํ ์ํค๊ณ ECX๊ฐ 100๋ถํฐ 0๊น์ง -1์ฉ ํ๋ฉด์ ECX๋ฅผ EAX๋ฅผ ๋ํ๋ค.
- LOOP๋ ECX๊ฐ 0์ผ ๋๊น์ง ๋๋ค. (์ฌ๊ธฐ์ LOOP ๋ช ๋ น์ด๋ ECX๋ฅผ ๋จผ์ 1๊ฐ์ํ๊ณ 0์ธ์ง ์๋์ง ๋น๊ตํจ์ ์ฃผ์)
๐ป ์ฝ๋
- EAX๋ฅผ 0์ผ๋ก ์ด๊ธฐํ ์ํจ๋ค.
- LOOP๋ 1~100์ ๋ํด์ผ ํ๋ฏ๋ก ECX๊ฐ์ 100์ผ๋ก ์ ํด ์ค์ผํจ.
100๋ฅผ 16์ง์๋ก ํ๋ฉด 64์ด๊ธฐ ๋๋ฌธ์ 64์ผ๋ก ์ด๊ธฐํ ์ํจ๋ค. - EAX์ ECX๋ฅผ ๋ํ๋ค. (์ฒ์์ 100, LOOP ํ ๋ฒ ๋ ๋ ECX๊ฐ -1๋๋ฏ๋ก ๋ค์์ 99๋ฅผ ๋ํ๋ ์)
- ADD EAX, ECX๋ฅผ 100๋ฒ ๋๋ค.
๐ก ๋ ์ง์คํฐ ๋ณํ ํ์ธ
1. EAX, ECX ์ด๊ธฐํ
2. ๋ํ๋ ๊ณผ์
ECX ๊ฐ์ EAX์ ๋ํด์ฃผ๊ณ ECX๊ฐ์ ๋ฃจํ๋ฅผ ๋๋ฉด์ 1์ฉ ๊ฐ์ํ๋ค.
3. ๊ฒฐ๊ณผ
ECX๊ฐ 0์ด ๋๋ฉด LOOP๋ฅผ ๋ฉ์ถ๋ค.
EAX ๊ฐ์ 100์์ 1๊น์ง๋ฅผ ๋ํ 13BA(10์ง์๋ก 5050)๊ฐ ๋์ด์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๐ ๋๋์
๋ ์ง์คํฐ 3๊ฐ๋ฅผ ์ฌ์ฉํ ๋ 2 ~ 100๊น์ง 99๋ฒ ๋์์ผ ํด์ ECX ๋ ์ง์คํฐ์ 99๋ฅผ 16์ง์๋ก ๋ฐ๊พผ 63์ ๋ฃ์ด์คฌ๋๋ฐ,๋ ์ง์คํฐ 2๊ฐ๋ฅผ ์ฌ์ฉํ ๋ ECX๊ฐ ์ง์ ํฉ์ ๊ด์ฌํ๋ ๋ณ์์๊ธฐ ๋๋ฌธ์ 1 ~ 100์ ๋ํด์ผํด์ 100์ 16์ง์๋ก ๋ฐ๊พผ 64๋ฅผ ๋ฃ์ด์ฃผ๋ ๊ณผ์ ์ด ํท๊ฐ๋ ธ์๋ค.
์ง๊ธ ์๊ฐํด๋ณด๋ฉด ๋ ์ง์คํฐ 3๊ฐ ์ฌ์ฉํ ๋ EAX, EBX ์ด๊ธฐ๊ฐ์ 0์ผ๋ก ๋ฃ๊ณ ์ด 100๋ฒ(1๋ถํฐ 100๊น์ง) ๋๋ ๊ฑธ๋ก ์๊ฐํด์ ECX์ 64๋ฅผ ๋ฃ๋ ๊ฒ์ด ์ข ๋ ์์ํ์ ์๋ ์์ ๊ฒ ๊ฐ๋ค.
'Security > Windows' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Immunity Debugger] sum.exe ํ์ผ ๋ถ์ (0) | 2022.03.06 |
---|