XSS 대응 방안 (HTML Entity)

gyub·2025년 6월 14일
0

모의해킹 스터디

목록 보기
25/31

🔎 HTML Entity

HTML의 예약 문자로 지정되어 있는 특수문자들을 & 로 시작하고 ; 로 끝나는 텍스트로 표현하는 방법
예를 들어, < 는 HTML에서 태그를 여는 문자로 예약되어 있기 때문에, 이것을 HTML Entity로 표현하지 않으면 뒤의 텍스트를 태그로 인식합니다

❗ HTML Entity를 활용한 XSS 대응

입력 값에 포함된 < 와 같은 특수문자를 HTML Entity 방식으로 변환하면

입력값에 <script> alert(1) </script> 와 같은 스크립트를 삽입하더라도 &lt;script&gt; alert(1) &lt;/script&gt; 와 같이 변환되어 스크립트로 인식되지 않습니다

❓ 필터링과 HTML Entity를 활용한 방법이 어떻게 다를까?

필터링< 와 같은 문자를 사용하지 못하게 만드는 것입니다
그러니 게시판에 필터링을 적용하면 >.< 와 같은 이모티콘은 사용할 수 없게 됩니다

하지만 HTML Entity특수문자를 다른 형태로 치환하는 것이니,
그대로 사용할 수 있되 HTML의 예약 문자로 해석되지는 않습니다

0개의 댓글