๐ XSS ?
Cross-site Scripting ์ ์ฝ์์ด๋ฉฐ, ์น ์์์ ์ผ์ด๋๋ ๊ธฐ์ด์ ์ธ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ์ ์ผ์ข .
์ ์์ ์ธ ์ฌ์ฉ์๊ฐ ๊ณต๊ฒฉํ๋ ค๋ ์ฌ์ดํธ์ script ๋ฅผ ๋ฃ๋ ๊ธฐ๋ฒ์ ๋งํ๋ค. ( script์ ํํ๋ ๋ค์ํ๋ค )
๋ณดํต ์ฌ์ดํธ์ ์ ์ํ ์ฌ์ฉ์์ ์ฟ ํค๋ ์ธ์ , ํ ํฐ ๋ฑ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ํ์ทจํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
โพ Stored XSS ( Persistent XSS )
์ ์ฅํ XSS ๊ณต๊ฒฉ ( ์ง์ํ XSS ๊ณต๊ฒฉ )
์ผ์์ ์ผ๋ก ๊ณต๊ฒฉํ๋ ๊ฒ์ด ์๋๋ผ ์ง์์ ์ผ๋ก ํผํด๋ฅผ ์ ํ๋ XSS ๊ณต๊ฒฉ์ ๋งํ๋ค.
ํด์ปค๊ฐ ์ฝ์ ํ script ๊ฐ DB์ ์ ์ฅ๋์ด, ์ ์ฑ ์ฝ๋๊ฐ ์ฝ์ ๋ ์น ํ์ด์ง๋ฅผ ๋ณธ ์ฌ์ฉ์๋ค์๊ฒ ์ง์์ ์ผ๋ก ๊ณต๊ฒฉ์ด ๊ฐํด์ง๋ค.
์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๊ฐ์ด DB์ ์ ์ฅ๋๊ณ , ์ ์ฅ๋ ๊ทธ๋๋ก ํด๋ผ์ด์ธํธ ๋จ์ ๋ณด์ฌ์ง ๋ ์ด ๊ณต๊ฒฉ์ด ์ฑ๊ณตํ ๊ฐ๋ฅ์ฑ์ด ์ปค์ง๋ค.
โพ Reflected XSS
๋ฐ์ฌํ XSS ๊ณต๊ฒฉ
์ผ์์ ์ผ๋ก ์ฌ์ฉ์์๊ฒ ํผํด๋ฅผ ์ ํ๋ XSS ๊ณต๊ฒฉ์ ๋งํ๋ค.
๋ณดํต ์ฌ์ฉ์์๊ฒ ์ ๋ ฅ๋ฐ์ ๊ฐ์ ๋ฐํ์ผ๋ก ์๋ฒ์์ ์๋ต์ ๋ฐํํ๋ ๊ณณ์์ ๋ฐ์ํ๋ค.
ํด์ปค๋ script ๊ฐ ํฌํจ๋ URL ์ ์ฌ์ฉ์๊ฐ ๋๋ฅด๋๋ก ์ ๋ํ์ฌ ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ํ์ทจํด๊ฐ๋ค.
๐ XSS ๋์๋ฐฉ์ ?
โ ๋ฐ์ดํฐ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ ๋ชจ๋ ๊ณผ์ ์์ ์ ์ฑ script ๋ฅผ ํํฐ๋งํ ์ ์๋ ์ฅ์น๋ฅผ ์ค์นํ๋ค.
ex. XSS Cheat Sheet ๋ฅผ ๋ง๋ค์ด ๋ชจ์ ํดํนํด๋ณด๋ ๊ฒ.
ex. iframe ๋ด์์ ์ ํํ๋ ๋ฐฉ๋ฒ ์ฌ์ฉํด๋ณผ ๊ฒ.
โ XSS ๊ณต๊ฒฉ์ ๋ง๊ธฐ์ํด ์ค๊ณ๋ ๊ณต๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ๋ค.
ex. OWASP Antisamy / NAVER Lucy XSS Filter / ESAPI
์ฐธ๊ณ
https://noirstar.tistory.com/266
https://developer.mozilla.org/en-US/docs/Web/Security/Types_of_attacks#cross-site_scripting_xss
๋๊ธ