๐ค ์ปค๋์ด๋?
์ปค๋์ ์ด์์ฒด์ ์ ํต์ฌ ๋ถ๋ถ์ผ๋ก, ์ปดํจํฐ ์์์ ์ง์ ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ์ญํ ์ ํ๋ค.
์ฌ์ฉ์์๋ ์ง์ ์ ์ผ๋ก ์ํธ์์ฉํ์ง ์๊ธฐ ๋๋ฌธ์, ์ฌ์ฉ์์ ๋ช
๋ น์ด๋ฅผ ํด์ํ์ฌ ์ปค๋๋ก ์ ๋ฌํ๋ ๋ฒ์ญ๊ธฐ(์
ธ, Shell)์ด ์๋ค.
์๋๋ 32bit ์์คํ ์์ ์ปค๋ ๊ณต๊ฐ๊ณผ ์ฌ์ฉ์ ๊ณต๊ฐ์ ๊ตฌ๋ถ์ด๋ค.
์ด์ฒ๋ผ ๋์ ์๋ก ๋ถ๋ฆฌ๋์ด์๊ณ ์ ๊ทผ ๊ถํ๋ ๋ค๋ฅด๋ค.
์์ธํ ๋ด์ฉ์ ์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ์.
[๐ฅ๏ธ Computer Science/System] - [Pwnable] ์์คํ
์ฝ(syscall), ์
ธ, ์ปค๋๋ชจ๋ vs ์ ์ ๋ชจ๋
๐ ์ปค๋์ ๊ตฌ์ฑ์์
์ปค๋์ ๊ณง ์ปดํจํฐ ์์์ ๊ด๋ฆฌํ๋ ๊ด๋ฆฌ์์ด๊ธฐ ๋๋ฌธ์, ์๋์ฒ๋ผ ๊ธฐ๋ฅ์ ๋๋ ์ ์๋ค.
1) ํ์คํฌ(Task) ๊ด๋ฆฌ์
: ๋ฌผ๋ฆฌ์ ์์์ธ CPU๋ฅผ ์ถ์์ ์์์ธ ํ์คํฌ๋ก ์ ๊ณต
2) ๋ฉ๋ชจ๋ฆฌ(Memory) ๊ด๋ฆฌ์
: ๋ฌผ๋ฆฌ์ ์์์ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ถ์์ ์์์ธ ํ์ด์ง๋ ์ธ๊ทธ๋จผํธ๋ก ์ ๊ณต
3) ํ์ผ ์์คํ
(File System) ๊ด๋ฆฌ์
: ๋ฌผ๋ฆฌ์ ์์์ธ ๋์คํฌ๋ฅผ ์ถ์์ ์์์ธ ํ์ผ๋ก ์ ๊ณต
4) ๋คํธ์ํฌ(Network) ๊ด๋ฆฌ์
: ๋ฌผ๋ฆฌ์ ์์์ธ ๋คํธ์ํฌ ์ฅ์น๋ฅผ ์ถ์์ ์์์ธ ์์ผ์ผ๋ก ์ ๊ณต
5) ๋๋ฐ์ด์ค ๋๋ผ์ด๋ฒ(Device Driver) ๊ด๋ฆฌ์
: ๊ฐ์ข
์ธ๋ถ ์ฅ์น์๋ํ ์ ๊ทผ
๐ ์ปค๋์ ์ข ๋ฅ
๋จ์ผํ ๊ตฌ์กฐ ์ปค๋
์ด์ฐฝ๊ธฐ์ ์ด์์ฒด์ ๊ตฌ์กฐ๋ก, ํต์ฌ ๊ธฐ๋ฅ์ ํ๋ ๋ชจ๋๋ค ๊ตฌ๋ถ์์ด ํ๋๋ก ๊ตฌ์ฑ๋์ด์๋ค.
๋ง์น mainํจ์ ์์ ๋ชจ๋ ๊ธฐ๋ฅ๋ค์ ๊ตฌํํ ๊ฒ๊ณผ ๊ฐ๋ค.
์ฅ์
- ๋ชจ๋๋ค ๊ฐ์ ํต์ ๋น์ฉ์ด ์ ์
- ๋น ๋ฆ
๋จ์
- ํ ๋ชจ๋์ ๋ฌธ์ ์๊ธฐ๋ฉด ๋ค๋ฅธ ๊ฒ์๊น์ง ์ํฅ์ ๋ฏธ์น ์ ์์
- ํ๋์ ๋ณต์กํ ์ด์์ฒด์ ๋ฅผ ๊ตฌํํ๊ธฐ์๋ ์ด๋ ต๋ค.
- ์์ ์ด ์ด๋ ต๋ค.
๊ณ์ธตํ ๊ตฌ์กฐ ์ปค๋
๋น์ทํ ๊ธฐ๋ฅ์ ํ๋ ๋ชจ๋๋ผ๋ฆฌ ๋ฌถ์ด์ ํ๋์ ๊ณ์ธต์ผ๋ก ๋ง๋ ์ปค๋ ๊ตฌ์กฐ์ด๋ค.
๋๋ถ๋ถ์ ์ด์์ฒด์ ๊ฐ ๊ณ์ธตํ ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ๊ณ ์๋ค!
์ฅ์
- ๋จ์ผํ์ ๋นํด ๋ฒ๊ทธ๋ ์ค๋ฅ๋ฅผ ์ฝ๊ฒ ์ฒ๋ฆฌํ ์ ์๋ค. ์ค๋ฅ๊ฐ ๋ฐ์ ์ ํด๋น ๊ณ์ธต๋ง ์์ ํ๋ฉด ๋๊ธฐ ๋๋ฌธ!
- ๋๋ฒ๊น ์ด ์ฝ๋ค.
๋จ์
- ๊ณ์ธต์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ํ๋์ ๊ณ์ธต์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ์, ์๋ ๊ณ์ธต๋ ๋์ํ์ง ๋ชปํ ์ ์๋ค.
- ์ด์์ฒด์ ๊ฐ ์ปค์ง๊ณ ๋ณต์กํด์ง๋ฉด ๋ง์ ๊ณ์ธต๋ค์ด ๋ฐ์ํ๊ฒ ๋์ด ์ปค๋์ ํฌ๊ธฐ๋ ์ปค์ง๊ณ ํ๋์จ์ด์ ์ฉ๋๋ ๋์ด๋๋ค.
๋ง์ดํฌ๋ก ๊ตฌ์กฐ ์ปค๋
์ด ๊ตฌ์กฐ๋ ์ปค๋์๊ฒ IPC, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, CPU ๊ด๋ฆฌ ๋ฑ์ ํ์ํ ๊ธฐ๋ฅ๋ง ๋ถ์ฌํ๊ณ ๋๋จธ์ง ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉ์ ๋ชจ๋์ ๋๋ค.
์ฅ์
- ๋ชจ๋๋ค์ด ๋ ๋ฆฝ๋์ด์์ด ์๋ก์๊ฒ ์ํฅ x
- ์ด์์ฑ์ด ๋ฐ์ด๋๋ค
- ์ปค๋์ด ์๊ณ ๊ฐ๋ฒผ์ ์ฌ์์ด ๋๋ CPU์๋ ์ ์ฉ ๊ฐ๋ฅ
๋จ์
- IPC overhead ๋๋ฌธ์ ๋๋ฆผ
์ถ์ฒ ๋งํฌ : https://kernelnewbies.org/KernelHacking
Reference
https://butter-shower.tistory.com/28
https://ardor-dev.tistory.com/22
https://5equal0.tistory.com/entry/Linux-Kernel-%EC%BB%A4%EB%84%90%EC%9D%98-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%BB%A4%EB%84%90%EC%9D%98-%EA%B5%AC%EC%A1%B0
https://sedangdang.tistory.com/173
'Linux Exploitation > Kernel' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kernel] Mitigation : KASLR (1) | 2023.10.14 |
---|---|
[Kernel] Tasks (1) (1) | 2023.10.04 |
[Kernel] Tools: QEMU (0) | 2023.09.08 |
[Kernel] ์ปค๋ ์ด๋ฏธ์ง (Kernel Image) ๋ฐ ๋ฆฌ๋ ์ค ๋ถํ ๊ณผ์ (์์ฑ์ค) (0) | 2023.05.29 |