Hidden form auto-submit (CSRF-style)
Submit a form to a third-party endpoint without user input.
按 sandbox 策略的行为
| 策略 | 预期结果 |
|---|---|
| 无 sandbox | 通过 |
sandbox="allow-scripts" | 部分 |
sandbox="" (最严) | 阻止 |
Embed 代码
此代码使用专用嵌入页面。粘贴到您的服务后检查渲染或拦截行为。
<iframe src="https://xss-playground.com/embed/form-auto-submit?lang=zh" title="XSS Playground - Hidden form auto-submit (CSRF-style)" width="600" height="420" loading="lazy" referrerpolicy="strict-origin-when-cross-origin"></iframe>
실행
// 로그 없음
해설
- form submit 은 cross-origin 으로 자유롭게 보낼 수 있습니다. 문제는 타깃 사이트가 SameSite=Lax/Strict 쿠키를 쓰는지에 따라 CSRF 가능 여부가 결정됩니다.
sandbox에allow-forms가 없으면 submit 자체가 차단됩니다. 신뢰 호스트만 allowlist 로 받지 않는다면 이 키워드는 빼는 게 안전합니다.- 참고: 외부 도메인으로 보낸 응답을 iframe 안에서 읽을 수는 없습니다 (SOP). 하지만 "요청이 도달했다" 자체가 공격일 때가 많습니다.