Archive for Dev. (junyup2)

์ง€์‹์„ ์ฑ„์›Œ๊ฐ€๋Š” ใ€Ž๊ฐœ๋ฐœ์ž/ํ™”์ดํŠธํ•ด์ปคใ€๋ฅผ ๋ชฉํ‘œ๋กœ ์ •๋ฆฌํ•˜๋Š” ๋ธ”๋กœ๊ทธ

๋ชจ์˜ ํ•ดํ‚น ์Šคํ„ฐ๋””/๋ชจ์˜ ํ•ดํ‚น - ๊ธฐ๋ก์ผ์ง€ 18

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 20์ฃผ์ฐจ (๋ชจ๋ฐ”์ผ ์•ฑ ๋ชจ์˜ํ•ดํ‚น)

๋ชจ๋ฐ”์ผ ์•ฑ ํ•ดํ‚น vs ๋ชจ๋ฐ”์ผ ํ•ดํ‚น ๋ชจ๋ฐ”์ผ ํ•ดํ‚น๊ณผ ๋ชจ๋ฐ”์ผ ์•ฑ ํ•ดํ‚น์€ ๊ฐ™์€ ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ๋ชจ๋ฐ”์ผ ํ•ดํ‚น์€ ์Šค๋งˆํŠธํฐ ์ž์ฒด๋ฅผ ํ•ดํ‚นํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์นด๋ฉ”๋ผ๋ฅผ ์ œ์–ดํ•˜๊ณ , ๋…น์Œ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋Š” ๋“ฑ์˜ ํ•ดํ‚น์€ ๋ชจ๋ฐ”์ผ ํ•ดํ‚น์œผ๋กœ ๋ชจ๋ฐ”์ผ OS, ์ฆ‰ ์•ˆ๋“œ๋กœ์ด๋“œ๋‚˜ iOS์™€ ๊ฐ™์€ ๊ฒƒ์„ ํ•ดํ‚นํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ๋ชจ๋ฐ”์ผ ์•ฑ ํ•ดํ‚น์€ ๋ชจ์˜ํ•ดํ‚น์—์„œ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์›น ํ•ดํ‚น๊ณผ ๋น„์Šทํ•˜๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์›น ๊ฐœ๋ฐœ - ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์›น ํ•ดํ‚น - ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ•ดํ‚น ์›น ๊ฐœ๋ฐœ๊ณผ ์›น ํ•ดํ‚น์€ ์‚ฌ์‹ค ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ณ  ํ•ดํ‚นํ•˜๋Š” ๊ฒƒ์„ ๋œป ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„์Šทํ•˜๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ์›น ๊ฐœ๋ฐœ๊ณผ ์›น ํ•ดํ‚น์„ ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์›น ์„œ๋ฒ„ ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๊ณ , ๊ฑฐ๊ธฐ์„œ ๋ฐœ์ƒํ•˜๋Š” ์ทจ์•ฝ์ ์„ ์ฐพ์€ ๊ฒƒ์ด๋‹ค. ๋ชจ๋ฐ”์ผ ์•ฑ ํ•ดํ‚น์€ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ•ดํ‚น์œผ๋กœ..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 16์ฃผ์ฐจ (์ธ์ฆ/์ธ๊ฐ€ ์ทจ์•ฝ์ )

์ธ์ฆ / ์ธ๊ฐ€ ์ทจ์•ฝ์  ์ธ์ฆ ์ธ์ฆ(Athentication)์ด๋ž€, ๊ทธ ์‚ฌ๋žŒ์ด ๋ณธ์ธ์ด ๋งž๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ”ํžˆ ๋น„๋ฐ€๋ฒˆํ˜ธ๋‚˜, ์ธ์ฆ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๊ณผ์ • ๋“ฑ์ด ์ด์— ํ•ด๋‹นํ•˜๋Š”๋ฐ, ๋‹ค๋ฅธ ์ด์šฉ์ž๊ฐ€ ์•Œ์ง€ ๋ชปํ•˜๋Š” ๋ณธ์ธ๋งŒ ์•„๋Š” ์ •๋ณด๋ฅผ ํ†ตํ•ด ๋ณธ์ธ์ž„์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ธ์ฆ ์ทจ์•ฝ์ ์€ ์ธ์ฆ ๊ณผ์ •์—์„œ ์ผ์–ด๋‚˜๋Š” ์ทจ์•ฝ์ ์œผ๋กœ์„œ, ์ธ์ฆ์„ ๋ฌด์‹œํ•˜๋Š” ๊ณต๊ฒฉ์ด ๊ฐ€๋Šฅํ•œ ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์ธ๊ฐ€ ์ธ๊ฐ€(Athorization)๋ž€, ํŠน์ • ์‚ฌ๋žŒ์—๊ฒŒ ํŠน์ • ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ด์šฉ์ž๋งˆ๋‹ค ๊ฐ๊ฐ์— ํ•ด๋‹นํ•˜๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ถŒํ•œ ๊ฐ„์—๋Š” ๊ฐ€๋Šฅํ•œ ๊ฒƒ์˜ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•˜๊ณ , ์›๋ž˜๋Š” ํ•˜์ง€ ๋ชปํ•ด์•ผํ•˜๋Š” ์ด์šฉ์ž๊ฐ€ ์ƒ์œ„์˜ ๊ถŒํ•œ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์— ๋ฌธ์ œ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ธ๊ฐ€ ์ทจ์•ฝ์ ์€ ํ•ด๋‹น ์œ ์ €๊ฐ€ ์›๋ž˜๋Š” ํ•˜์ง€ ๋ชปํ•ด์•ผ ํ•˜๋Š”๊ฑธ ํ•˜๋Š” ๊ฒƒ์ด..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 15์ฃผ์ฐจ (File Upload ๋Œ€์‘·์šฐํšŒ / FLI(File Include) / File Download ์ทจ์•ฝ์ )

File Upload ๋Œ€์‘·์šฐํšŒ File Upload Vuln ํŒŒ์ผ ์—…๋กœ๋“œ ์ทจ์•ฝ์ ์€ ๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ž„์˜์˜ ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์ทจ์•ฝ์ ์ด๋‹ค. ์—…๋กœ๋“œ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ๋์ด ์•„๋‹ˆ๊ณ  ํ•ด๋‹น ํŒŒ์ผ์„ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ์–ด์•ผํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์—…๋กœ๋“œํ•œ ํŒŒ์ผ์˜ ์ •ํ™•ํ•œ ๊ฒฝ๋กœ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค. ~~/~~/webshell.php?cmd= ์›น ์ƒ์— ํŒŒ์ผ์ด ์œ„์น˜ํ•œ ๊ฒฝ๋กœ๋ฅผ ์•Œ์•„์•ผ ์œ„์™€ ๊ฐ™์ด ๋ช…๋ น์–ด ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋„ฃ์–ด์„œ ์š”์ฒญํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ •ํ™•ํ•œ ๊ฒฝ๋กœ๋ฅผ ์•Œ์ง€ ๋ชปํ•˜์—ฌ ํŒŒ์ผ์„ ์—…๋กœ๋“œ ํ–ˆ๋”๋ผ๋„ ์š”์ฒญ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ๋ฌด์šฉ์ง€๋ฌผ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฅผ ์ˆจ๊ธฐ๊ณ , ๊ฒฝ๋กœ๋ฅผ ์•Œ์ง€ ๋ชปํ•˜๋„๋ก ํŒŒ์ผ์˜ ๊ฒฝ๋กœ๋ฅผ ์•Œ๊ธฐ ํž˜๋“ค๊ฒŒ ํ•ด๋†“๋Š” ๊ฒƒ์€ ๋ฌผ๋ก  ํ™•์žฅ์ž๋Š” ๊ทธ๋Œ€๋กœ์ง€๋งŒ, ํŒŒ์ผ๋ช…์„ ๋ฐ”๊พธ์–ด์„œ ์ €์žฅ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ผ๋ฐ˜์  (๊ทธ๋Œ€๋กœ ์ €์žฅ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์ง€ ์•Š๋‹ค.) ์ด๊ธฐ ๋•Œ..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 14์ฃผ์ฐจ (File Upload ์ทจ์•ฝ์ (≈ Web Shell))

File Upload ์ทจ์•ฝ์  ๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ž„์˜์˜ ํŒŒ์ผ์„ ์—…๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฒฉ์ด๋‹ค. ๋ฐœ์ƒ ์›์ธ ํŒŒ์ผ์„ ์—…๋กœ๋“œ ๋ฐ›์„ ๋•Œ์— ๊ฒ€์ฆ · ๊ฒ€์‚ฌ๋ฅผ ์•ˆํ–ˆ์„ ๋•Œ ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ํŒŒ์ผ ์—…๋กœ๋“œ์˜ ๊ฒฝ์šฐ ํŠน์ • ํ™•์žฅ์ž์˜ ํŒŒ์ผ๋งŒ ์ด์šฉํ•˜๋„๋ก ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์ด๊ฒƒ์„ ํ™•์ธํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ex) ํ”„๋กœํ•„ ์‚ฌ์ง„ ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ „์šฉ (์ด๋ฏธ์ง€ ํŒŒ์ผ๋งŒ ๋ฐ›์œผ๋ ค ํ–ˆ์ง€๋งŒ ๋‹ค๋ฅธ ํŒŒ์ผ๋“ค๋„ ์˜ฌ๋ผ๊ฐ€๋Š” ๋ฌธ์ œ) ๋ฐœ์ƒ ์œ„์น˜ ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๊ณณ์ด๋ผ๋ฉด ์–ด๋””๋“ ์ง€ ๊ฐ€๋Šฅํ•˜๋‹ค. ex) ํ”„๋กœํ•„, ๊ฒŒ์‹œํŒ(ํŒŒ์ผ ์—…๋กœ๋“œ), ์„œ๋ฅ˜ ์ œ์ถœ, ์‹ ๋ถ„์ฆ ์‚ฌ์ง„(์€ํ–‰ ์•ฑ) ๋“ฑ๋“ฑ.. Burp Suite๋ฅผ ์ด์šฉํ•˜์—ฌ ์–ด๋–ค ์›น ์š”์ฒญ์ด ๊ฐ€๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ํŒŒ๋ผ๋ฏธํ„ฐ(Params)์— ํŒŒ์ผ์ด ์˜ฌ๋ผ๊ฐ€๋Š”์ง€ ํ™•์ธํ•ด์•ผํ•œ๋‹ค. ๊ณต๊ฒฉ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ทธ๋ ‡๋‹ค๋ฉด File Upload ๊ณต๊ฒฉ์œผ๋กœ ..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 13์ฃผ์ฐจ (CSRF ๋Œ€์‘ / ์šฐํšŒ)

CSRF ๋Œ€์‘ ๋ฐ ์šฐํšŒ CSRF๋Š” ํ”ผํ•ด์ž๊ฐ€ ์„œ๋ฒ„๋กœ ์ž„์˜์˜(๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š”) ์š”์ฒญ์„ ๋ณด๋‚ด๊ฒŒ ๋งŒ๋“œ๋Š” ๊ณต๊ฒฉ์ด๋‹ค. CSRF ๊ณต๊ฒฉ์˜ ์ ˆ์ฐจ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. CSRF ๊ณต๊ฒฉ ์ ˆ์ฐจ 1. ์ค‘์š”ํ•œ ์š”์ฒญ ์‹๋ณ„ (์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” ์š”์ฒญ์„ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.) 2. ๊ทธ ์š”์ฒญ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ์ฒดํฌ (์ธ์ฆ ์ •๋ณด๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ์—†๋‹ค๋ฉด CSRF ์ทจ์•ฝ์ ์œผ๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.) 3. GET Method ์ฒดํฌ (POST Method๋ผ๋ฉด GET Method๋กœ ๋ฐ”๊ฟ”์„œ ๋ณด๋‚ด๋ณด๊ณ  ๋˜๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.) POST Method๋กœ๋งŒ ์ฒ˜๋ฆฌ๋˜๋„๋ก ๊ตฌํ˜„ ํ•œ๋‹ค๊ณ  ๋ฐฉ์–ด๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ๋Œ€์‘ - POST Method 4. CSRF ๊ณต๊ฒฉ(with POST Method) > XSS ์ทจ์•ฝ์ ์ด ์žˆ๋Š”์ง€ ํ™•์ธ > POST Form Tag๋ฅผ ํ™œ์šฉ ์š”์ฒญ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต๊ฒฉ..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 12์ฃผ์ฐจ (CSRF)

CSRF CSRF๋ž€ Cross Site Request Forgery์˜ ์•ฝ์ž๋กœ์„œ ํ”ผํ•ด์ž(์ด์šฉ์ž)๊ฐ€ ์„œ๋ฒ„๋กœ ์ž„์˜์˜(๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š”) ์š”์ฒญ์„ ๋ณด๋‚ด๋„๋ก ๋งŒ๋“œ๋Š” ๊ณต๊ฒฉ์„ ๋งํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ Request Forgery ๋Š” ์š”์ฒญ์„ ์œ„์กฐ · ๋ณ€์กฐ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์ด์šฉ์ž์˜ ์ž…์žฅ์—์„œ '๋‚˜๋Š” ์„œ๋ฒ„์— ๊ทธ๋Ÿฐ ์š”์ฒญ์„ ํ•œ ์ ์ด ์—†์ง€๋งŒ, ๋‚˜๋„ ๋ชจ๋ฅด๊ฒŒ ใ€Œ์„œ๋ฒ„๋กœใ€ ํŠน์ • ์š”์ฒญ์„ ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ'์ด๋‹ค. ex ) ๊ณต๊ฒฉ ์˜ˆ์‹œ(๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ, ๊ฒŒ์‹œํŒ ๊ธ€ ์ž‘์„ฑ) 1. ํ”ผํ•ด์ž๊ฐ€(์ž๊ธฐ๋„ ๋ชจ๋ฅด๊ฒŒ) ์ž๊ธฐ ๊ณ„์ •์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ 1234๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ์š”์ฒญ์„ ์„œ๋ฒ„์— ๋ณด๋‚ด๊ฒŒ ๋งŒ๋“ ๋‹ค. 2. ํ”ผํ•ด์ž๊ฐ€(์ž๊ธฐ๋„ ๋ชจ๋ฅด๊ฒŒ) ๊ฒŒ์‹œํŒ์— ์–ด๋–ค ๊ฒŒ์‹œ๊ธ€์„ ์ž‘์„ฑํ•˜๋Š” ์š”์ฒญ์„ ์„œ๋ฒ„์—๊ฒŒ ๋ณด๋‚ด๊ฒŒ ๋งŒ๋“ ๋‹ค. ์ฆ‰ ํ”ผํ•ด์ž๊ฐ€ ํ”ผํ•ด์ž์˜ ์˜๋„์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์š”์ฒญ์„ ํ•˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ์ธ๋ฐ, ๊ทธ..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 11์ฃผ์ฐจ (XSS ๊ณต๊ฒฉ Script / ๋Œ€์‘ ๋ฐฉ์•ˆ / Client Script ํ™œ์šฉ ๋ฐฉ์•ˆ)

XSS Bypass Trick XSS ์šฐํšŒ ์ „๋žต์„ ํ†ตํ•œ ๊ณต๊ฒฉ ์Šคํฌ๋ฆฝํŠธ ์‚ฝ์ž… ๋ฐฉ๋ฒ• Script Tag (๊ธธ์ด ์ œํ•œ) ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฝ์ž…๋˜๋Š” ์Šคํฌ๋ฆฝํŠธ ๊ณต๊ฒฉ์€ ์–ด๋Š์ •๋„ ๊ธธ์ด๊ฐ€ ์žˆ๊ฒŒ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด script ํƒœ๊ทธ์— ๋Œ€ํ•˜์—ฌ ์Šคํฌ๋ฆฝํŠธ ํƒœ๊ทธ ๋‚ด๋ถ€์— ๋“ค์–ด๊ฐ€๋Š” ๊ธธ์ด ์ œํ•œ์„ ๋‘๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. $script = $_GET['script']; $script = substr($script,0,40); alert(1)๊ณผ ๊ฐ™์ด ์งง์€ ๊ฒƒ์œผ๋กœ ํ…Œ์ŠคํŠธ ํ•ด๋ณด๋Š” ๊ฒฝ์šฐ์—๋Š” ์‚ฝ์ž…์ด ๋˜์ง€๋งŒ, ๊ธธ์ด๊ฐ€ ๊ธธ์–ด์ง€๋Š” ๊ฒฝ์šฐ์— ๊ธธ์ด ์ œํ•œ์— ๊ฑธ๋ ค์„œ ์งค๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๊ธด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์ผ๊นŒ? ๊ทธ๋ ‡์ง€ ์•Š๋‹ค. ์œ„์™€ ๊ฐ™์ด xss.js ๋ผ๋Š” ์‚ฝ์ž…์„ ์œ„ํ•œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด๋‘๊ณ  ํ•ด๋‹น js ํŒŒ์ผ์— ์ ‘๊ทผํ•˜๋„๋ก ํ•˜๋ฉด..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 10์ฃผ์ฐจ (XSS - DOM Based/Cookie ํƒˆ์ทจ)

์•ž์„œ ์ •๋ฆฌํ•œ XSS XSS๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก ์Šคํฌ๋ฆฝํŠธ ์‚ฝ์ž… ๊ณต๊ฒฉ์œผ๋กœ์„œ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์Šคํฌ๋ฆฝํŠธ์ธ Javascript๊ฐ€ ๋Œ€ํ‘œ์ ์œผ๋กœ ๊ณต๊ฒฉ์— ์ด์šฉ๋œ๋‹ค. ์‹คํ–‰์œ„์น˜๋Š” ํ”ผํ•ด์ž(์ด์šฉ์ž)์˜ ์›น ๋ธŒ๋ผ์šฐ์ €์ด๋‹ค. ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์‹คํ–‰ ์‹œ์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(Javascript) ํƒœ๊ทธ(Tag)๋ฅผ ์ฐพ์•„์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. ์•…์„ฑ ์ฝ”๋“œ(badCode)๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์„ ์ฆ๋ช…ํ•˜๊ธฐ ์œ„ํ•ด์„œ alert(1)๊ณผ ๊ฐ™์€ POC๋ฅผ ์ด์šฉํ•˜์—ฌ ์‹คํ–‰๋œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ณด์—ฌ์ค€๋‹ค. Stored XSS ์„œ๋ฒ„์— ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ €์žฅํ•˜๊ณ  ํ•ด๋‹น ์œ„์น˜์— ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜์–ด ํ”ผํ•ด๋ฅผ ์ž…๋Š”๋‹ค. ์‚ฝ์ž…๋œ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ถœ๋ ฅ๋˜๋Š” ํŽ˜์ด์ง€์— ํ”ผํ•ด์ž๊ฐ€ ์ง์ ‘ ์ ‘๊ทผ ex) ๊ฒŒ์‹œํŒ์— ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž…ํ•ด๋‘๊ณ , ๊ธ€ ์—ด๋žŒ์‹œ์— ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰ Reflected XSS ์„œ๋ฒ„์—์„œ ๋ฐ˜์‚ฌ๋˜๋Š”..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 09์ฃผ์ฐจ (XSS - Stored/Reflected)

XSS ๋ž€? ํฌ๋กœ์Šค ์‚ฌ์ดํŠธ ์Šคํฌ๋ฆฝํŒ…(XSS)์€ Cross Site Scripting์˜ ์•ฝ์ž๋กœ ๊ฐ„๋‹จํžˆ ๋งํ•˜๋ฉด 'ํด๋ผ์ด์–ธํŠธ ์ธก ์Šคํฌ๋ฆฝํŠธ ์‚ฝ์ž… ๊ณต๊ฒฉ'์ด๋‹ค. (์ค„์—ฌ๋ณด๋ฉด CSS์ด์ง€๋งŒ XSS์ธ ์ด์œ ๋Š” ์ด๋ฏธ CSS๋ผ๋Š” ๊ฒƒ์ด ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— Cross์™€ ์ผ๋งฅ์ƒํ†ตํ•˜๋Š” X๋กœ์„œ ๋Œ€์ฒดํ•œ ๊ฒƒ์ด๋‹ค.) ํฌ๋กœ์Šค ์‚ฌ์ดํŠธ ์Šคํฌ๋ฆฝํŒ…์€ ์ค„์—ฌ์„œ 'ํฌ์‚ฌ'๋ผ๊ณ  ๋ถˆ๋ฆฌ์šฐ๋Š”๋ฐ ์ž์„ธํ•œ ์ •์˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๊ณต๊ฒฉ์ž๊ฐ€ ์‹คํ–‰์‹œํ‚ค๊ณ ์žํ•˜๋Š” ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํŽ˜์ด์ง€์— ์‚ฝ์ž…ํ•˜์—ฌ ํ•ด๋‹น ํŽ˜์ด์ง€๋ฅผ ์ ‘๊ทผํ•˜๋Š” ์ด์šฉ์ž์˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜๋„๋กํ•˜๋Š” ๊ณต๊ฒฉ์ด๋‹ค. ์ด๋ ‡๊ฒŒ ๋งํ•˜๋ฉด ๊ณต๊ฒฉ์ž๊ฐ€ ์„œ๋ฒ„์˜ ํŽ˜์ด์ง€์— ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์˜ฌ๋ ค๋‘์—ˆ์œผ๋‹ˆ๊นŒ? ์„œ๋ฒ„๋ฅผ ๊ณต๊ฒฉํ•˜๋Š” ๊ฒƒ ์•„๋‹Œ๊ฐ€? ๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋Ÿด๋“ฏํ•˜๊ฒŒ๋„ ์„œ๋ฒ„๋ฅผ ๊ณต๊ฒฉํ•˜๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ, ์•„๋‹ˆ๋‹ค.!! ์ค‘์š”ํ•œ ๊ฒƒ์€ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜๋Š” ์œ„์น˜๋ผ๋Š”..

[๊ธฐ๋ก์ผ์ง€] ๐Ÿ“š 08์ฃผ์ฐจ (๐Ÿ’‰SQLi - Find Vuln Point / ๋Œ€์‘ ๋ฐฉ์•ˆ)

SQL Injection Advanced Ver. SQL Injection Vuln Point ์•ž์„œ์„œ ๊ณต๋ถ€ํ–ˆ๋˜ SQLi๋ฅผ ๋ณด๋ฉด '์–ด๋””์—(Where)', '์–ด๋–ค ๋ฐฉ๋ฒ•์œผ๋กœ(How)' ๊ณต๊ฒฉํ•˜๋ฉด๋˜๋Š”์ง€๋ฅผ ์•Œ๋ ค์ค€ ์ƒํƒœ์—์„œ ์ง„ํ–‰๋˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹ค๋ฌด์—์„œ๋Š” ์ด๋ ‡๊ฒŒ ๋Œ€๋†“๊ณ  "์—ฌ๊ธฐ๊ฐ€ ์ด๋Ÿฐ ์ทจ์•ฝ์ ์ด ์žˆ์œผ๋‹ˆ ๋šซ์œผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.~" ํ•˜๊ณ  ์นœ์ ˆํ•˜๊ฒŒ ์•Œ๋ ค์ฃผ์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๊ณต๋ถ€ํ•  ๋•Œ๋ถ€ํ„ฐ ์ทจ์•ฝ์ ์„ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์„ ์—ฐ์Šตํ•ด์•ผ ํ•œ๋‹ค. ์šฐ์„ ์ ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•ด๋ณด๊ณ , ๊ทธ ๊ณผ์ •์—์„œ ์ด๋™๋˜๋Š” ํŽ˜์ด์ง€์™€, ์˜ค๊ณ ๊ฐ€๋Š” ํŒจํ‚ท(Packet)์„ ๋ถ„์„ํ•ด๋ณผ ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ์ด๊ฒƒ์ด ์ค‘์š”ํ•œ ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ผ๋‹จ. ์„œ๋น„์Šค๋ฅผ ์ง์ ‘ ์ด์šฉํ•ด๋ณด์ง€ ์•Š๋Š”๋‹ค๋ฉด? ์–ด๋–ป๊ฒŒ ๊ตฌ๋™๋˜๊ณ  ์žˆ๋Š”์ง€ ์•Œ ๊ธธ์ด ์—†๋‹ค. ์–ด๋–ค์‹์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š”์ง€ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ง์ ‘ ์ด์šฉํ•ด๋ณด๋Š”๊ฒŒ BEST ..