Seguridad web_Métodos comunes de ataque

Seguridad web_Métodos comunes de ataque

Métodos de ataque comunes
1. Ataque de secuencias de comandos entre sitios XSS
La causa de XSS: demasiada confianza en los datos enviados por el cliente El
atacante malicioso inserta código de secuencia de comandos malicioso en la página web, cuando el usuario navega por la página, el código de secuencia de comandos incrustado en el web se ejecutará para lograr el propósito de atacar maliciosamente a los usuarios.
Clasificación de XSS:
1. El tipo reflexivo
"refleja" la entrada del usuario en el navegador. Por lo general, el atacante necesita inducir al usuario a hacer clic en un enlace malicioso para atacar con éxito.
2. Tipo de almacenamiento
Los datos ingresados ​​por el usuario se "almacenan en el lado del servidor". El escenario común es que el atacante publica un blog que contiene código malicioso. Cuando otras personas naveguen, el código malicioso se ejecutará.
3.
El tipo de DOM Basado no se clasifica según si los datos se almacenan en el servicio, porque la razón de este tipo de ataque es bastante especial, es modificar el nodo DOM de la página para formar XSS, por lo que será listado como una categoría separada

Ejemplo 1
Envíe un mensaje normalmente: http://www.test.com/message.html?send=Hello, World! El receptor recibirá el mensaje y mostrará Hello, Word

Envío de mensajes anormales: (1).http://www.test.com/message.html?send=! Cuando el receptor recibe el mensaje, aparecerá una ventana de advertencia y el atacante está induciendo a otros a hacer clic en este enlace para lanzar un ataque.

(2) http://xxx/?redirect_to=javascript:alert('XSS')
no solo es un carácter especial, sino que incluso una cadena como javascript: puede desencadenar un ataque XSS si aparece en una posición específica.

Ejemplo 2
Hay un elemento de entrada en el fondo de la página que puede modificar la entrada enviada por el usuario
Situación normal: el usuario ingresa 123, la etiqueta en el fondo

Situación anormal:
(1). El usuario ingresa "onclick="alert(1), y cuando el administrador hace clic en la etiqueta en la etiqueta de fondo, aparecerá una ventana de advertencia.

Peligros de XSS:
1. Robar datos de cookies del usuario para obtener información de privacidad del usuario
2. Secuestrar las sesiones del navegador del usuario para realizar operaciones arbitrarias, como transferencias ilegales, publicación forzada de registros, envío de correos electrónicos, etc.
Defensa XSS:
1. Filtrado de entrada y salida , codificación de contenido
2, HttpOnly prohíbe que js opere cookies para robar datos de cookies del usuario, obteniendo así información de privacidad del usuario

Cuáles son los métodos de inyección de XSS:
En el texto incrustado en HTML, el contenido malicioso se inyecta como etiquetas de script.
 En JavaScript en línea, los datos concatenados superan las limitaciones originales (cadenas, variables, nombres de métodos, etc.).
En el atributo de la etiqueta, el contenido malicioso contiene comillas, para romper la limitación del valor del atributo e inyectar otros atributos o etiquetas.
Incluya códigos ejecutables como javascript: en href, src y otros atributos de la etiqueta.
 Inyectar código no controlado en onload, onerror, onclick y otros eventos.
En los atributos y etiquetas de estilo, incluya códigos como background-image:url(“javascript:…”); (las nuevas versiones de los navegadores ya pueden prevenir esto).
Los códigos de expresión CSS como expresión(...) se incluyen en los atributos y etiquetas de estilo (los navegadores de la nueva versión ya pueden evitarlo).
En resumen, si el desarrollador inserta el texto ingresado por el usuario en HTML sin el filtrado adecuado, es fácil causar una vulnerabilidad de inyección. Los atacantes pueden aprovechar las vulnerabilidades para construir instrucciones de código malicioso y luego usar código malicioso para poner en peligro la seguridad de los datos.

2. CSRF de falsificación de solicitud entre sitios
Causas de CSRF: el atacante puede adivinar los parámetros de las operaciones de solicitud importantes. El atacante elude la restricción de la política del mismo origen y envía la solicitud falsificada, y también se incluye la información de identidad relevante. en la cookie para enviar.
El atacante ha robado su identidad y ha enviado una solicitud maliciosa en su nombre, esta solicitud es completamente legal para el servidor, pero ha completado una operación esperada por el atacante.

Ejemplo 1
Transferencia bancaria
1. El usuario inicia sesión en el sitio web de un banco y la URL de solicitud de transferencia bancaria es http://bank.example/withdraw?account=bob&amount=1000000&for=Mallory 2.
En este momento, el usuario visita un sitio web
3. Img se usa en el sitio web malicioso La etiqueta pasa por alto la política del mismo origen e inicia una solicitud al servidor del banco, y la información de identidad en la cookie también se envía junto con la solicitud, completando el ataque.

Defensa CSRF
1. Verificación de referencia Verifique el encabezado de referencia en la solicitud, y si la solicitud no es iniciada por un sitio web legítimo, se rechazará el servicio. Pero la desventaja es que el servidor no siempre puede obtener el Referidor.
2. Token Anti CSRF Agregue Token en la URL de solicitud o en el encabezado de solicitud, el atacante no puede atacar con éxito sin conocer el Token

3.
El principio del clickjacking ClickJacking: usar el engaño visual

Método de ataque:
1. El atacante usa un iframe transparente para cubrir una página web y luego induce al usuario a operar en la página. En este momento, el usuario operará la página iframe transparente sin saberlo, y no es el página mostrada
2. El atacante usa una imagen para superponer la página web para bloquear el significado de la posición original de la página web

El ejemplo 1
carga la página de diseño de antd con un iframe y luego cubre el logotipo de la página con una etiqueta A. Cuando se hace clic en el logotipo, saltará a la página a la que apunta la etiqueta A.

Defensa:
X-FRAME-OPTIONS es un encabezado http propuesto por Microsoft, que se utiliza especialmente para defenderse de los ataques de clickjacking mediante el anidamiento de iframe.
DENY // Rechazar cualquier dominio para cargar
SAMEORIGIN // Permitir que se cargue el mismo dominio de origen
ALLOW-FROM // Puede definir la dirección de la página que permite la carga de marcos

Supongo que te gusta

Origin blog.csdn.net/qq_43148113/article/details/102571379
Recomendado
Clasificación