Tiny Bunny '๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (79 Page)
๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด๋ณด๊ธฐ317

Cross Site Request Forgery (CSRF) ์ด๋ฏธ์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” img ํƒœ๊ทธ, ์›น ํŽ˜์ด์ง€์— ์ž…๋ ฅ๋œ ์–‘์‹์„ ์ „์†กํ•˜๋Š” form ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํƒœ๊ทธ๋ฅผ ์ด์šฉํ•ด HTTP ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด HTTP ํ—ค๋”์ธ Cookie์— ์ด์šฉ์ž์˜ ์ธ์ฆ ์ •๋ณด๊ฐ€ ํฌํ•จ๋จ // ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜ ์ œ๊ณต window.open('http://');// ์ƒˆ ์ฐฝ ๋„์šฐ๊ธฐlocation.href = 'http://';location.replace('http://');// ํ˜„์žฌ ์ฐฝ ์ฃผ์†Œ ์˜ฎ๊ธฐ๊ธฐ XSS์™€ CSRF๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์›น ํŽ˜์ด์ง€์— ์ž‘์„ฑํ•ด ๊ณต๊ฒฉํ•œ๋‹ค๋Š” ์ ์—์„œ ๋งค์šฐ ์œ ์‚ฌ- ๊ณตํ†ต์ ๋ชจ๋‘ ํด๋ผ์ด์–ธํŠธ ๋Œ€์ƒ ๊ณต๊ฒฉ, ์ด์šฉ์ž๊ฐ€ ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํฌํ•จ๋œ ํŽ˜์ด์ง€์— ์ ‘์†ํ•˜๋„๋ก ์œ ๋„ํ•จ- ์ฐจ์ด์  XSS: ์ธ์ฆ ์ •๋ณด์ธ ์„ธ์…˜ ๋ฐ ์ฟ ํ‚ค ํƒˆ์ทจ๊ฐ€ ๋ชฉ์ ๊ณต๊ฒฉํ•  ์‚ฌ์ดํŠธ์˜ ์˜ค๋ฆฌ์ง„์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰CSRF: ์ด์šฉ์ž๊ฐ€ ์ž„์˜ ํŽ˜์ด์ง€.. 2024. 6. 23.
Cross-Site-Scripting (XSS) * Cross Site Scripting (XSS)ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ์ทจ์•ฝ์  ์ค‘ ํ•˜๋‚˜๊ณต๊ฒฉ์ž๊ฐ€ ์›น ๋ฆฌ์†Œ์Šค์— ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž…ํ•ด ์ด์šฉ์ž์˜ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ํŠน์ • ๊ณ„์ •์˜ ์„ธ์…˜ ์ •๋ณด ํƒˆ์ทจ, ํ•ด๋‹น ๊ณ„์ •์œผ๋กœ ์ž„์˜ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰ Stored XSS: ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์„œ๋ฒ„์— ์ €์žฅ๋˜๊ณ  ์„œ๋ฒ„์˜ ์‘๋‹ต์— ๋‹ด๊ฒจ์˜ดReflected XSS: ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ URL์— ์‚ฝ์ž…๋˜๊ณ  ์„œ๋ฒ„์˜ ์‘๋‹ต์— ๋‹ด๊ฒจ์˜ดDOM-based XSS: ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ URL Fragment์— ์‚ฝ์ž…๋จUniversal XSS: ํด๋ผ์ด์–ธํŠธ์˜ ๋ธŒ๋ผ์šฐ์ € ํ˜น์€ ํ”Œ๋Ÿฌ๊ทธ์ธ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ทจ์•ฝ์ , SOP ์ •์ฑ… ์šฐํšŒ document.cookie// ํ˜„์žฌ ํŽ˜์ด์ง€์˜ ์ฟ ํ‚ค (return type: string) document.cookie = "name=test;";// .. 2024. 6. 12.
Cookie & Session Connectionless: ํ•˜๋‚˜์˜ ์š”์ฒญ์— ํ•˜๋‚˜์˜ ์‘๋‹ต์„ ํ•œ ํ›„ ์—ฐ๊ฒฐ์„ ์ข…๋ฃŒ, ์ƒˆ ์š”์ฒญ์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ํ•ญ์ƒ ์ƒˆ๋กœ์šด ์—ฐ๊ฒฐ์„ ๋งบ์ŒStateless: ํ†ต์‹ ์ด ๋๋‚œ ํ›„ ์ƒํƒœ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์Œ ์ฟ ํ‚ค(Cookie): HTTP์—์„œ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” Key-Value ํ˜•ํƒœ์˜ ๊ฐ’์„ธ์…˜(Session): ์ฟ ํ‚ค์— ํฌํ•จ๋œ Session ID๋ฅผ ์‚ฌ์šฉํ•ด ์„œ๋ฒ„์— ์ €์žฅ๋œ ์„ธ์…˜ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ์‹ ์ฟ ํ‚ค์— ์„ธ์…˜ ์ •๋ณด ์ €์žฅ, ์„œ๋ฒ„๋Š” ์ด๋ฅผ ํ†ตํ•ด ์ด์šฉ์ž๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์ธ์ฆ์„ ์ฒ˜๋ฆฌ ์„ธ์…˜ ํ•˜์ด์žฌํ‚น(Session Hijacking): ๊ณต๊ฒฉ์ž๊ฐ€ ์ด์šฉ์ž์˜ ์ฟ ํ‚ค -> ์„ธ์…˜์— ํ•ด๋‹นํ•˜๋Š” ์ธ์ฆ ์ƒํƒœ๋ฅผ ํ›”์นจ Same Origin Policy (SOP): ๋™์ผ ์ถœ์ฒ˜ ์ •์ฑ…, ํ˜„์žฌ ํŽ˜์ด์ง€์˜ ์ถœ์ฒ˜๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ์ถœ์ฒ˜๋กœ๋ถ€ํ„ฐ ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์ง€ ๋ชปํ•˜๊ฒŒ ํ•˜๋Š” .. 2024. 6. 11.
Challenge 5 Login ๋ฒ„ํŠผ๊ณผ Join ๋ฒ„ํŠผ์ด ๋ณด์ธ๋‹ค.ํ˜น์‹œ๋‚˜ ํ•ด์„œ ๋“œ๋ž˜๊ทธ ํ•ด๋ดค๋Š”๋ฐ ์•„๋ฌด๊ฒƒ๋„ ์—†์—ˆ์Œ ๋จผ์ € Join ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ๋ดค์ง€๋งŒ ์นผ๊ฐ™์ด ์ฐจ๋‹จ๋‹นํ–ˆ๋‹ค. ์ด๋ฒˆ์—” ์˜†์— Login ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €๋”๋‹ˆ mem/login.php ์ฃผ์†Œ๋กœ ์ด๋™ํ–ˆ๋‹ค.๊ทธ๋ ‡๋‹ค๋ฉด Join์˜ ์ฃผ์†Œ๋Š” mem/join.php ์ผ ๊ฒƒ ๊ฐ™์•„ ์ž…๋ ฅํ–ˆ๋”๋‹ˆ bye... ํŽ˜์ด์ง€์˜ ์ฝ”๋“œ๋ฅผ ํ•œ ๋ฒˆ ํ™•์ธํ•ด๋ดค๋‹ค. ์กฐ๊ธˆ ์–ด์ง€๋Ÿฝ๋‹ค. ๋ฉ”๋ชจ์žฅ์— ๋ณด๊ธฐ ์ข‹๊ฒŒ ์ •๋ฆฌํ•ด๋ดค๋”๋‹ˆ์†Œ๋ฌธ์ž l์€ a, ll์€ b, lll์€ c ... ๋Œ€๋ฌธ์ž I๋Š” 1, II๋Š” 2, III๋Š” 3 ... ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ญ‰ ์ ํ˜€ ์žˆ์—ˆ๋‹ค. ํ•ด์„ํ•ด๋ณด๋ฉด ์ฟ ํ‚ค์— 'oldzombie' ๋ผ๋Š” ๋ฌธ์ž๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๊ณ url์— 'mode=1'์ด ์žˆ์œผ๋ฉด ํ†ต๊ณผ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์ฟ ํ‚ค ํŽธ์ง‘ ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•ด ๊ฐ’์— oldzombie ๋ฅผ ์ ์–ด์ฃผ๊ณ join.ph.. 2023. 12. 22.