์ „์ฒด ๊ธ€

๐ŸŒ‡โ”‚System_Study/๐Ÿ“•โ”‚Dreamhack_Hacking

shell_basic

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

Exploit Tech: Shellcode

์ต์Šคํ”Œ๋กœ์ž‡(Exploit) ํ•ดํ‚น ๋ถ„์•ผ์—์„œ ์ƒ๋Œ€ ์‹œ์Šคํ…œ์„ ๊ณต๊ฒฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์นจํˆฌํ•˜์—ฌ ์‹œ์Šคํ…œ์„ ์•…์šฉํ•˜๋Š” ํ•ดํ‚น๊ณผ ๋งฅ๋ฝ์ด ๊ฐ™์Œ ์ฒซ ๋ฒˆ์งธ ๊ณต๊ฒฉ๊ธฐ๋ฒ•์ธ ์…ธ์ฝ”๋“œ์ด๋ฉฐ, ์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐ์šด ์ง€์‹์„ ์ ๊ฒ€ํ•˜๊ณ  gdb ์‚ฌ์šฉ์— ์ต์ˆ™ํ•ด์ง€๋Š” ์‹œ๊ฐ„์ด ๋˜์–ด๋ด์š” ์…ธ์ฝ”๋“œ ์ต์Šคํ”Œ๋กœ์ž‡์„ ์œ„ํ•ด ์ œ์ž‘๋œ ์–ด์…ˆ๋ธ”๋ฆฌ ์ฝ”๋“œ ์กฐ๊ฐ ์ผ๋ฐ˜์ ์œผ๋กœ ์…ธ์„ ํš๋“ํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์…ธ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ด, ํŠน๋ณ„ํžˆ "์…ธ"์ด๋ผ๋Š” ์ ‘๋‘์‚ฌ ๋ถ™์Œ ์…ธ์„ ํš๋“ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•ด์š”, ๊ทธ ์ด์œ ๋Š” ๋’ค์— ๋‚˜์™€์š” ๋งŒ์•ฝ ํ•ด์ปค๊ฐ€ rip๋ฅผ ์ž์‹ ์ด ์ž‘์„ฑํ•œ ์…ธ์ฝ”๋“œ๋กœ ์˜ฎ๊ธธ ์ˆ˜ ์žˆ์œผ๋ฉด ์ต์Šคํ”Œ๋กœ์ž‡์ด ๋˜์š”! ์…ธ์ฝ”๋“œ๋Š” ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋กœ ๊ตฌ์„ฑ๋˜๋ฏ€๋กœ ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•  ๋Œ€์ƒ ์•„ํ‚คํ…์ฒ˜์™€ OS์— ๋”ฐ๋ผ, ๊ทธ๋ฆฌ๊ณ  ์…ธ์ฝ”๋“œ์˜ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์ž‘์„ฑ๋ฉ๋‹ˆ๋‹ค ๋˜ํ•œ ๋ฐ‘ ๋งํฌ๋Š” ์•„ํ‚คํ…์ฒ˜ ๋ณ„ ๋ฒ”์šฉ์  ์…ธ์ฝ”๋“œ! shell-storm | Shellcode..

๐Ÿ’ปโ”‚IT_Study/๐Ÿ“Ÿโ”‚System_Study

CPU ๋ ˆ์ง€์Šคํ„ฐ

CPU ๋ ˆ์ง€์Šคํ„ฐ (Register) ๐Ÿ’ก CPU๋‚ด์— ์œ„์น˜ํ•œ ๊ธฐ์–ต์žฅ์น˜๋กœ ๋งŽ์€ ์ˆ˜์˜ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ CPU๋‚ด์— ํฌํ•จ์‹œํ‚ค๋Š” ๊ฒƒ์€ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ํŠน์ˆ˜ ๋ชฉ์ ์šฉ ๋ ˆ์ง€์Šคํ„ฐ๋“ค๊ณผ ๋ช‡๋ช‡ ์ผ๋ฐ˜ ๋ชฉ์ ์šฉ ๋ ˆ์ง€์Šคํ„ฐ๋งŒ ์กด์žฌํ•œ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ๋ ˆ์ง€์Šคํ„ฐ PC (Program Counter) ๋‹ค์Œ ์ธ์ถœ(Fetch) ๋  ๋ช…๋ น์–ด์˜ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ AC (Accumulator) ์—ฐ์‚ฐ ๊ฒฐ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ IR (Instruction Register) ๊ฐ€์žฅ ์ตœ๊ทผ์— ์ธ์ถœ๋œ ๋ช…๋ น์–ด(ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ๋ช…๋ น์–ด)๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ SR (Status Register) ํ˜„์žฌ CPU ์˜ ์ƒํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ MAR (Memory Address Register) PC์— ์ €์žฅ๋œ ๋ช…๋ น์–ด ์ฃผ์†Œ๊ฐ€ ์‚ฌ์šฉ๋˜๊ธฐ ์ „์— ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅ๋˜..

๐ŸŒ‡โ”‚System_Study/๐Ÿ“—โ”‚Dreamhack_Reversing

Background: Binary

Program ์—ฐ์‚ฐ์žฅ์น˜๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ๋™์ž‘์„ ์ •์˜ํ•œ ์ผ์ข…์˜ ๋ฌธ์„œ! ์—ฐ์‚ฐ ์žฅ์น˜์— ์ „๋‹ฌํ•˜๋ฉด, CPU๋Š” ์ ํ˜€์žˆ๋Š” ๋ช…๋ น๋“ค์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์˜๋„ํ•œ ๋™์ž‘ ์ˆ˜ํ–‰ ์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ํ•ด์„ํ•˜์—ฌ ๋ช…๋ น์–ด๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์—ฐ์‚ฐ ์žฅ์น˜(programmable) ํ˜„๋Œ€ PC๋Š” ๋Œ€ํ‘œ์  programmable ์—ฐ์‚ฐ์žฅ์น˜, ์ผ๋ฐ˜๊ณ„์‚ฐ๊ธฐ๋Š” ๋Œ€ํ‘œ์ ์ธ non-programmable ์šด์˜์ฒด์ œ ๋ฐœ์ „๊ณผ์ • ์šด์˜์ฒด์ œ์˜ ๊ธฐ์ˆ  ๋ฐœ์ „ ๊ณผ์ • ์ผ๊ด„์ฒ˜๋ฆฌ/ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/ ์‹œ๋ถ„ํ™œ/ ๋‹ค์ค‘ ์ฒ˜๋ฆฌ/ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ ์šด์˜์ฒด์ œ์˜ ๋ฐœ์ „ ๊ณผ์ • 1์„ธ๋Œ€ ์ผ๊ด„์ฒ˜๋ฆฌ 2์„ธ๋Œ€ ์‹œ๋ถ„ํ™œ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/ ์ฒ˜๋ฆฌ ์‹ค์‹œ๊ฐ„ 3์„ธ๋Œ€ ๋‹ค์ค‘ ๋ชจ๋“œ 4์„ธ๋Œ€ dystopia050119.tistory.com ์ž์„ธํ•œ ์—ญ์‚ฌ๋Š” ์œ„ ๋งํฌ๋ฅผ ๋ณด์‹œ๋ฉด ๋˜์š”, ๋‹ค ์„ค๋ช…ํ•˜๊ธฐ ํž˜๋“œ๋‹ˆ๊นŒ ใ…  ๋˜ํ•œ ๋งŽ์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋“ค์€ ํ”„๋กœ๊ทธ๋žจ..

๐Ÿ’ปโ”‚IT_Study/๐Ÿ“Ÿโ”‚System_Study

์šด์˜์ฒด์ œ ๋ฐœ์ „๊ณผ์ •

์šด์˜์ฒด์ œ์˜ ๊ธฐ์ˆ  ๋ฐœ์ „ ๊ณผ์ • ์ผ๊ด„์ฒ˜๋ฆฌ/ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/ ์‹œ๋ถ„ํ™œ/ ๋‹ค์ค‘ ์ฒ˜๋ฆฌ/ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ ์šด์˜์ฒด์ œ์˜ ๋ฐœ์ „ ๊ณผ์ • 1์„ธ๋Œ€ ์ผ๊ด„์ฒ˜๋ฆฌ 2์„ธ๋Œ€ ์‹œ๋ถ„ํ™œ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/ ์ฒ˜๋ฆฌ ์‹ค์‹œ๊ฐ„ 3์„ธ๋Œ€ ๋‹ค์ค‘ ๋ชจ๋“œ 4์„ธ๋Œ€ ๋ถ„์‚ฐ์ฒ˜๋ฆฌ(p2p, ํด๋ผ์ด์–ธํŠธ, ํด๋ผ์šฐ๋“œ 1. ์ผ๊ด„์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ ์ดˆ๊ธฐ์˜ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ๋œ ํ˜•ํƒœ ์ผ์ •๋Ÿ‰ ๋˜๋Š” ์ผ์ • ๊ธฐ๊ฐ„๋™์•ˆ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ์•„ ํ•œ๊บผ๋ฒˆ์— ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹ - ์ผ๊ด„ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์ ์ ˆํ•œ ์ž‘์—… ์ œ์–ด ์–ธ์–ด(JCL)๋ฅผ ์ œ๊ณตํ•ด์•ผํ•จ - ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ - ๋ฐ˜ํ™˜ ์‹œ๊ฐ„(Turn Around Time)์ด ๋Šฆ์ง€๋งŒ ํ•˜๋‚˜์˜ ์ž‘์—…์ด ๋ชจ๋“  ์ž์› ๋…์ ์ด๋‹ˆ, CPU ์œ ํœด ์‹œ๊ฐ„ ↓ ์œ ํ›„ ์‹œ๊ฐ„ : ์–ด๋– ํ•œ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ•ด์„œ๋„ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ƒํƒœ! ์ผ๊ด„์ฒ˜๋ฆฌ์˜ ์žฅ์  ๋งŽ์€ ์‚ฌ์šฉ์ž์™€ ํ”„๋กœ๊ทธ๋žจ์ด ์ปดํ“จํ„ฐ ์ž์› ๊ณต์œ  ์ˆ˜๋™์œผ๋กœ ๊ฐœ์ž…..

๐Ÿ’ปโ”‚IT_Study/๐Ÿ“Ÿโ”‚System_Study

์šด์˜์ฒด์ œ(OS)๋ž€?

์šด์˜์ฒด์ œ(OS; Operating System)์˜ ๋ชฉ์  HW๊ด€๋ฆฌ ๋ฟ๋งŒ ์•„๋‹Œ App(์‘์šฉ ํ”„๋กœ๊ทธ๋žจ) ์‚ฌ์ด์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ! PC์˜ HW๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋ฉฐ, ์‚ฌ์šฉ์ž์˜ ํŽธ์˜๋ฅผ ๋งž์ถ”๋Š” ์„œ๋น„์Šค์ธ ๋ชฉ์ ! User์—๊ฒŒ PC์˜ App๋ฅผ ์‰ฝ๊ณ  ํšจ์œจ์ ์œผ๋กœ ์‹คํ–‰ํ•  ํ™˜๊ฒฝ ์ œ๊ณต ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ HW ๋ฐ SW ์ž์›์„ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž ๊ฐ„์— ํšจ์œจ์  ํ• ๋‹น, ๊ด€๋ฆฌ, ๋ณดํ˜ธ OS๋Š” ์ œ์–ด ํ”„๋กœ๊ทธ๋žจ = ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์˜ ์˜ค๋ฅ˜๋‚˜ ์ž˜๋ชป๋œ ์ž์› ์‚ฌ์šฉ์„ ๊ฐ์‹œํ•˜๋Š” ๊ฒƒ๊ณผ ์ž…์ถœ๋ ฅ ์žฅ์น˜ ๋“ฑ์˜ ์ž์›์— ๋Œ€ํ•œ ์—ฐ์‚ฐ๊ณผ ์ œ์–ด๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค. OS๋Š” ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์„ ๋†’ํžˆ๊ณ , ์‚ฌ์šฉ์ž์—๊ฒŒ ํŽธ์˜์„ฑ ์ œ๊ณต์„ ๋ชฉ์ ํ•˜๋Š” HW๋ฅผ ๊ด€๋ฆฌ! ๋˜ํ•œ ํฐ ๋…ธ์ด๋งŒ ๊ตฌ์กฐ(ISA๊นŒ์ง€๋งŒ ์ฝ์œผ์„ธ์š”)๋ฅผ ๋”ฐ๋ฅด๋Š” ์ฒด๊ณ„๋กœ์จ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋งํฌ๋กœ Computer Architecture 1. ์ปดํ“จํ„ฐ ๊ตฌ์กฐ(Compu..

๐ŸŒ†โ”‚Web_Study/๐Ÿ“–โ”‚Dreamhack_War_Game

command-injection-1

2๋‹จ๊ณ„ : command-injection-1 Code! ์ž ์ฝ”๋“œ ํ™•์ธ๊นŒ์ง€ ํ–ˆ์ฃ  ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ํ‘œ์‹œํ•œ ๋ถ€๋ถ„์ด ํ•ต์‹ฌ์ด์ฃ  cmd = f๋ถ€๋ถ„์—์„œ ๋ฐ”๋กœ ๋ฌธ์ž์—ด ํƒ€์ž…์œผ๋กœ ๋ฐ›์•„๋“œ๋ ค cmd๋ฅผ ์‹คํ–‰ํ•˜๋Š” cmd injection ๊ณต๊ฒฉํ•˜๋ผ๋Š” ๊ฑฐ์ฃ  ์—ญ์‹œ ๊ทœ์•ฝ์ด ์–ด๋Š์ •๋„ ์ •ํ•ด์ง„ ๋ชจ์Šต์ด์˜ˆ์š” ๋งž๊ฒŒ ํ•ด์•ผ๊ฒ ์ฃ  ์•„๊นŒ ๋ฌธ์ž์—ด๋กœ ๋ฐ›๋Š”๋‹ค๊ณ  ํ–ˆ์œผ๋‹ˆ๊นŒ์ € ํŒจํ„ด๋งŒ ๋ถ„์„ํ•˜๋ฉด ์‰ฝ๊ฒŒ ๋”ธ ์ˆ˜ ์žˆ๊ฒ ์ฃ  [A-Za-z0-9.]{5,20} ์ •๊ทœ์‹ ๋ถ„์„ ๐Ÿ’ก"[A-Za-z0-9.]{5,20}"์€ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด์„ํ•˜์ž๋ฉด ์†Œ๋ฌธ์ž๋ถ€ํ„ฐ ๋Œ€๋ฌธ์ž๊นŒ์ง€ ์ „๋ถ€ ํ—ˆ์šฉ, ๊ณต๋ฐฑ X, ์ˆซ์ž๋Š” 0๋ถ€ํ„ฐ 9๊นŒ์ง€ ํ—ˆ์šฉ, .๋ฌธ์ž๋„ ํ—ˆ์šฉ(pingํ•˜๋Š” ์›น ์‚ฌ์ดํŠธ๋‹ˆ๊นŒ..) ๋งˆ์ง€๋ง‰์ธ ๋ฌธ์ž์—ด 5-20๊นŒ์ง€ ์ •๊ทœ์‹ ํ‘œํ˜„ ๋ฐฉ์‹์„ ๋” ์ž์„ธํžˆ ์•Œ๋ ค์ค„๊ป˜์š” ๋‚˜์ค‘์—.. ๋” ์ž์„ธํžˆ ์ •๋ฆฌํ•ด์„œ ์˜ฌ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค ใ…  ๋ฐ‘์— ์‚ฌ์ดํŠธ๋Š” ์ •๊ทœ์‹..

๐ŸŒ‡โ”‚System_Study/๐Ÿ“•โ”‚HackerSchool_FTZ

HackerSchool_level4

Level4 ๋ฌธ์ œ ํ’€์ด Keyword : xinetd backdoor exploit ๋ฌธ์ œ ํŒŒ์•… ๋ฆฌ๋ˆ…์Šค ์„œ๋น„์Šค(telnet, ssh, finger ๋“ฑ) ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ ๋ฐ ์„ค์ •์— ๋Œ€ํ•œ ํ™•์ธ ๋ฌธ์ œ๋„ค์š” /etc๋Š” ์„ค์ •ํŒŒ์ผ์ด๊ธฐ์— ๋งค์šฐ ์œ„ํ—˜ํ•œ ์ƒํƒœ!! ๋ฐ”๋กœ ํ™•์ธ ํ•ด๋ณผ๊นŒ์š” ์•„ ๋‹น์—ฐํžˆ ํŒŒ์ผ ์œ„์น˜๋Š” cd /etc/xinetd.d ๋กœ ์ด๋™ํ•˜๊ณ  ํ™•์ธํ•˜๊ฒ ์ฃ  /etc/xinetd(์‹คํ–‰ ๋ฐ๋ชฌ)์˜ ๋ฐฑ๋„์–ด ํ™•์ธ ๐Ÿ’กfinger์€ ์ ‘์†์ž ์ƒํƒœ ํ™•์ธ(local or remote user)์ด๋ฏ€๋กœ ํ™•์ธํ•˜๋ฉด user(level5)๊ฐ€ server(/home/level4/tmp/backdoor)์„œ๋ฒ„ ํŒŒ์ผ์„ ์‹คํ–‰ํ•จ ์ฆ‰, level4์ธ ์‚ฌ์šฉ์ž๊ฐ€ level5์˜ ์‹คํ–‰ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋Š” ๊ฑฐ๋‹ˆ๊นŒ SetUID์ธ ํŒŒ์ผ!! ๊ทธ๋Ÿผ ํ•ด๋‹น ๊ฒฝ๋กœ๋กœ ์ด๋™ํ•ด ํ™•์ธ์„ ํ•ด๋ณผ๊นŒ์š” ..

Jastes
Jastes