1. Ataque de secuencias de comandos entre sitios (XSS)
El ataque de secuencias de comandos entre sitios (XSS, Cross-site scripting) es el método más común y básico para atacar sitios web WEB. Los atacantes publican datos que contienen código ofensivo en páginas web. Cuando un espectador ve esta página web, se ejecutará un script específico con la identidad y los permisos del usuario del espectador. A través de XSS, es más fácil modificar los datos del usuario, robar información del usuario y provocar otros tipos de ataques, como ataques CSRF
Soluciones comunes: asegúrese de que la salida de datos a la página HTML se escape en HTML
2. Ataque de falsificación de solicitudes entre sitios (CSRF)
La falsificación de solicitudes entre sitios (CSRF, falsificación de solicitudes entre sitios) es otro ataque común. Los atacantes utilizan varios métodos para falsificar una solicitud e imitar el comportamiento del usuario al enviar un formulario, con el fin de modificar los datos del usuario o realizar tareas específicas. Para suplantar la identidad del usuario, los ataques CSRF a menudo se combinan con ataques XSS, pero también se pueden utilizar otros medios, como inducir a los usuarios a hacer clic en un enlace que contiene ataques.
Las ideas de solución son:
1. Utilice solicitudes POST para aumentar la dificultad de los ataques. Los usuarios pueden iniciar una solicitud de tipo GET haciendo clic en un enlace. Las solicitudes POST son relativamente difíciles y los atacantes a menudo necesitan usar JavaScript para lograrlas
2 Autenticar la solicitud para garantizar que la solicitud sea realmente completada y enviada por el propio usuario, y no falsificada por un tercero. party Específicamente, puede agregar un token a la sesión para garantizar que la persona que ve la información y la envía sea la misma persona
3. use un navegador para ver cualquier sitio web WEB, sin importar cuál sea la tecnología y el marco que utilice un sitio web WEB, todo utiliza el protocolo HTTP. El protocolo HTTP tiene una línea en blanco entre el encabezado de respuesta y el contenido, es decir, dos conjuntos de CRLF (. 0x0D 0A) caracteres. Esta línea en blanco marca el final de los encabezados y el comienzo del contenido. Un atacante "inteligente" puede aprovechar esto. Siempre que el atacante tenga una forma de "inyectar" caracteres arbitrarios en los encabezados, este ataque puede ocurrir
4 Ataque de cookies
Es muy fácil acceder a las cookies del actual. sitio web a través de Java Script. Puede abrir cualquier sitio web e ingresar: javascript:alert(doucment.cookie) en la barra de direcciones del navegador y podrá ver inmediatamente las cookies del sitio actual (si corresponde). Los atacantes pueden utilizar esta función para obtener su información crítica. Por ejemplo, junto con un ataque XSS, el atacante ejecuta un script JavaScript específico en su navegador para obtener sus cookies. Suponiendo que el sitio web sólo se basa en cookies para autenticar a los usuarios, un atacante puede hacerse pasar por usted y hacer algo.
La mayoría de los navegadores ahora admiten la marca HttpOnly en las cookies. Las cookies con esta marca no se pueden obtener a través de Java Script. Si esta marca se puede marcar en las cookies clave, la seguridad de las cookies mejorará enormemente. p>5. Ataque de redireccionamiento
Un método de ataque común es el "phishing". Los atacantes de phishing generalmente envían un enlace legítimo a la víctima. Cuando se hace clic en el enlace, se dirige al usuario a un sitio web ilegal engañoso, logrando así defraudar la confianza del usuario y robar información del usuario.
Para evitar este comportamiento, debemos auditar todas las operaciones de redireccionamiento para evitar el redireccionamiento a un lugar peligroso. Una solución común es incluir en la lista blanca, agregar URL legales para redirigir a la lista blanca y los nombres de dominio que no estén en la lista blanca se rechazarán durante la redirección. La segunda solución es redirigir el token. Agregue el token a la URL legal y verifíquelo durante la redirección.
6. Ataque de archivo cargado
1. El archivo usa el nombre del archivo antes de cargarlo, lo que puede causar: los códigos de caracteres del cliente y del servidor son incompatibles, lo que da como resultado nombres de archivos confusos; los nombres de los archivos contienen scripts, lo que provoca ataques. p>
2. del archivo cargado pueden ser programas ejecutables, scripts js y otros archivos. Estos programas pueden ejecutarse en el cliente de la víctima o incluso en el servidor. Por lo tanto, debemos filtrar los sufijos de nombres de archivos y excluir aquellos que no están permitidos.
3. Ataque al contenido del archivo. IE6 tiene un problema muy grave: no confía en el tipo de contenido enviado por el servidor, pero automáticamente El contenido del archivo se utiliza para identificar el tipo de archivo y el archivo se muestra o ejecuta. Según el tipo identificado, si carga un archivo gif y coloca un script de ataque js al final del archivo, es posible que se ejecute este ataque, su nombre de archivo y contenido. Los tipos parecen ser imágenes GIF legítimas, pero su contenido. contienen scripts. Dichos ataques no pueden excluirse mediante el filtrado de nombres de archivos. En lugar de ello, deben escanear el contenido del archivo para identificarlos.