๐โSystem_Study/๐โDreamhack_Hacking
2022.04.21
์คํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ(Stack Buffer Overflow) ์ธ๊ณ ์ต์ด์ ์์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋ชจ๋ฆฌ์ค ์๋ ์ด ๊ณต๊ฒฉ์ ํตํด ์ ํ๋จ ๋ณด์ ๊ณต๋ถ๋ฅผ ๋ชจ๋ฅด๋ ๊ฐ๋ฐ์๋ ์๋งํผ ์ ๋ช
ํ๊ณ ์ญ์ฌ๊ฐ ์ค๋๋ ์ทจ์ฝ์ ์
๋๋ค. ์ด๋ ๊ฒ ์ค๋ ์ญ์ฌ๋ฅผ ์๋ํ๋ ์ด ์ทจ์ฝ์ ์ ์์ง๋ ๋ง์ SW์์ ๋ฐ๊ฒฌ๋ฉ๋๋ค. CVE details์ ๋ฐ๋ฅด๋ฉด ์คํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๋ฅผ ํฌํจํ ์ค๋ฒํ๋ก์ฐ ์ทจ์ฝ์ ์ ๋ง์ด ๋์์(4์) ๊ทธ๋ผ ์คํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๊ฐ ๋ฐ์ํ๋ ์์ธ์ด ๋ฌด์์ธ์ง, ๊ทธ๋ฆฌ๊ณ ์ด ์ทจ์ฝ์ ์ด ์ด๋ค ๋ฌธ์ ๋ก ์ด์ด์ง์ง ๊ณต๋ถ ใฑ BOF์ ํ์ํ ์ฉ์ด ๊ฐ๋จ ์ ๋ฆฌ ๋ฒํผ๋ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋๋ ๊ณต๊ฐ sfp๋ ์คํ ๋ฒ ์ด์ค ๊ฐ์ ์๋ฏธ - sfp๋ ์คํ ์ฃผ์๊ฐ์ ๊ณ์ฐํ ๋ ํ์ฌ ์คํ๊ฐ์ ๊ธฐ์ค ํ์ํ ํ๋ ์ ํฌ์ธํฐ ๊ฐ ์ง์ (4 or 8byte) rbp(or ebp)๋ ํ ..
๐โSystem_Study/๐โDreamhack_Hacking
2022.04.20
ํจ์ ํธ์ถ ๊ท์ฝ๐ค ํจ์์ ํธ์ถ ๋ฐ ๋ฐํ์ ์ฝ์ ํ ํจ์์์ ๋ค๋ฅธ ํจ์๋ฅผ ํธ์ถ ์, ํ๋ก๊ทธ๋จ์ ์คํ ํ๋ฆ์ ๋ค๋ฅธ ํจ์๋ก ์ด๋ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํธ์ถ๋ ํจ์๊ฐ ๋ฐํ๋๋ฉด ๋ค์ ์๋์ ํจ์๋ก ๋์์ ๊ธฐ์กด์ ์คํ ํ๋ฆ์ ์ด์ด๊ฐ์ฃ . ํจ์ ํธ์ถ ์ ๋ฐํ๋ ์ดํ๋ฅผ ์ํด ํธ์ถ์(Caller)์ ์ํ(Stack frame) ๋ฐ ๋ฐํ ์ฃผ์(Return Address)๋ฅผ ์ ์ฅํด์ผ ํจ! ๋ํ, ํธ์ถ์๋ ํผํธ์ถ์(Callee)๊ฐ ์๊ตฌํ ์ธ์๋ฅผ ์ ๋ฌํ๋ฉฐ, ํผํธ์ถ์์ ์คํ์ด ์ข
๋ฃ ์ ๋ฐํ ๊ฐ์ ์ ๋ฌ ๋ฐ์์ผํจ ํจ์ ํธ์ถ ๊ท์ฝ ์ ์ฉ์ ์ผ๋ฐ์ ์ผ๋ก ์ปดํ์ผ์ ๋ชซ์ด๋ฉฐ, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ง๊ฒ ํธ์ถ ๊ท์ฝ์ ์๋ง๊ฒ ์ ์ฉ์ ์ปดํ์ผํฉ๋๋ค. ํธ์ถ ๊ท์ฝ์ ์ฌ๋ฌ๊ฐ์ง๊ฐ ์์ผ๋ฉฐ, ์ฝ๋์ ๋ช
์๊ฐ ์๋์ด ์๋ค๋ฉด ์ปดํ์ผ์์ ์ง์ํ๋ ํธ์ถ ๊ท์ฝ ์ค CUP์ ์ํคํ
์ฒ์ ..
๐โSystem_Study/๐โDreamhack_Hacking
2022.04.19
shell_basic ์ฌ๋ฌ๊ฐ์ง์ ๋ฌธ์ ํ์ด..? 1. skeleton_code ํ์ฉ ๋งค์ฐ ์ ์์ ์ธ ๋ฐฉ๋ฒ์ด๊ณ ์ปค๋ฆฌํ๋ผ์ด ์๋ํ ๋ด์ฉ์
๋๋ค. ์ด์ ์ ์ฌ์ฉํ๋ orw๋ฅผ ํ์ฉํด๋ณผ๊น์? ์ด์ ์ค์ผ๋ ํค ์ฝ๋์ ์ ์ฉํ ๋ ค๋ ์์์ธ๋ฐ์ ๋ฐ์ ๋งํฌ๋ค์ ์ฐธ๊ณ ์๋ฃใ
FreeBSD/x86 - execve /tmp/sh - 34 bytes shell-storm.org Exploit Tech: Shellcode ์ต์คํ๋ก์(Exploit) ํดํน ๋ถ์ผ์์ ์๋ ์์คํ
์ ๊ณต๊ฒฉํ๋ ๊ฒ์ผ๋ก ์นจํฌํ์ฌ ์์คํ
์ ์
์ฉํ๋ ํดํน๊ณผ ๋งฅ๋ฝ์ด ๊ฐ์ ์ฒซ ๋ฒ์งธ ๊ณต๊ฒฉ๊ธฐ๋ฒ์ธ ์
ธ์ฝ๋์ด๋ฉฐ, ์ง๊ธ๊น์ง ๋ฐฐ์ด ์ง์์ ์ ๊ฒํ๊ณ gdb ์ฌ์ฉ์ dystopia050119.tistory.com ์ ๊ทธ๋ผ ์์ํด๋ณผ๊น์ C์ธ์ด ํ์์ ์์ฌ์ฝ๋๋ก ๋ง๋ค๋ฉด ์ด์ ์ ๋ฐฐ์ด๊ฒ์ฒ๋ผ ์ ์ฝ๋๋ฅผ..
๐โSystem_Study/๐โDreamhack_Hacking
2022.04.15
์ต์คํ๋ก์(Exploit) ํดํน ๋ถ์ผ์์ ์๋ ์์คํ
์ ๊ณต๊ฒฉํ๋ ๊ฒ์ผ๋ก ์นจํฌํ์ฌ ์์คํ
์ ์
์ฉํ๋ ํดํน๊ณผ ๋งฅ๋ฝ์ด ๊ฐ์ ์ฒซ ๋ฒ์งธ ๊ณต๊ฒฉ๊ธฐ๋ฒ์ธ ์
ธ์ฝ๋์ด๋ฉฐ, ์ง๊ธ๊น์ง ๋ฐฐ์ด ์ง์์ ์ ๊ฒํ๊ณ gdb ์ฌ์ฉ์ ์ต์ํด์ง๋ ์๊ฐ์ด ๋์ด๋ด์ ์
ธ์ฝ๋ ์ต์คํ๋ก์์ ์ํด ์ ์๋ ์ด์
๋ธ๋ฆฌ ์ฝ๋ ์กฐ๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์
ธ์ ํ๋ํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์
ธ์ฝ๋๋ฅผ ์ฌ์ฉํด, ํน๋ณํ "์
ธ"์ด๋ผ๋ ์ ๋์ฌ ๋ถ์ ์
ธ์ ํ๋ํ๋ ๊ฒ์ ๋งค์ฐ ์ค์ํด์, ๊ทธ ์ด์ ๋ ๋ค์ ๋์์ ๋ง์ฝ ํด์ปค๊ฐ rip๋ฅผ ์์ ์ด ์์ฑํ ์
ธ์ฝ๋๋ก ์ฎ๊ธธ ์ ์์ผ๋ฉด ์ต์คํ๋ก์์ด ๋์! ์
ธ์ฝ๋๋ ์ด์
๋ธ๋ฆฌ์ด๋ก ๊ตฌ์ฑ๋๋ฏ๋ก ๊ณต๊ฒฉ์ ์ํํ ๋์ ์ํคํ
์ฒ์ OS์ ๋ฐ๋ผ, ๊ทธ๋ฆฌ๊ณ ์
ธ์ฝ๋์ ๋ชฉ์ ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์์ฑ๋ฉ๋๋ค ๋ํ ๋ฐ ๋งํฌ๋ ์ํคํ
์ฒ ๋ณ ๋ฒ์ฉ์ ์
ธ์ฝ๋! shell-storm | Shellcode..
๐โSystem_Study/๐โDreamhack_Hacking
2022.04.04
pwntools์ ๊ฐ๋จ ์ค๋ช
ํ์ ๋ฐฐ๊ฒฝ๊ณผ ์ค์น ๋ฐฉ๋ฒ ์ง๋ ์๊ฐ์ ํ์ด์ฌ๊ณผ ํ์ดํ(|)๋ฅผ ํตํด ๊ฐ๋จํ ์คํ ์ค๋ฒํ๋ก์ฐ ์ต์คํ๋ก์์ ํ์ฃ ํ์ด์ฌ์ผ๋ก ํ์ด๋ก๋๋ฅผ ์์ฑํ๊ณ , ํ์ดํ๋ฅผ ํตํด ์ด๋ฅผ ํ๋ก๊ทธ๋จ์ ์ ๋ฌํ์ฃ ๊ทธ๋ฌ๋ ์ต์คํ๋ก์์ด ์ข๋ง ๋ณต์กํด๋ ์ ๋ฐฉ๋ฒ์ ์ด์ฉ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ํ์ด๋ก๋๋ฅผ ์์ฑํ๊ธฐ ์ํด ๋ณต์กํ ์ฐ์ฐ๊ณผ ํ๋ก์ธ์ค์ ๋ฐ๋ณต์ ๋ฐ์ดํฐ ์ก์์ ์ด ๊ฐ๋ฅํด์ผ์ฃ ๊ทธ๋์ ํด์ปค๋ค์ perl, python c์ธ์ด ๋ฑ์ผ๋ก ์ต์คํ๋ก์ ์คํฌ๋ฆฝํธ, ๋๋ ๋ฐ์ด๋๋ฆฌ๋ฅผ ์ ์ํด ์ฌ์ฉํ์ฃ ๋ ์์ธํ ์๊ณ ์ถ๋ค๋ฉด ์์ผ ํ๋ก๊ทธ๋๋ฐ์ ๋ฐฐ์ฐ์๋ฉด ๋ผ์ ํ์ด์ฌ์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ์ต์คํ๋ก์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ค ๋ณด๋ฉด, ์์ฃผ ์ฌ์ฉํ๊ฒ ๋ ํจ์๊ฐ ์์ฃ ์๋ก ๋ฆฌํ ์๋์์ ๋ฐ์ดํธ ๋ฐฐ์ด๋ก ๋ฐ๊พธ๋ ํจํน ํจ์, ๋๋ ๊ทธ ์ญ์ ์ํํ๋ ์ธํจํน ํจ์ ๋ฑ์ด์ฃ ์ต์คํ๋ก..
๐โSystem_Study/๐โDreamhack_Hacking
2022.03.29
โ๐Debug(ger)๋? CS(Computer Science)์์ ์ค์๋ก ํ์ํ ํ๋ก๊ทธ๋จ์ ๊ฒฐํจ์ bug๋ผ๊ณ ์นญํจ ์ค์น sudo apt-get install gdb git clone https://github.com/pwndbg/pwndbg cd pwndbg ./setup.sh GitHub - pwndbg/pwndbg: Exploit Development and Reverse Engineering with GDB Made Easy Exploit Development and Reverse Engineering with GDB Made Easy - GitHub - pwndbg/pwndbg: Exploit Development and Reverse Engineering with GDB Made Easy gi..
๐โSystem_Study/๐โDreamhack_Hacking
2022.03.27
Quiz: x86 Assembly 1 ์ ๋ฌธ์ ๋ฅผ ํด์ํ ๋ถ๋ถ์ด๋ฉฐ, Dreamhack์ ๋ด์ฉ์
๋๋น ์์ฌ ๋ด์ฉ์์ ๋์ถฉ ๋ช
๋ น์ด์ ํด๋น ๋ ์ง์คํฐ์ ๋ํ ์ค๋ช
์ ํ์ผ๋ฏ๋ก ๊ฐ๋ตํ๊ฒ ์ค๋ช
ํ๊ณ ๋์ด๊ฐ๊ป์ dl : RDX(64byte) → EDX(ํ์ 32byte) → DX(ํ์ 16byte) → DL(ํ์ 8byte) 1. mov dl, BYTE PTR[rsi+rcx] dl = rdx 8byte low_data > dl = 0x67 0x55 0x5c 0x53 0x5f 0x5d 0x55 0x10 0x57656c636f6d6520 0x400000 | 0x57656c636f6d6520 rcx = 0x1 result = -1 5 result is flase so.. code excute X
๐โSystem_Study/๐โDreamhack_Hacking
2022.03.24
ํด์ปค์ ์ธ์ด: ์ด์
๋ธ๋ฆฌ๐ฌ PC์์ ๋ณต์กํ ๋
ผ๋ฆฌ์ ์ธ๊ณผ๊ด๊ณ, ์ฌ๋ฌ ๊ฐ์ฒด๊ฐ ์ํธ์์ฉํ๋ฉฐ ๊ทธ ์ธ๊ณ์์ ํต์ฉ๋๋ ๊ธฐ๊ณ์ด(Machine Code)์ธ์ด ํต์ฌ! ์์คํ
ํดํน์ ํ ๋๋ ์ปดํจํฐ ์ธ์ด, ์ด์์ฒด์ , ๋คํธ์ํฌ, ์ํธํ ๋ฑ ๋ค์ํ ๋ฐฐ์ธ ๊ฒ๋ค์ด ์กด์ฌํ์ง๋ง, ๊ทธ์ค ์์คํ
ํด์ปค๊ฐ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ผ๋ก ์ต๋ํด์ผ ํ๋ ์ง์์ ์ปดํจํฐ ์ธ์ด์ ๊ดํ ๊ฒ์! ์์คํ
ํด์ปค๋ ์ปดํจํฐ์ ์ธ์ด๋ก ์์ฑ๋ ์ํํธ์จ์ด์์ ์ทจ์ฝ์ ์ ๋ฐ๊ฒฌํด์ผ ํ๊ธฐ ๋๋ฌธ ๊ทธ๋ฐ๋ฐ ๋ฌธ์ ๋ PC ์ธ์ด์ธ ๊ธฐ๊ณ์ด๊ฐ ๋๋ฌด ์ดํดํ๊ณ ์์ฑํ๊ธฐ ํ๋ค๊ธฐ์ ๋ํดํ ๊ธฐ๊ณ์ด๋ฅผ ๋ฐ๊พผ ์ฌ๋์ด ์์ผ๋, ์ปดํจํฐ ๊ณผํ์ ์ค ํ ๋ช
์ธ David Wheeler๋ EDSAC์ ๊ฐ๋ฐํ๋ฉด์ ์ด์
๋ธ๋ฆฌ ์ธ์ด(Assembly Language)์ ์ด์
๋ธ๋ฌ(Assembler)๋ผ๋ ๊ฒ์ ๊ณ ์ ์ด์
๋ธ๋ฌ๋ ์ผ์ข
์ ํต์ญ..
๐โSystem_Study/๐โDreamhack_Hacking
2022.03.21
1. ๋ฆฌ๋
์ค ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ(Memory Layout) ํ๋ก์ธ์ค ๊ฐ์๋ฉ๋ชจ๋ฆฌ์ ๊ฐ ๊ตฌ์ญ์ด ์ด๋ค ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋์ง ์ดํดํ๋ ๊ฒ์ด ํต์ฌ! ๋๋ณด๊ธฐ ๐๊ฐ์๐ ์ธ๊ทธ๋จผํธ๋ ์ฝ๋ ์ธ๊ทธ๋จผํธ ๋ฐ์ดํฐ ์ธ๊ทธ๋จผํธ BSS ์ธ๊ทธ๋จผํธ ์คํ ์ธ๊ทธ๋จผํธ ํ ์ธ๊ทธ๋จผํธ CPU๋ ์คํํ ๋ช
๋ น์ด์ ๋ช
๋ น์ด ์ฒ๋ฆฌ์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์์ ์ฝ๊ณ , Instruction Set Architecture(ISA)์ ๋ฐ๋ผ ์ด๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํฉ๋๋ค. CPU์ ๋์๊ณผ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ด์ ๋ฐ์ ํ ์ฐ๊ด์ด ์์์ ์๋ฏธ ๊ณต๊ฒฉ์๊ฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์
์์ ์ผ๋ก ์กฐ์ํ ์ ์๋ค๋ฉด ์กฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ฐ์ ์ํด CPU๋ ์๋ชป๋ ๋์ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ค์ผ๋๋ค๊ณ ํํํ๋ฉฐ, ์ด๋ฅผ ์ ๋ฐํ๋ ์ทจ์ฝ์ ์ ๋ฉ๋ชจ๋ฆฌ ์ค์ผ(Memory Corruption) ์ทจ..
๐โSystem_Study/๐โDreamhack_Hacking
2022.03.21
1. ์ปดํจํฐ ๊ตฌ์กฐ(Computer Architecture) ์ปดํจํฐ ๊ณผํ์์๋ PC์ค๊ณ๋ฅผ ์ฌ๋ฌ ํ๋์จ์ด๊ฐ ๊ฐ๋ฐ๋๊ณ , ์ด๋ค์ ์กฐ๋ฆฝํด์ ์ปดํจํฐ๊ฐ ์์ฑํ ๊ฒ์ด ์ปดํจํฐ ๊ตฌ์กฐ! ๋๋ณด๊ธฐ ๐๊ฐ์๐ ์ปดํจํฐ ๊ตฌ์กฐ(Computer Architecture) ๋ช
๋ น์ด ์งํฉ ๊ตฌ์กฐ(Instruction Set Architecture, ISA) ๋ฒ์ฉ ๋ ์ง์คํฐ(General Register) ์ธ๊ทธ๋จผํธ ๋ ์ง์คํฐ(Segment Register) ํ๋๊ทธ ๋ ์ง์คํฐ(Flag Register) ๋ช
๋ น์ด ํฌ์ธํฐ ๋ ์ง์คํฐ(Instruction Pointer Register, IP) ์ปดํจํฐ๋ ๊ฐ์ ๋ค๋ฅธ ๊ธฐ๋ฅ์ ์ํํ๋ ์ฌ๋ฌ ๋ถํ๋ค์ ๋์์ผ๋ก ์๋ํฉ๋๋ค. CPU๋ ์ปดํจํฐ์ ์๋์ ํต์ฌ์ด ๋๋ ์ฐ์ฐ์ ์ฒ๋ฆฌํ๊ณ , ์ ์ฅ์ฅ์น๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํฉ๋๋ค. ์ด ์ธ์๋ G..