์ ํ๋ธ๋ฅผ ๋ณด๋ฉด์ ๋๋ฒ๊น ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณธ๋ค.
starce, pwndbg ํ์ฉ๋ฒ์ ์์๋ณด์.
๋๋ฒ๊น ์ ์ด๋ฏธ ๋ง๋ค์ด์ง ํ๋ก๊ทธ๋จ์ด ์์ ๋, ์ญ์ผ๋ก ์ถ์ ํด์ ์ด๋ป๊ฒ
ํ๋ก๊ทธ๋จ์ด ๋์ํ๋์ง ํ์ ํ๋ ๊ฒ์ ๋งํ๋ค.
$sudo apt-get install strace
sudo ๋ช ๋ น์ด๋ฅผ ํตํด strace๋ฅผ ์ค์นํ๋ค.
strace ๋ช ๋ น์ด๋ ์ ๋ณด๋ณด์๊ธฐ์ฌ ์ค๊ธฐ ์ค๋นํ ๋๋ ๋ง์ด ๋ดค์๋ค.
์น์ง ์ผ๋ง๋๋ค๊ณ ๋ฒ์จ ๊ฐ๋ฌผ๊ฐ๋ฌผํ์ง๋ง..
$strace -ifx ./echo
[์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด ์์ฝ ํ๋ก๊ทธ๋จ ์์ฑ
https://youtu.be/Z3QuFbsnqMc ์ค๋๋ ์ ํ๋ธ๋ฅผ ๋ณด๋ฉด์ ๊ณต๋ถ๋ฅผ ํด๋ด ์๋ค! $nano echo.s ๋๋ ธ๋ฅผ ์ด์ฉํด ์ด์ ๋ธ๋ฆฌ์ด ์ ์ถ๋ ฅ์ ๋ค๋ฃจ๋ ์์ฝํ๋ก๊ทธ๋จ์ ์์ฑํ๋ค. section .text global _start _start: xor rax, rax mov rbx, rax
dangsdangs.tistory.com
์ค์น๊ฐ ๋ค๋๋ฉด ์์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ์ด์ ์ ์์ฑํ๋
์์ฝ ํ๋ก๊ทธ๋จ์ ๋ฃ์ด ๋ช ๋ น์ด๋ฅผ ์คํํ๋ค.

์คํํ๊ฒ ๋๋ฉด ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด์ ๋ด๋ถ์ ์ผ๋ก ์ด๋ค ์์คํ ์ฝ์ ์ด์ฉํ์ฌ
์๋ํ๋์ง ๋ณด์ฌ์ค๋ค.
ํ์ฌ๋ read ์ํ์ธ ๊ฒ์ ์ ์ ์๋ค.

์ ๊ณณ์ HelloWorld๋ฅผ ์ ๋ ฅํ๋ฉด,
์ฝ๊ฒ ๋๊ณ ๊ทธ์ ๋ํ ์ ๋ณด๊ฐ ์์คํค ์ฝ๋์ ๋ํด ๋ค์ด๊ฐ๊ณ ์ด๋ฐ์๋ HelloWorld,
๊ทธ ์ดํ์๋ ๋ค null๊ฐ์ด ๋ค์ด๊ฐ๊ฒ ๋๋ค. ์ด ์ด์ ๋ ์ด 63๋ฐ์ดํธ๋งํผ ์ ๋ ฅ๋ฐ๊ธฐ ๋๋ฌธ์ด๋ค.
๋ ๋ค๋ฅธ ๋๋ฒ๊น ํด์ ์ค์นํด๋ณด์.
$git clone https://github.com/pwndbg/pwndbg
ํด๋น ๋ช ๋ น์ด๋ก ์์ค์ฝ๋๋ฅผ ๋ค์ด๋ฐ์์ค๋ค.
์ฐธ๊ณ ๋ก, ์๊น ๊นํ๋ธ ์ฃผ์๋ฅผ ์๋ชป ์์ฑํด์ ํ์ผ ๋ณต์ ๋ฅผ ๋ชปํ๋๋ฐ,
๋๋ ํฐ๋ฆฌ ๋ฐ ํ์ ํ์ผ์ ๋ค ์ง์ฐ๋ ๋ช ๋ น์ด๋
$rm -r pwndbg/
์ด๋ค.

์๋ฌดํผ ๋ค์ด๋ก๋๋ฅผ ์ฑ๊ณตํ๋ฉด ์์ฒ๋ผ ๋ฌ๋ค.
$cd pwndbg
๊ทธ๋ฌ๋ฉด pwndbg ์์ผ๋ก ์ด๋ํ๊ธฐ ์ํด cd ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ค์นํ๊ธฐ ์ํด
$./setup.sh
๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด์ค๋ค.
์ค์น์ root ์ํธ๊ฐ ํ์ํ๊ณ , ์ด์ ์ ์ค์ ํ๋ ์ํธ๋ฅผ ์ ๋ ฅํ์ฌ
๋ค์ด๋ฐ๋๋ก ํ์.
๋ค์ด๋ฐ๊ธฐ ์์ํ๋ฉด ๋ญ ๋ง์ด ๋ค์ด๋ฐ๋๋ค.
$cd ..
์ค์น๊ฐ ๋ค ๋๋ฉด ์์ฝ ํ๋ก๊ทธ๋จ์ด ์๋ ์์ ๋๋ ํฐ๋ฆฌ๋ก ๋น ์ ธ ๋์จ๋ค.
$gdb echo
gdb ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด echo ํ๋ก๊ทธ๋จ์ ๋๋ฒ๊น ๋ชจ๋๋ก ์คํํ๋ค.

startํจ์์์๋ถํฐ ๋๋ฒ๊น ์ ์์ํ ์ ์๋๋ก ํด์ค๋ค.
ํด๋น ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด, ํน์ ํ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ๋ธ๋ ์ดํฌํฌ์ธํธ๊ฐ ๊ฑธ๋ ธ๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
๊ทธ ํ run ์ ์ ๋ ฅํด์ ํ๋ก๊ทธ๋จ์ ์คํํ๋๋ก ํ๋ค.

ํด๋น ๋ถ๋ถ ์์ ๋ณด๋ฉด DISASM์ด๋ผ๊ณ ๋์์๋๋ฐ,
์ด๊ฒ์ด ๋ฐ๋ก ๋ฆฌ๋ฒ์ฑ์ ๋ปํ๋ค.
๊ทธ ๋ฐ์ ์คํ ํ๋ ์์ด ์ด๋ป๊ฒ ์๋ํ๋์ง๋ ๋์์๋ค.
pwndbg> ni
ํด๋น ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํจ์ผ๋ก์จ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํ์ํฌ ์ ์๋ค.
๊ทธ๋ฌ๋ฉด mov rbx, rax์ ๋ถ๋น์ด ๋ค์ด์ค๊ฒ ๋๋ค.

quit ๋ช ๋ น์ด๋ฅผ ํตํด pwndbg ๋ฅผ ์ข ๋ฃํ ์ ์๋ค.
[์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋ฐ๋ณต๋ฌธ ๊ตฌํ
https://youtu.be/aUCzNzBO6Hg ์ค๋์ ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋ฐ๋ณต๋ฌธ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ ํ๋ธ๋ฅผ ๋ณด๋ฉด์ ๊ณต๋ถํ๋ ค๊ณ ํ๋ค. $nano loop.s loop๋ผ๋ ์ด๋ฆ์ ์ด์ ๋ธ๋ฆฌ ์์ค์ฝ๋๋ฅผ nano๋ก ์์ฑํ๋ค. section .data msg db "A" secti
dangsdangs.tistory.com
'ํ๋ก์ ํธ > ์์คํ ํดํน' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋ณ ํผ๋ผ๋ฏธ๋ ๋ง๋ค๊ธฐ (2) (0) | 2023.01.19 |
|---|---|
| [์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋ณ ํผ๋ผ๋ฏธ๋ ๋ง๋ค๊ธฐ (1) (0) | 2023.01.18 |
| [์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋ฐ๋ณต๋ฌธ ๊ตฌํ (0) | 2023.01.16 |
| [์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด ๊ธฐ๋ณธ ๋ฌธ๋ฒ (0) | 2023.01.15 |
| [์์คํ ํดํน] ์ด์ ๋ธ๋ฆฌ์ด ์์ฝ ํ๋ก๊ทธ๋จ ์์ฑ (1) | 2023.01.13 |