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 ์์ฝ์ด์ ๋ํด์ ์ ๊ทํํ์ ๋ฑ์ผ๋ก ๊ฒ์ฌํ ๋ค์ ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋ ์ ์๋ ํ๊ฒฝ์ ๋ง๋ฆ์ผ๋ก์จ ๊ณต๊ฒฉ์์ ์ฐํ ๋ฐฉ์์ ๋ฐฉ์ดํ ์ ์๋ค.