Array Indexing
Last updated
Last updated
AWS ํดํน ํ์ต ๋ฐ ์ค์ต:HackTricks Training AWS Red Team Expert (ARTE) GCP ํดํน ํ์ต ๋ฐ ์ค์ต: HackTricks Training GCP Red Team Expert (GRTE)
์ด ๋ฒ์ฃผ์๋ ๋ฐฐ์ด์ ์ธ๋ฑ์ค ์ฒ๋ฆฌ ์ค๋ฅ๋ก ์ธํด ํน์ ๋ฐ์ดํฐ๋ฅผ ๋ฎ์ด์ธ ์ ์๋ ์ทจ์ฝ์ ์ด ๋ชจ๋ ํฌํจ๋ฉ๋๋ค. ์ทจ์ฝ์ ์ ์กฐ๊ฑด์ ์์ ํ ์์กดํ๊ธฐ ๋๋ฌธ์ ์ด๋ ํน์ ๋ฐฉ๋ฒ๋ก ์ด ์๋ ๋งค์ฐ ๋์ ๋ฒ์ฃผ์ ๋๋ค.
๊ทธ๋ฌ๋ ์ฌ๊ธฐ์์ ๋ช ๊ฐ์ง ์ข์ ์์๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค:
2๊ฐ์ ์ถฉ๋ํ๋ ๋ฐฐ์ด์ด ์์ต๋๋ค. ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ์ฃผ์๋ฅผ ๋ํ๋ด๋ ํ๋์ ํด๋น ๋ฐ์ดํฐ์ ํฌ๊ธฐ๋ฅผ ๋ํ๋ด๋ ๋ค๋ฅธ ํ๋๊ฐ ์์ต๋๋ค. ํ ๋ฐฐ์ด์์ ๋ค๋ฅธ ๋ฐฐ์ด๋ก ๋ฎ์ด์ธ ์ ์์ด ์์์ ์ฃผ์๋ฅผ ํฌ๊ธฐ๋ก ์ง์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด free
ํจ์์ ์ฃผ์๋ฅผ GOT ํ
์ด๋ธ์ ์ฐ๊ณ , ๊ทธ ์ฃผ์๋ฅผ system
์ ์ฃผ์๋ก ๋ฎ์ด์ด ๋ค์ /bin/sh
๊ฐ ์๋ ๋ฉ๋ชจ๋ฆฌ์์ free๋ฅผ ํธ์ถํ ์ ์์ต๋๋ค.
64๋นํธ, nx ์์. ํฌ๊ธฐ๋ฅผ ๋ฎ์ด์ฐ๋ฉด ๋ชจ๋ ๊ฒ์ด ๋๋ธ ์ซ์๋ก ์ฌ์ฉ๋๊ณ ๊ฐ์ฅ ์์ ๊ฒ๋ถํฐ ๊ฐ์ฅ ํฐ ๊ฒ๊น์ง ์ ๋ ฌ๋๋ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ด๋ฅผ ์ถฉ์กฑํ๋ ์ ธ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋ฉฐ, ์บ๋๋ฆฌ๊ฐ ์์น์์ ์ด๋๋์ด์๋ ์ ๋๋ฉฐ, ๋ง์ง๋ง์ผ๋ก RIP๋ฅผ ret ์ฃผ์๋ก ๋ฎ์ด์ฐ๊ณ , ์คํ์ ์์์ ๊ฐ๋ฆฌํค๋ ์ ์ฃผ์๋ฅผ ๊ฐ์ฅ ํฐ ์ฃผ์๋ก ๋์์ผ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ret๋ฅผ ์ฌ์ฉํ์ฌ ํด๋น ์์น๋ก ์ ํํ ์ ์์ต๋๋ค.
64๋นํธ, relro ์์, ์บ๋๋ฆฌ ์์, nx ์์, pie ์์. ์คํ์ ๋ฐฐ์ด์์ ๋ฐ์ํ๋ off-by-one์ ํตํด ํฌ์ธํฐ๋ฅผ ์ ์ดํ ์ ์์ด ๋ชจ๋ ์ซ์์ ํฉ์ ๋ฐฐ์ด์ off-by-one์ผ๋ก ๋ฎ์ด์ด ์ฃผ์์ ์ธ ์ ์์ต๋๋ค. ์คํ์ ์ ์ดํ์ฌ GOT exit
์ฃผ์๋ฅผ pop rdi; ret
๋ก ๋ฎ์ด์ฐ๊ณ , ์คํ์ main
์ฃผ์๋ฅผ ์ถ๊ฐํฉ๋๋ค (main
์ผ๋ก ๋ค์ ์ด๋). puts๋ฅผ ์ฌ์ฉํ์ฌ GOT์ ์๋ put ์ฃผ์๋ฅผ ๋
ธ์ถํ๋ ROP ์ฒด์ธ์ ์ฌ์ฉํฉ๋๋ค (exit
์ด ํธ์ถ๋์ด pop rdi; ret
์ด ํธ์ถ๋๋ฏ๋ก ์คํ์์ ์ด ์ฒด์ธ์ ์คํํฉ๋๋ค). ๋ง์ง๋ง์ผ๋ก ret2lib๋ฅผ ์คํํ๋ ์๋ก์ด ROP ์ฒด์ธ์ ์ฌ์ฉํฉ๋๋ค.
32๋นํธ, relro ์์, ์บ๋๋ฆฌ ์์, nx, pie. ์๋ชป๋ ์ธ๋ฑ์ฑ์ ์
์ฉํ์ฌ ์คํ์์ libc ๋ฐ ํ์ ์ฃผ์๋ฅผ ๋
ธ์ถํฉ๋๋ค. ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๋ฅผ ์
์ฉํ์ฌ system('/bin/sh')
๋ฅผ ํธ์ถํ๋ ret2lib๋ฅผ ์ํํฉ๋๋ค (ํ ์ฃผ์๊ฐ ํ์ํ์ฌ ์ฒดํฌ๋ฅผ ์ฐํํด์ผ ํจ).