XSS ๊ณต๊ฒฉ์€ ์›น ํ•ดํ‚น ๊ณต๊ฒฉ ์ค‘ ํ•˜๋‚˜์ด๋‹ค. Cross Site Scripting์˜ ์•ฝ์ž๋กœ CSS์™€ ๊ฒน์น˜์ง€ ์•Š๊ฒŒ XSS ๊ณต๊ฒฉ์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

XSS๋Š” ๊ฒŒ์‹œํŒ์ด๋‚˜ ์›น ๋ฉ”์ผ ๋“ฑ์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ณ ๋ คํ•˜์ง€ ์•Š์€ ๊ธฐ๋Šฅ์„ ์ž‘๋™์‹œํ‚ฌ ์ˆ˜๋„ ์žˆ๋Š” ์น˜๋ช…์ ์ธ ๊ณต๊ฒฉ์ด๋‹ค.

๊ณต๊ฒฉ ์œ ํ˜•

Reflected XSS

Reflected XSS๋Š” ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํฌํ•จ๋œ ๊ณต๊ฒฉ์šฉ ์•…์„ฑ URL์„ ๋งŒ๋“ค์–ด ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น URL์„ ํด๋ฆญํ–ˆ์„ ๋•Œ ์ •๋ณด๋ฅผ ํญ๋“ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ณต๊ฒฉ์ด ์ด๋ฃจ์–ด์ง„๋‹ค.

URL์„ ๋งŒ๋“ค์–ด์„œ ํด๋ฆญํ•ด์„œ ์‹คํ–‰๋˜๊ฒŒ ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœย ํŠน์ •์ธ์„ ๋Œ€์ƒ์œผ๋กœย ํ•œ๋‹ค URLย ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ทธ๋Œ€๋กœ ์„œ๋ฒ„ ์‘๋‹ต์— ์‚ฝ์ž…๋˜์–ด ์˜ค๋Š” ๊ณณ์—์„œ ๋ฐœ์ƒํ•˜๋ฉฐ(์š”์ฒญ๊ณผ ์‘๋‹ต ํŽ˜์ด์ง€๊ฐ€ ๋™์ผํ•ด์•ผ ํ•จ) , ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์€ย GET ๋ฐฉ์‹์ด์—ฌ์•ผ ํ•œ๋‹ค(POST ๋ฐฉ์‹์€ ๊ณต๊ฒฉ์— ํ™œ์šฉํ•  ์—ฌ์ง€๊ฐ€ ์—†์Œ)

Stored XSS

Stored XSS๋Š”ย ์ทจ์•ฝํ•œ ์›น ์„œ๋ฒ„์— ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹ฌ์–ด๋†“๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘๊ทผํ•˜๋ฉด ํ•ด๋‹นย ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ณต๊ฒฉ์ด๋‹ค.

๋ณดํ†ต ์„œ๋ฒ„์—์„œ ํ•„ํ„ฐ๋ง์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณต๊ฒฉ์„ ์šฐํšŒํ•˜๊ธฐ ์–ด๋ ต์ง€๋งŒ, ํ•œ ๋ฒˆ ์„ฑ๊ณตํ•˜๋ฉด ๊ด€๋ฆฌ์ž ์ž…์žฅ์—์„œ๋Š” ๋ˆˆ์น˜์ฑ„๊ธฐ ํž˜๋“ค๊ณ ย ๊ด‘๋ฒ”์œ„ํ•œ ํ”ผํ•ด๋ฅผ ์ค„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค.
ย 

  • ๋ฐ์ดํ„ฐ๊ฐ€ย ์ €์žฅ๋˜๊ณ ,ย ์ถœ๋ ฅ๋˜๋Š” ๊ณณ (์ €์žฅ๋˜๋Š” ํŽ˜์ด์ง€์™€ ์ถœ๋ ฅ๋˜๋Š” ํŽ˜์ด์ง€๋Š” ๋‹ฌ๋ผ๋„ ์ƒ๊ด€ ์—†์Œ)
    -ย ์ ‘๊ทผํ•˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๊ณต๊ฒฉ์ด ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ด‘์—ญ๊ธฐ ์ˆ˜์ค€์˜ ์œ„ํ—˜๋„๋ฅผ ๊ฐ€์ง

DOM based XSS

Reflected XSS์™€ Stored XSS ๊ณต๊ฒฉ์ด ์„œ๋ฒ„์˜ ์ทจ์•ฝ์ ์„ ์ด์šฉํ•ด์„œ ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํฌํ•จ๋œ ์‘๋‹ต ํŽ˜์ด์ง€๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋ฐ˜๋ฉด DOM XSS๋Š” ์„œ๋ฒ„์™€ ๊ด€๋ จ์—†์ด ํด๋ผ์ด์–ธํŠธ ๋‹จ์—์„œ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ ๋ฐœ์ƒํ•œ๋‹ค.ย 

DOM XSS ๊ณต๊ฒฉ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๊ณต๊ฒฉ์ž๊ฐ€ ์กฐ์ž‘ํ•œ URL์„ ํด๋ฆญํ•˜๋Š” ์ˆœ๊ฐ„, ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋˜๋ฉด์„œ ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๊ณต๊ฒฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

XSS ๋ฐฉ์–ดํ•˜๊ธฐ

XSS ๊ณต๊ฒฉ์— ๋Œ€์‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์€, ์ฃผ๋กœ XSS์˜ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ณด์™„ํ•˜๋ฉด ๋œ๋‹ค. XSS๋Š” ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ ๊ฐ’์—์„œ๋ถ€ํ„ฐ ๋ฐœ์ƒํ•˜์—ฌ, HTML Entity๋กœ ์ž…๋ ฅ ๊ฐ’ ์กฐ์ž‘์„ ๋ฐฉ์ง€ํ•˜๋Š” ๊ฒƒ์ด ๊ทผ๋ณธ์ ์ธ ๋Œ€๋ฐฉ์ฑ…์ด๋‹ค. <>";&์™€ ๊ฐ™์€ HTML ์˜ˆ์•ฝ์–ด์— ๋Œ€ํ•ด์„œ ์ •๊ทœํ‘œํ˜„์‹ ๋“ฑ์œผ๋กœ ๊ฒ€์‚ฌํ•œ ๋’ค์— ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ๋งŒ๋“ฆ์œผ๋กœ์จ ๊ณต๊ฒฉ์ž์˜ ์šฐํšŒ ๋ฐฉ์‹์„ ๋ฐฉ์–ดํ•  ์ˆ˜ ์žˆ๋‹ค.