XSS - hyunwoo-e/Spring GitHub Wiki

XSS

๊ณต๊ฒฉ์ž๊ฐ€ ์•…์˜์ ์ธ ์˜๋„๋กœ script(์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ)๋ฅผ ์ž‘์„ฑํ•ด์„œ ์ •๋ณด๋ฅผ ๋นผ๋‚ด๋Š”๊ฒƒ.

Reflective XSS

๊ณต๊ฒฉ์ž๊ฐ€ ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ํฌํ•จ๋œ URL์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋…ธ์ถœ์‹œ์ผœ ํด๋ฆญํ•˜๋„๋ก ์œ ๋„ํ•˜์—ฌ, ์ฟ ํ‚ค ์ •๋ณด๋ฅผ ํƒˆ์ทจํ•˜๊ฑฐ๋‚˜ ํ”ผ์‹ฑ ์‚ฌ์ดํŠธ, ๋ถˆ๋ฒ• ๊ด‘๊ณ  ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•˜๊ฒŒ ํ•œ๋‹ค.

Stored XSS

์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ DB์— ์ €์žฅํ•˜์—ฌ ํ•ด๋‹น DB ์ •๋ณด๋ฅผ ์ด์šฉํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ†ตํ•ด, ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž๋“ค์ด ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ฒŒ ํ•จ์œผ๋กœ์จ ์‚ฌ์šฉ์ž์˜ ์ฟ ํ‚ค ์ •๋ณด๋ฅผ ํƒˆ์ทจํ•˜๊ฑฐ๋‚˜ ํ”ผ์‹ฑ์‚ฌ์ดํŠธ, ๋ถˆ๋ฒ• ๊ด‘๊ณ  ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•˜๊ฒŒ ํ•œ๋‹ค.

DOM XSS

DOM(Document Object Model)์€ HTML, XML์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ API๋กœ, AJAX ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ˆ˜์‹ ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ์ž˜๋ผ์„œ Document์— Write ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ XSS ๊ณต๊ฒฉ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ค. )

Solution

Lucy-XSS-FILTER (์‚ฌ์šฉ ๋ฐฉ๋ฒ• : http://madeinjeon.tistory.com/45)