이벤트 핸들러 속성 삽입
img onerror, details ontoggle 같은 on* 속성이 살아남아 실행되는지 확인.
HTML payload 테스트
이 시나리오는 iframe sandbox 가 아니라 사용자 입력이 HTML/DOM 으로 렌더링되는 지점을 검증합니다.
- onerror, onclick, onload 등 on* 속성이 제거되는지 확인
- 태그 allowlist 는 있어도 속성 allowlist 가 느슨하지 않은지 확인
- CSP 가 inline event handler 를 차단하는지 확인
페이로드
복사할 payload
이미지 로드 실패 이벤트를 이용하는 대표적인 HTML attribute XSS.
미리보기
미리보기는 학습용으로 의도적으로 unsafe 렌더링을 수행합니다. 실제 서비스에서는 이 payload 가 텍스트로 이스케이프되거나 제거되어야 합니다.
로그
// 로그 없음
해설
<script>태그를 제거해도onerror,onclick,onload같은 이벤트 속성이 남으면 스크립트 실행이 가능합니다.- 태그 allowlist 와 별도로 속성 allowlist 를 관리해야 하며,
on*속성은 기본적으로 제거하는 편이 안전합니다. - CSP 에서 inline event handler 를 막는지도 함께 확인하세요.