체인 공격 (피싱 + 풀스크린 + redirect)
풀스크린 가짜 UI → 자격증명 캡처 → 진짜 사이트로 redirect 의심 회피.
sandbox 정책별 동작
| 정책 | 예상 결과 |
|---|---|
| sandbox 미부착 | 동작함 |
sandbox="allow-scripts" | 부분 동작 |
sandbox="" (가장 엄격) | 차단됨 |
임베드 스니펫
이 코드는 임베드 전용 페이지를 사용합니다. 본인 서비스에 그대로 붙여 넣고 렌더링/차단 여부를 확인하세요.
<iframe src="https://xss-playground.com/embed/chained-attack?lang=ko" title="XSS Playground - 체인 공격 (피싱 + 풀스크린 + redirect)" width="600" height="420" loading="lazy" referrerpolicy="strict-origin-when-cross-origin"></iframe>
실행
// 로그 없음
해설
- iframe 임베드 후 즉시 풀스크린 오버레이로 서비스 UI 위장 (사용자는 여전히 신뢰하는 사이트라고 인지).
- 자격증명 입력 → 자기 origin 으로 전송 → attacker 서버 도착.
- 전송 직후 top redirect 로 원래 페이지로 보내서 의심 회피. 사용자 입장에서는 "로그인 한 번 했네" 정도로 끝남.
- 각 단계가 모두 cross-origin iframe 에서 합법적으로 동작하는 API 들로만 구성됨. SOP 가 막아주지 않는 영역만 사용.
- 1단계만 막아도 체인이 끊김 → host allowlist 또는 sandbox 의 적절한 조합으로 1단계(임의 호스트 iframe 임베드)를 막는 게 가장 효과적.