Análisis Experimental de ataque ARP del ataque, sub, anti-





Vulnerabilidades de inyección SQL en la red usando ataque, script JS, HTML scripting ataques parecen jugar durante más de fuerte. Uno tras otro de los muchos sitios se ven afectadas por este tipo de ataques, no le gustaban las vulnerabilidades de acogida pueden ser reparadas de inmediato, el ataque de la WEB para que nosotros en la prevención o reparación que trae un montón de molestias. Un webmaster es el más doloroso. ¿Qué tan fuerte su contraseña para que el atacante siempre ha estado disponible, pero ¿cómo podemos lograr la seguridad real? En primer lugar, no contraseña y vincular su vida, en segundo lugar, las personas con discapacidad Supermaster sólo usted sabe mejor en tercer lugar, es absolutamente necesario para mejorar su programa de sitio Web. Pero, ¿cómo podemos mejorar, será nuestro objetivo final de este artículo.

De Seguridad, cómo hacer la seguridad? ¿Quieres protección es necesario conocer cómo se atacan mutuamente. Muchos artículos se escriben en la captura de un sitio en particular, de hecho, sino también sus medios de ataque es el siguiente:

1. Scripting simple ataque

Estos ataques deberían problemas es aburrido. Por ejemplo ****: alert (), de modo que, a causa de un filtro no está cerca de lo que el atacante no sólo está disponible, pero puede ser perjudicial para el propósito. Muchos sitios de web de servicios actuales gratis, o programa en su propio sitio no es estrictamente un problema de filtración.

2. Peligrosas secuencias de comandos ataque

Estos ataques han sido más que la secuencia de comandos puede robar el administrador o información de otros usuarios sobre la medida. Por ejemplo todos sabemos, robar las cookies, utilice la secuencia de comandos en el cliente local para escribir.

3. Sql hazañas de inyección

Se puede decir que este ataque se iniciará a partir Dongwangluntan y BBSXP. Filtrar utilizando SQL caracteres especiales no están firmes, y ataques a través de base de datos de consulta. Por ejemplo:

http://127.0.0.1/forum/showuser.asp?id=999 y 1 = 1

http://127.0.0.1/forum/showuser.asp?id=999 y 1 = 2

http://127.0.0.1/forum/showuser.asp?id=999 y 0 (select count (*) desde admin)

http://127.0.0.1/forum/showuser.asp?id=999''; declare @ un conjunto sysname @ a =''''xp_ +

''Cmdshell''exec @ a''dir c :''---& ayuda = 9

Obtener la contraseña de administrador tiene el control significa toda la estación no tiene por qué ser el anfitrión de los privilegios, pero también para este paso para hacer un montón de presagio. Inyección de SQL ataques similares a los modos y medios de filtro de archivo diferente muchas no se tiene que cerrar la consulta de diferentes maneras. Así que para hacer un filtro de carácter completo donde los procedimientos no son el próximo esfuerzo es imposible.

4. Remoto Ataques de Inyección

Una escena de la llamada filtrado sólo presentará una página de formulario simple JS filtrado. Para el usuario promedio, no es necesario prevenir; del ataque premeditado se refiere, parece no ser un efecto de filtrado. A menudo decimos que el ataque POST es un ejemplo. Presentada por los ataques remotos información ilícita con el fin de lograr el propósito.

A través de la descripción anterior de los métodos de ataque, por lo general, comprender la forma atacantes, la siguiente descripción nos centramos en el comienzo, la forma de prevenir eficazmente los ataques de script!

Así que empezamos desde la más sencilla:

Contra los ataques de script

scripts de JS y HTML prevención contra ataque de secuencias de comandos es muy simple: Server.HTMLEncode (Str) bin. Por supuesto que no lloran, ¿cómo podría ser eso? Por permitirme a la estación no me gusta de todos los complementos para filtrar agotado? A fin de facilitar el filtrado, sólo necesitamos a los scripts HTML y scripts de JS para filtrar algunos personajes clave se puede : el cuerpo del procedimiento (1) de la siguiente manera:

'Lo siguiente es una función de filtro

'Los siguientes son ejemplos de aplicación

Nombre de usuario = CHK (sustituir (Request ("nombre de usuario "),"''",""))

Incluya la función escrita utilizando la página pública, por lo que la eficiencia es el mejor.

Procedimiento cuerpo (1)

Además, vale la pena nuestra atención es que muchos usuarios del sitio de registro, o modificar la página de información del usuario es también una falta de secuencia de comandos de filtrado, o sólo en una filtrar, modificar la información registrada en el post-script todavía puede atacar. Los datos presentados por el usuario para detectar y filtrar, el cuerpo del programa (2) de la siguiente manera:

'Lo siguiente es una función de filtro

Si Instr (Request ("nombre de usuario "),"=") 0 o

Instr (Request ("nombre de usuario "),"%") 0 o

Instr (Request ("username"), chr (32)) 0 o

Instr (Request ("nombre de usuario "),"?") 0 o

Instr (Request ("nombre de usuario "),"&") 0 o

Instr (Request ("nombre de usuario "),";") 0 o

Instr (Request ("nombre de usuario "),",") 0 o

Instr (Request ("nombre de usuario "),"''") 0 o

Instr (Request ("nombre de usuario "),"?") 0 o

Instr (Request ("username"), chr (34)) 0 o

Instr (Request ("username"), chr (9)) 0 o

Instr (Request ("username"), "") 0 o

Instr (Request ("nombre de usuario "),"$") 0 o

Instr (Request ("nombre de usuario ")," ") 0 o

Instr (Request ("nombre de usuario ")," ") 0 o

Instr (Request ("nombre de usuario "),"""") 0, entonces

response.write "amigo, para enviar su nombre de usuario contiene caracteres no permitidos, el cambio, gracias a regresar"

Response.End

end if

Procedimiento cuerpo (2)

Con el fin de facilitar la eficacia que busca filtrar aún más el contenido de los procedimientos, por lo que la eficacia de la filtración de los distintos parámetros se incrementado notablemente: por ejemplo, el cuerpo del programa (3)

«Tras el programa principal

Bword tenue (18)

Bword (0 )="?"

Bword (1 )=";"

Bword (2 )=" "

Bword (3 )=" "

Bword (4 )="-"

Bword (5 )="''"

Bword (6 )=""""

Bword (7 )="&"

Bword (8 )="%"

Bword (9 )="$"

Bword (10 )="''"

Bword (11 )=":"

Bword (12 )="|"

Bword (13 )="("

Bword (14 )=")"

Bword (15 )="--"

Bword (16) = "chr (9)"

Bword (17) = "chr (34)"

Bword (18) = "chr (32)"

ERRC = false

«Los siguientes son ejemplos de algunas aplicaciones

para i = 0 To UBound (Bword)

If InStr (FQYs, Bword (i)) 0, entonces

ERRC = true

end if

próximo

si luego ERRC

response.write ""

Response.End

end if

Procedimiento cuerpo (3)

Con la función de filtro por encima de que puede colocar en la aplicación de cualquier necesidad de filtrar función de filtro directamente sobre ella. Esto nos lleva a la restauración de obras tan simplificado.

Además, más de lo que yo quisiera recordar una vez más, un pequeño número de sitios en la expresión de la UBB icono aparecerá cuando el tema de transformación del filtro, ya que se oculta no es fácil de encontrar:

Tales como:

Modificamos las etiquetas de texto,

No sabía que entender, antes de una única oferta y los procedimientos previstos en la comilla izquierda, comillas simples utilizados en el segundo y cerró la comilla derecha, por lo que el proceso de salida como:

ataque ARP no es un virus - por lo que casi todo el software antivirus de todos los desvalidos, pero vale la pena el virus -, ya que ralentiza la luz puede provocar fugas de las comunicaciones, la parálisis de la red, hará que el peso de la información. Con los años, el ataque ARP ha existido siempre, pero no una buena solución. Muchos usuarios de Internet sufren, el personal de gestión de red no puede iniciar, miserable. En este estudio, el análisis de ARP Protocolo y el principio de hacer trampa, este documento presenta la forma de aplicar los ataques ARP, cómo determinar el ataque ARP es el sufrimiento, cómo prevenir y resolver ataque ARP.

1.ARP Acuerdo y la teoría de engaño

(1) Ethernet funciona. Ethernet en el paquete de datos enviado, en primer lugar tendremos que dividir (la mayor agrupación de paquetes), envases (en la capa de red para agregar la dirección IP de origen y la dirección IP de destino en la capa de enlace de datos para agregar la dirección MAC de origen y la dirección del siguiente salto MAC), en un flujo de bits binarios, el proceso que se muestra en la Figura I-1. Paquetes de alcanzar el objetivo después de la aplicación del proceso de enviar el lado opuesto, el flujo de bits en el marco, paquete de soluciones (capa de enlace de datos del primer gol de la MAC se compara con el MAC de la tarjeta misma red local o de difusión MAC, ya que la misma es Quite el marco de cabecera, a continuación, pasar paquetes de capa de red o descartado; capa de red la dirección IP de destino se compara con la misma máquina, lo mismo que continúen estudiando, de lo contrario descartado). Si el remitente y el receptor de la misma red, el siguiente salto de MAC es el objetivo de la MAC, como el remitente y el receptor no en la misma red, el siguiente salto MAC es la puerta de MAC. A partir de este proceso no es difícil de encontrar, el objetivo de Ethernet de transmisión de datos de alta velocidad sólo de la dirección IP que no es suficiente, también necesitan conocer la dirección del siguiente salto de MAC, que requiere la ayuda de otra mirada en el acuerdo, ARP (Address Resolution Protocol).






Figura I-1 datos de embalaje y desembalaje

2) ARP obras. PC antes de enviar el paquete de datos, en comparación con la dirección IP de destino, determinar el origen y destino no son el mismo segmento, como el mismo segmento de red, el objetivo del paquete MAC, si no en el mismo segmento de red, puerta de entrada del paquete MAC. Antes de embalaje, véase el caché ARP de la máquina para ver si no hay un siguiente salto correspondiente IP y MAC entradas de asignación, si la encapsulación directa, si no a continuación, enviar el paquete de consulta ARP. consulta ARP y paquetes de respuesta del formato como se muestra en la Figura I-2, el paquete de consulta "dirección de destino Ethernet" para la dirección 0xFFFFFFFFFFFF emisión ", la dirección de origen Ethernet," dirección de la tarjeta de red basada en MAC de las máquinas "tipo de trama" es 0x0806 ARP dijo que la respuesta o la solicitud, "tipo de hardware" dirección Ethernet del 0x0001, dijo, "tipo de protocolo" para esa dirección IP 0x0800, "OP" para la solicitud o la respuesta ARP, paquetes de petición ARP OP valor de 1, la respuesta de ARP paquete de OP es de 2 ", la dirección Ethernet del remitente", la dirección MAC para el remitente, "dirección IP del remitente" como la dirección IP del remitente, "la dirección Ethernet fin" aquí para 0x000000000000, "el período de investigación" propósito para el Compruebe la dirección MAC de la propiedad intelectual. Enviar este paquete para transmitir a la red, todos los ordenadores en la LAN recibe este paquete, sólo la dirección IP local a los efectos "de la propiedad intelectual" que el ordenador responda a este paquete, y responder a este paquete. Cuando inicio Duan Fang enviar recibido este paquete de respuesta ARP, el acceso a la IP de destino es la dirección MAC correspondiente y, a continuación los paquetes de datos se pueden encapsular.






Figura I-2 ARP consulta y el formato de paquete de respuesta

(3) el engaño de ARP. En el número de secuencia TCP y número de reconocimiento a través de los diferentes campos, la aplicación de tres vías apretón de manos para garantizar la fiabilidad de la transmisión de datos, ARP es un protocolo sin estado, es decir, con o sin enviar solicitud ARP enviados a la máquina, siempre y cuando la respuesta ARP paquete, el equipo no va a agregar validación para recibir y actualizar su caché ARP. Después de unos ARP funciona siempre y cuando la intención de llenar la Figura I-2 en ciertos ámbitos, puede lograr el efecto de un ataque ARP: el conflicto de direcciones IP, ARP engaño, los ataques ARP.

P conflictos de direcciones. Local dirección IP del ordenador detecta si los métodos utilizados en la Internet es el objetivo de la dirección de la máquina IP como la dirección IP, envíe un paquete de consulta ARP, si la respuesta recibida, se indica la dirección IP se ha utilizado en la Internet, la dirección IP de ventanas emergentes para ser utilizado cuadro de diálogo, liberar la dirección IP de la máquina. ARP atacante se aproveche de este principio, con la dirección MAC arbitraria (que no sea un atacante verdadera dirección MAC) lleno de "dirección del remitente Ethernet" de campo, utilice la dirección IP del atacante estaba lleno de "dirección IP del remitente campo" utilizado por la dirección real del atacante MAC de la dirección de llenado propósito "Ethernet" de campo, utilice la dirección IP del atacante estaba llena de "PI" propósito de campo, OP del valor de "2", como se muestra en la Figura I-3 . Cuando el atacante recibidas después de esta respuesta ARP, consideró que la dirección IP de la máquina en la red se ha utilizado, pop-up cuadro de diálogo los conflictos de direcciones IP.






Figura I-3 conflictos de direcciones IP de paquete de respuesta ARP

ARP engaño: como se muestra en la Figura I-4, PC1 es el atacante, ataques destinados a "romper PC2 y la comunicación de puerta de enlace." PC1 genera un paquete de respuesta ARP, "IP del remitente" llenar como la dirección de puerta de enlace IP, "la dirección Ethernet del remitente" llenar una puerta de enlace no la dirección MAC (esta dirección puede ser generado al azar), "Objetivo IP" llenar dirección IP de PC2, "la dirección Ethernet objetivo" llenar la dirección MAC de la PC2. Anfitrión PC2 recibir más tardar después del paquete de respuesta ARP, se utilizará esta puerta de enlace no es la correcta dirección MAC para actualizar su tabla de caché ARP, después de este error PC2 después de encapsulado de direcciones MAC, haciendo que el paquete después de encapsulación no puede correctamente llegar a la puerta de entrada; PC1 similares volver a enviar una incorrecta de paquetes ARP respuesta a la pasarela, "IP del remitente" llenar la dirección IP en el CP2, "la dirección Ethernet del remitente," llene frente a una no-PC2 MAC (este dirección puede ser generado al azar), "Objetivo IP" Introduzca la dirección de puerta de enlace IP. Gateway respuesta ARP recibido esta información, se guardan en las entradas de caché mal mapa PC2. PC1 y PC2 a la puerta de enlace envía periódicamente como un paquete, de manera que el envejecimiento de sus tablas de ARP, lo que les impide alcanzar el propósito de la comunicación.






Figura I-4 ARP diagrama de hacer trampa

ARP ataque. Para los ataques media (ataque Man-in-the-middle), y el engaño como ARP, sólo PC1 envía petición ARP, que cubre en la dirección del remitente "Ethernet" no se genera aleatoriamente, sino sustituir el PC1 máquinas de dirección MAC, abra el PC1 de la función de enrutamiento - modificar (añadir) Registro opción HKEY_LOCAL_ MACH INE SYSTEMCurrentControlSetServicesTcpipParametersIPEnableRouter = 0x1, mientras golpea el software instalado en PC1, PC2 e interceptar todas las comunicaciones entre el paquete de puerta de enlace.

2. ¿Cómo aplicar el ataque ARP

Aquí hay dos ataques ARP para utilizar el software, topología que se muestra en la Figura I-5.






Figura I-5 ataque ARP

El software es utilizado principalmente para el primer ataque, la interrupción del tráfico normal de la red, como se muestra en la Figura I-5, 2 en la máquina virtual para instalar el "magistrado" red de software, destruir la máquina virtual 1 y la comunicación normal entre la máquina real experimento pasos son los siguientes.

Correctamente configurado la dirección IP del equipo. Máquina virtual de una tarjeta de tipo puente, dirección IP es 192.168.1.220, la máscara 255.255.255.0, puerta de enlace 192.168.1.1, DNS es 218.2.135.1. Máquina virtual de 2 tipos de tarjetas puente, dirección IP es 192.168.1.210, la máscara 255.255.255.0, puerta de enlace 192.168.1.1, DNS es 218.2.135.1. La dirección IP de la máquina real es 192.168.1.200, la máscara 255.255.255.0, puerta de enlace 192.168.1.1, DNS es 218.2.135.1.

2 en la máquina virtual para instalar WinPcap. Extracto de "magistrados de la red. Rar archivo", haga doble clic en "WinPcap30.exe" archivo para iniciar la instalación WinPcap.

2 en el software de máquina virtual se instala en el magistrado de la red. Haga doble clic en "juez de Red chasquido versión 2.8. Exe" para instalar el magistrado de la red.

Ejecute el magistrado de la red. En primer lugar magistrados correr, abrir el cuadro de diálogo que se muestra en la Figura I-6, lo que sugiere que los parámetros de control.






parámetros de la figura I-6 de control

Debido a que sólo un bloque de red, active la casilla de verificación de tarjeta superior, haga clic en "OK". Como se muestra en la Figura I-7 para abrir la selección de la gama de control de cuadro de diálogo, especifique el intervalo de seguimiento se muestra en la tarjeta donde todos los disponibles dirección IP de subred, haga clic en el gráfico en el "añadir / editar", añadiendo el ámbito de aplicación, haga clic en "OK".






Figura I-7 controlar el ámbito de elección

El ataque antes de la prueba. 1 en una máquina virtual, abra la ventana de DOS, escriba ping 192.168.1.200-t, ping continua la dirección IP de la máquina real se puede encontrar es a través del. No cierre la ventana.

Empezó a atacar. Magistrado de software puede supervisar la red a la misma subred para todos los servidores en línea magistrado en la interfaz de gestión de red, haga clic en la máquina real, desde el menú contextual, seleccione "Gestionar manualmente", como se muestra en la Figura I-8.






Figura I-8 magistrado interfaz de gestión

Como se muestra en la Figura I-9 en el cuadro de diálogo, seleccione la tercera opción "contra todos los otros hosts, haga clic en ..."," Inicio ", luego la máquina virtual se puede encontrar entre el 1 y el ping real máquina de prueba Inicio Tips "Tiempo de espera agotado", la comunicación cortada. entorno real, usted también puede simplemente seleccionar la prohibición "y conexión con el host clave ..." y luego haga clic en el maestro "clave", agregando la dirección de la pasarela, para que el ordenador atacado y la conexión de puerta de enlace será interrumpido, y el equipo LAN sin interrupción de la comunicación entre ellos.






Figura I-9 de gestión manual del ordenador

Segundo párrafo del software utilizado para robar información valiosa, como se muestra en la Figura I-5 en la máquina virtual para instalar un Caín "y Abel" de software, lo que socava la verdadera máquina de la máquina virtual 1 y la comunicación normal entre las medidas experimentales son los siguientes.

Instalado en la máquina virtual un Caín y Abel. Haga doble clic en "ca_setup.exe" archivo para iniciar la instalación, la instalación cerca del final llega, se le solicitará que instale WinPcap4.0, como se muestra en la Figura I-10, seleccione "Instalar", para iniciar la instalación WinPcap4.0.






Figura I-10 para instalar WinPcap4.0

Ejecutar Cain & Abel. Haga doble clic en el escritorio, "Caín", el icono, abra el Cain & Abel interfaz de administración, haga clic en la interfaz de gestión en el "Start / Stop Sniffer" icono, como se muestra en la Figura I-11 para comenzar la captura de paquetes.








Figura I-11 comenzó Sniffer

Bajo la contraseña para el cubo. Haga clic en el mapa I-11 en la parte superior de la "Sniffer" ficha, a continuación, haga clic en el "Contraseñas" ficha, y empezar a capturar contraseñas e información sensible, incluyendo el correo electrónico, Telnet, FTP, etc. En la máquina virtual 2 de abrir un servicio Telnet, en la máquina real telnet 192.168.1.210, y luego introduzca el usuario y la contraseña, como se muestra en la Figura I-12, barra de navegación de la izquierda para capturar información de un sistema de Telnet.






supervisar la figura I-12, la información sensible

Haga clic en la barra de navegación izquierda de la "Telnet", la lista en la columna derecha, haga clic en la captura de la entrada, el menú contextual, seleccione "Ver", abierto como se muestra en la Figura I-13 de papel de cuaderno, de difícil no ver el nombre de usuario es administrador, la contraseña es cisco. La cifra correspondiente a cada letra de la palabra administrador de mostrar dos veces, porque una vez un telnet eco.






Figura I-13 para capturar el archivo de contraseñas

La contraseña para el medio ambiente interruptor. Sólo muy fácil obtener la contraseña, ya que la máquina virtual de la máquina virtual 1 y 2, y las máquinas reales son conectado a una tarjeta de red del equipo del Real Madrid, el equivalente de todos los conectados en un hub, el entorno real, con mayor frecuencia interruptores, dos interruptores no será el anfitrión o anfitriona uno y la pasarela para transmitir el tráfico entre el host del atacante. Luego necesidad de utilizar el engaño ARP, haga clic en como se muestra en la Figura I-12, en el marco del "ARP" ficha, a continuación, haga clic en "Añadir a la lista de" icono de la barra, como se muestra en la Figura I-14.






Figura I-14 para aumentar la ARP engañando a la lista

Abrir las entradas ARP como se muestra en la Figura I-15, a la izquierda para seleccionar una dirección IP, el derecho de seleccionar una dirección IP, sede de dos direcciones IP serán engañados.






Figura I-15 la selección por engañar a la computadora

Haga clic en "Aceptar" para regresar, y luego haga clic en el cuadro I-11 como se muestra en la barra de herramientas "Start / Stop Sniffer" icono a la derecha de "Start / Stop ARP" icono para comenzar la aplicación de engaño ARP, como se muestra en la Figura I-15 la selección la comunicación entre ordenadores de una transferencia de la máquina virtual, una máquina virtual puede, naturalmente, obtener información sensible entre ellos explícito. Desde este punto de interruptor de la luz los riesgos de seguridad de red existentes.

3. Cómo determinar sufre ataque de ARP

ataque de ARP Spoofing descritas anteriormente no causar congestión de la red, pero se produce una fuga, seguido por la introducción de una solución. Determine si existe es el primer método de ataque ARP es simple, siga estos pasos.

ping continuo no puede acceder a la dirección IP. En el equipo con problemas (máquina virtual 1) de la ventana de DOS, escriba "ping" 192.168.1.200-t, se utiliza para probar la conectividad de red; 192.168.1.200 equipo no es una comunicación normal (Esta es la máquina real), el proyecto actual reemplazado no puede acceder al mismo segmento de la dirección del equipo de destino IP. Si usted está sufriendo de ataques ARP, la pantalla se le pedirá que "Request time out".

En el ordenador afectado (máquina virtual 1) Antes de abrir otra ventana de DOS, escriba "arp-d", arp es un comando de DOS, para resolver la dirección IP de la tarjeta correspondiente dirección de red MAC,-d para borrar la caché de todas las IP de la máquina y la correspondiente dirección MAC. Si usted encuentra que el paso 1 del contenido de la ventana en un sostenido "Respuesta desde ... ...", la ARP que han sido objeto de ataques, ya se ha normalizado; Si sólo había una "Respuesta desde ... ..." del paquete, la parte de atrás se ha convertido en un tiempo de "Solicitud de" paquetes, y luego el equipo es sometido a continuos ataques ARP.

4. ¿Cómo prevenir y resolver el ataque ARP

soluciones ARP ataque variado, pero debido a diversas restricciones, muy poco se puede implementar con el tiempo, incluso una especie de no encuentra la aplicación. Las siguientes soluciones no exhaustiva, pero no importa cómo el equipo de hardware de red real, será capaz de encontrar la solución más adecuada.

Método 1: Después que un juez ha encontrado, ARP ataques, si el ataque persiste, la aplicación de la víctima de equipo del "arp-d", a continuación, la aplicación de "arp-a",-un papel aparece en la computadora todo el caché de ARP . De lo cual podemos encontrar unos cuantos discos, un disco es la puerta de enlace o para tener acceso al host de destino, hay un otro registro, puede haber varios. Más de la ejecución de varios "arp-d", "arp-a", resumir, es esencialmente el trozo más grande de registro de ARP la dirección IP del atacante real.

La ventaja: es simple, apto para casi todo el entorno de red, sin necesidad de software de apoyo y no requiere conocimientos de gestión de la red son muy profesionales, se puede identificar al atacante, entonces el atacante para el aislamiento de la red. Desventaja si el atacante es sólo destrucción, no para fines de control, "arp-a ver" ningún registro fiable de la.

Método 2: En el dispositivo de destino y la dirección de ordenador de la víctima IP y MAC, respectivamente, las direcciones estáticas vinculante. Por ejemplo, la aplicación de la computadora:

"Arp-s 192.168.1.1 00-aa-00-62-c6-09"

En el equipo de conmutación o encaminamiento (donde sólo los equipos de Cisco, por ejemplo) para llevar a cabo:

"Cisco 6509 (config) # arp 192.168.1.2 0009.6be2.3ca3 ARPA"

La necesidad de proteger el dispositivo de destino la dirección IP y dirección MAC vinculante para la entrada ilegal ataque ARP sin agujeros. No todos los usuarios tiene derecho a su propia suerte en la puerta de entrada a utilizar la dirección IP y dirección MAC vinculante, pero los clientes se puede hacer por lo menos en sus propios equipos para hacer frente a la puerta de enlace IP y direcciones MAC vinculante ser el mejor realizado un archivo por lotes cada vez que se inicia el equipo, toda la implementación del archivo, utilizando este método puede evitar efectivamente el ataque de la fuga segundos.

Este método tiene la ventaja de la aplicación a escala relativamente pequeña de la red. Inconveniente es la dificultad de aplicación, más grande, más si el host de Internet, y los cambios de acogida frecuentes, como las universidades de este grupo cada año y estudiantes graduados nuevo informe, todavía unido a la carga de trabajo enorme, difícil de aplicar; demasiado atada elementos del equipo afectará a la velocidad de ejecución y reducir la eficiencia, e incluso un ataque ARP no afectaría a la Internet, pero una gran cantidad de paquetes ARP se envía, o para incorporarse a una gran cantidad de ancho de banda útil; equipo necesario para apoyar la función de enlace estático.

Método 3: Utilizar el Dynamic ARP tecnología Fiscal, junto con las funciones de DHCP, IP y MAC para lograr la vinculación automática. Al igual que el método y el método 2, pero la unión se realiza automáticamente, y puede ser desplegado en el conmutador de capa de acceso, la ilegal cambiar de paquetes ARP se descartará, amigos interesados, para encontrar documentación técnica equipo relacionado.

La ventaja es la mejor manera de resolver un ataque ARP, no necesitan la asistencia de la dirección, la ilegal paquetes ARP no pueden acceder a la red. No hay daño ni afectar al rendimiento de la red. Drawback es exigir que el administrador haya una mejor tecnología, y pidió el apoyo de equipos de redes, dispositivos de Cisco soporta esta característica por lo menos tres más (pocas empresas nacionales en la capa de acceso con los tres dispositivos), muchos fabricantes de equipos todavía no se puede.

Método 4: Interruptor administrado, con un minuto se puede encontrar al atacante. 1 en la solución anterior, se puede encontrar la dirección MAC de la IP de destino no es un verdadero MAC, la dirección MAC de esta nota, si el MAC es "0050.bae3.2305", en los conmutadores administrados (donde sólo los equipos de Cisco ejemplo) para llevar a cabo:

"Cisco-2950 # show | arp incluyen 0050.bae3.2305

Internet 10.168.168.9 239 0050.bae3.2305

ARPA FastEthernet1/17 "

La primera línea es la aplicación de la orden, un simple "arp show" mostrará todos los interruptores de aprender las direcciones MAC, el ataque MAC es muy difícil de encontrar, "| incluyen 0050.bae3.2305" jugar una función de filtro, sólo muestran la línea correspondiente . La segunda línea es la aplicación de los resultados, se encuentra la dirección MAC del puerto Fa1/17. Encuentra el puerto se encuentra el host correspondiente a atacar a la fuente, si el puerto no está conectado a un ordenador, pero otro cambio, los métodos de repetir hasta que encuentre el equipo definitivo.

Ventaja del método es el más factible de aplicar con mayor rapidez, todos los switches gestionables soportan esta característica, muy recomendable. Inconveniente es que hay muchas unidades siguen utilizando el conmutador no administrado o un hub.

Método 5: conmutador no administrado o hub del caso, puede utilizar 10 minutos de tiempo para encontrar al atacante. Ser el ordenador del atacante (máquina virtual 1) para abrir dos ventana de DOS, una ventana de la aplicación de "ping" 192.168.1.200-t, otra ventana de DOS intermitentes aplicación de "arp-d", si un número de Taiwán y de la Red de África tubo de tipo switch o hub, a su vez cortó su poder, cuando se convirtió en la segunda ventana de DOS de un desarrollo sostenible "Respuesta desde ... ...", entonces se puede concluir de este ataque ARP dispositivos de red de origen. Tomó para restaurar la energía al dispositivo, el cable de tirar de una raíz, al encontrar una ventana de DOS segundos de un desarrollo sostenible "Respuesta desde ... ...", entonces se puede concluir que el cable de red está conectado el equipo es ARP ataque de origen. Si este método de búsqueda lenta, se puede utilizar la búsqueda binaria, es decir, la mitad de una línea de extracción, medir lo que en general no más de 10 minutos se puede encontrar el origen de los ataques.

La ventaja de este método es adecuado para casi cualquier entorno de red. Inconveniente es que la aplicación de un poco difícil, es el más sustituido por Gestionado enciéndalo.

Método 6: usuario común de auto-rescate. Como los usuarios comunes de Internet a la reparación de la red no puede ser resuelto a tiempo, escribir un archivo por lotes para ejecutar el equipo puede resolver el problema de ataque de ARP. archivo por lotes de la siguiente manera:: un

Arp-d

Ping 1.1.1.1-n 1-w 100

Ir a una

Para el archivo de texto como a.bat, a continuación, haga doble clic en la aplicación de la computadora del usuario se abrirá una ventana de DOS, el programa de asa, no cierre la ventana de ataques ARP puede resolver el problema. Si el método de eliminación ARP es demasiado lento, puede cambiar el anterior 100 (de 0,1 s) al valor deseado.

Este método tiene la ventaja de usuario común ataque ARP puede ser el problema resuelto, para casi cualquier entorno de red. Drawback es la caché de ARP frecuentes clara, ARP broadcast paquetes a enviar con frecuencia, se presentaría una carga adicional para el ordenador y la red.

Si la imagen no existe, entonces la etiqueta script se activará onerror aplicación. Para las comillas simples se han filtrado de sitios, como aquí, con comillas dobles. **** Para el campo filtrado, y sólo alert () también puede. Así que debemos filtro para filtrar por completo, no daría la oportunidad de dejar una huella.

Evitar la inyección de SQL explota

Se puede decir que aquí parece ser el centro de todo el artículo. Vulnerabilidad de inyección SQL en la diversificación también hace que nuestra defensa en el programa tuvo que pensar un poco más. Inyección de SQL en el rostro de fuerte "ofensiva", lo que en el extremo del filtro?

El riesgo de algunos caracteres de uso común tienen

Base de datos fields''closed Discriminación

- Mark algunas de las anotaciones de base de datos

# Algunas señales de base de datos de anotación

"Puede llevar a error,

Cruz directorio

codificación de caracteres 3221143836nicode características

$ Se puede utilizar para la etiqueta variable

/ Y lo mismo

NULL cuidado "vacío" entrada en el riesgo del tratamiento puede llevar a la base de datos o error del sistema, errores de utilización desbordamiento estructura.

Con la construcción del espacio and''to injeciton sql

= & Si el segundo parámetro puede ser reescrito querystr.

(1) desde lo más general. Inyección SQL hazañas de vista: nombre de usuario y contraseña en los problemas de filtrado, como por ejemplo:

Autor: Nombre de usuario:''o''''='' contraseña de usuario es:''o''''=''

A partir del proceso, podemos llegar a la base de datos siguientes

generate.sh sql = "SELECT de bin conf copia de seguridad de datos de configuración de registro eshow_sitemap.html maint sitemap.html svn lusers DESDE DONDE tmp Usuario o =''''''''='''' y contraseña ='''' o ''''=''''"

De esta manera, por lo que, el servidor SQL devolverá todos los registros de la tabla lusers, mientras que la secuencia de comandos ASP se confunde con un atacante a entrar en un lusers el primer registro en la tabla, lo que permite al atacante el nombre de conexión del usuario página web. Parece que para evitar este tipo de inyección es muy simple:

Utilice el siguiente procedimiento se puede lograr, el cuerpo del programa (4)

strUserName = Replace (Request.Form ("Usuario"), "''''", "''''''''")

strPassword = Replace (Request.Form ("Contraseña"), "''''", "''''''''")

Procedimiento cuerpo (4)

(2) para prevenir ataques de inyección SQL, el primer paso es usar una variedad de medios de control de seguridad del objeto de la petición ASP (solici, Request.QueryString, Request.Form, Request.Cookies y Request.ServerVariables) la entrada del usuario, para garantizar que el comando SQL fiabilidad. medidas de seguridad específicas varían en función de su DBMS.

ataques de inyección SQL puede causar daño al medio ambiente depende de software del sitio y la configuración. Cuando el servidor Web para el operador (dbo) de la identidad para acceder a la base de datos, utilizando un ataque de inyección SQL, lo que podría borrar todos los cuadros, la creación de nuevas formas, y así sucesivamente. Cuando el servidor de superusuario (sa) para acceder a la base de datos de identidad, con ataque de inyección SQL, que podía controlar todo el servidor SQL, y en algunas configuraciones, un atacante puede incluso crear su propia cuenta de usuario para manipular completamente la base de datos se encuentra en el servidor de Windows.

Tales como:

http://127.0.0.1/forum/showuser.asp?id=999''; declare @ un conjunto sysname @ a =''''xp_ +

''Cmdshell''exec @ a''dir c :''--& ayuda = 9

http://127.0.0.1/forum/showuser.asp?id=999''; declare @ un conjunto sysname @ a = xp''''+

''_cm''+'' Dshell''exec @ a''dir c ayudas :''--& = 9

incluso se puede realizar como: net user fqy fqy / añadir este comando. Por supuesto, esto requiere que se ejecute la situación actual debe ser Sa, o atacar sólo una máquina virtual, yo le aconsejo que se detiene allí.

En algunos sitios de la máquina para usar el puerto 80 para evitar los ataques por la máquina directamente para obtener derechos de administrador, se ha convertido en algo esencial. Filtro en el xp_cmdshell convertido en el principal, muchos sitios están utilizando los procedimientos GET y POST o GET para enviar datos, mixtos, y para ello, le damos una forma de prevenir el procedimiento de inyección SQL GET conducta: como el cuerpo del programa (5)

Request.ServerVariables fqys = ("QUERY_STRING")

nothis tenue (18)

nothis (0) = "net user"

nothis (1) = "xp_cmdshell"

nothis (2) = "/ add"

nothis (3) = "% 20master.dbo.xp_cmdshell exec"

nothis (4) = "Los administradores de red localgroup"

nothis (5) = "select"

nothis (6) = "número"

nothis (7) = "asc"

nothis (8) = "char"

nothis (9) = "mediados"

nothis (10 )="''"

nothis (11 )=":"

nothis (12 )=""""

nothis (13) = "insert"

nothis (14) = "borrar"

nothis (15) = "gota"

nothis (16) = "truncar"

nothis (17) = "desde"

nothis (18 )="%"

ERRC = false

para i = 0 To UBound (nothis)

If InStr (FQYs, nothis (i)) 0, entonces

ERRC = true

end if

próximo

si luego ERRC

response.write ""

Response.End

end if

Procedimiento cuerpo (5)

Quiero señalar la declaración es el siguiente: El procedimiento anterior es un método GET en los datos presentados por el filtro, no se aplican a ciegas.

Al igual que otros objetos de la petición ASP (solici, Request.QueryString, Request.Form, Request.Cookies y Request.ServerVariables) método de ataque de los métodos de entrada del usuario, en gran parte concentrada en la variable de secuencia de comandos es el número esperado de entrada variable (ID ), por supuesto, no podemos simplemente mirar las variables número, como por ejemplo:

''Http://127.0.0.1/systembbs/showtopic.asp?tid=99&name=abc e izquierdo (userpasswor

d, 1) =''un

''Http://127.0.0.1/systembbs/addtopic.asp?tid=99&name=abc y userpasswor

d =''o''''=''

Además, ¿cómo una sola inyección para evitar errores como este?

http://127.0.0.1/systembbs/addtopic.asp?tid=99''; forum_forum eliminar, - & page = 33

Programa de prevención: el cuerpo del programa (6)

...... Addtopic.asp? Acción = añadir ......

...... Addtopic.asp? Acción = delect ......

Acción 1 = Trim (Request.QueryString ())

si la izquierda (Acción 1, 7) "action =" then''must limitarse a la acción cadena de consulta =

error (err01)''control de errores

más

action = Request.QueryString ("acción")''para obtener el valor de la cadena de consulta

end if

caso de seleccionar tratar action''to en la cadena de consulta

caso "añadir"

.....

caso "borrar"

......

else''if caso la cadena de consulta no es este valor el de control de errores

error (err02)

seleccione Fin

Procedimiento cuerpo (6)

Un ataque se produce, para que nuestros webmasters tienen un dolor de cabeza de nuevo, aquí te puedo dar una solución a la mejor manera, en general, la longitud de nombre de usuario, número de caracteres no exceda de 15 caracteres, la mayoría de los 14 personajes . Entonces partimos de la longitud de filtro: el cuerpo Si el programa (7)

Nombre = sustituir (,"''","") nombre

Si len (nombre) 16 entonces

Response.Write "Usted hacer qué?"

Response.End

End if

Procedimiento cuerpo (7)

  为什么我们这里以及过滤了单引号,怎么还要再次取一个长度限制呢?不多说了,看看4ngel的文章先<<饶过''限制继续射入>> .别问我怎么转数字格式,我不会,嘿嘿...^_^!

  还继续回到我们的主题," 脚本期望的输入变量是数字变量 (ID)".怎样进行注入防范,天呐,方法太多了,最直接的就是判断是否是数字整型,还有一些比较个性的验证办法,我们一一介绍一下 如:程序体(8)

  一,判断数字是否是整型

  p_lngID = CLng(Request("ID"))

  二 取字长 这一点我相信一般的数据长度不会大于8位所以:

  If len(ID)>8 then

  response.write "bedpost"

  response end

  end if

  三 我认为这是一种比较冒险的办法,就是再进行一次数据库的查询,如果数据库表内没有相同的值与之相同那么返回错误.

  sql = "SELECT NAME FROM Category where ID="&ID

  set temp=conn.Execute(SQL)

  if temp.bof or temp.eof then

  response.Redirect("index.asp")

más

  cat_name=temp("name")

  end if

  set temp=nothing

  ‘上面的是数据ID 的检测,下面则是正式的查询

  sql = "SELECT ID T_ID, NAME FROM Category where ID="&ID&" ORDER BY xh asc"

  rs.open sql,conn,1,1

  四,我自己常用的数据过滤脚本,专利,呵~

  id=replace(id,"''","")

  If len( request("id"))>8 then ‘ 为什么取长度上面程序中已经说明

  response.write ""

  response.end

más

  If request("id")<>"" then ‘取不为空则是为了防止一些程序页中会出现空值情况,如果不在这里做判断,程序会校验出错.

  If IsNumeric(request("id"))=False then '' 风清扬修改 ID数据监控程式

  response.write ""

  response.end

  end if

  end if

  end if

  程序体(8)

  由于我个人的编程习惯,我喜欢将所有的数据检验程序全部保留到整站的公用程序中,比如:conn.asp啦,只需要写一次就可以修复全站的问题.

  说到这里,我提一点关于攻击的问题,就是跑用户密码或者是用户名,一般常用的就是

  ....../show.asp?id=1 and 0<>(select count(*) from admin where id=3 and left(username,1)=''a'')

  这样去一个一个尝试,当然我们不能在这里提什么Perl程序去跑密码,程序是别人写,要自己知道原理.这里我只是想给个比较方便的办法就是取ASC码范围.这个要比单独跑要快很多.不论是是字母,数字,汉字,特殊字符,他们总会有对应的ASC码,用以下办法:

  ....../show.asp?id=1 and 0<>(select count(*) from admin where id=3 and asc(right(left(username

  e,3),1)) between 1 and 10000) 剩下的就随你了,一般的从97到122就可以啦,字母嘛,很快D.呵呵,有人想用mid 函数当然也是不错 asc(mid(username,2,1)) between 1 and 10000 也成.

  如何更加有效的防止SQL注入攻击?我们将在下面的文章中具体提到!

  防范远程注入攻击

  这类攻击在以前应该是比较常见的攻击方式,比如POST攻击,攻击者可以随便的改变要提交的数据值已达到攻击目的.又如:COOKIES 的伪造,这一点更值得引起程序编写者或站长的注意,不要使用COOKIES来做为用户验证的方式,否则你和把钥匙留给贼是同一个道理.

  比如:

  If trim(Request. cookies ("uname"))="fqy" and Request.cookies("upwd")

  ="fqy#e3i5.com" then

  ........more.........

  End if

  我想各位站长或者是喜好写程序的朋友千万别出这类错误,真的是不可饶恕.伪造COOKIES 都多少年了,你还用这样的就不能怪别人跑你的密码.涉及到用户密码或者是用户登陆时,你最好使用session 它才是最安全的.如果要使用COOKIES就在你的COOKIES上多加一个信息,SessionID,它的随机值是64位的,要猜解它,不可能.例:

  if not (rs.BOF or rs.eof) then

  login="true"

  Session("username"&sessionID) = Username

  Session("password"& sessionID) = Password

  ‘Response.cookies("username")= Username

  ‘Response.cookies("Password")= Password

  下面我们来谈谈如何防范远程注入攻击,一般的攻击都是将单表提交文件拖到本地,将Form ACTION="chk.asp" 指向你服务器中处理数据的文件即可.如果你全部的数据过滤都在单表页上,那么恭喜你,你将已经被脚本攻击了.

  怎么才能制止这样的远程攻击?好办,请看代码如下: 程序体(9)

  ‘个人感觉上面的代码过滤不是很好,有一些外部提交竟然还能堂堂正正的进来,于是再写一个.

  ‘这个是过滤效果很好,建议使用.

  if instr(request.servervariables("http_referer"),"http://"&request.servervariables("host") )<1 then

  response.write "处理 URL 时服务器上出错。

  如果您是在用任何手段攻击服务器,那你应该庆幸,你的所有操作已经被服务器记录,我们会第一时间通知公安局与国家安全部门来调查你的IP. "

  response.end

  end if

  程序体(9)

  本以为这样就万事大吉了,在表格页上加一些限制,比如maxlength啦,等等..但天公就是那么不作美,你越怕什么他越来什么.你别忘了,攻击者可以突破sql注入攻击时输入框长度的限制.写一个SOCKET程序改变HTTP_REFERER?我不会。网上发表了这样一篇文章:

  ------------len.reg-----------------

Registro de Windows Editor Version 5.00

  [HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerMenuExt扩展(&E)]

  @="C:Documents and SettingsAdministrator桌面len.htm"

  "contexts"=dword:00000004

  -----------end----------------------

  -----------len.htm------------------

  ----------end-----------------------

  用法:先把len.reg导入注册表(注意文件路径)

  然后把len.htm拷到注册表中指定的地方.

  打开网页,光标放在要改变长度的输入框上点右键,看多了一个叫扩展的选项了吧

  单击搞定! 后记:同样的也就可以对付那些限制输入内容的脚本了.

  怎么办?我们的限制被饶过了,所有的努力都白费了?不,举起你de键盘,说不。让我们继续回到脚本字符的过滤吧,他们所进行的注入无非就是进行脚本攻击。我们把所有的精力全都用到ACTION以后的页面吧,在chk.asp页中,我们将非法的字符全部过滤掉,结果如何?我们只在前面虚晃一枪,叫他们去改注册表吧,当他们改完才会发现,他们所做的都是那么的徒劳。

  ASP木马

  已经讲到这里了,再提醒各位论坛站长一句,小心你们的文件上传:为什么论坛程序被攻破后主机也随之被攻击者占据。原因就在......对!ASP木马!一个绝对可恶的东西。病毒么?非也.把个文件随便放到你论坛的程序中,您老找去吧。不吐血才怪哦。如何才能防止ASP木马被上传到服务器呢?方法很简单,如果你的论坛支持文件上传,请设定好你要上传的文件格式,我不赞成使用可更改的文件格式,直接从程序上锁定,只有图象文件格式,和压缩文件就完全可以,多给自己留点方便也就多给攻击者留点方便。怎么判断格式,我这里收集了一个,也改出了一个,大家可以看一下: 程序体(10)

  ''判断文件类型是否合格

  Private Function CheckFileExt (fileEXT)

  dim Forumupload

  Forumupload="gif,jpg,bmp,jpeg"

  Forumupload=split(Forumupload,",")

  for i=0 to ubound(Forumupload)

  if lcase(fileEXT)=lcase(trim(Forumupload(i))) then

  CheckFileExt=true

  exit Function

más

  CheckFileExt=false

  end if

  next

  End Function

  ‘验证文件内容的合法性

  set MyFile = server.CreateObject ("Scripting.FileSystemObject")

  set MyText = MyFile.OpenTextFile (sFile, 1) '' 读取文本文件

  sTextAll = lcase(MyText.ReadAll): MyText.close

  ''判断用户文件中的危险操作

  sStr ="8|.getfolder|.createfolder|.deletefolder|.createdirectory|

  .deletedirectory"

  sStr = sStr &"|.saveas|wscript.shell|script.encode"

  sNoString = split(sStr,"|")

  for i = 1 to sNoString(0)

  if instr(sTextAll, sNoString(i)) <>0 then

  sFile = Upl.Path &sFileSave: fs.DeleteFile sFile

  Response.write "

  "& sFileSave &"文件中含有与操作目录等有关的命令"&_

  "

  "& mid(sNoString(i),2) &",为了安全原因,不能上传。"&_

  "

  "

  Response.end

  end if

  next

  程序体(10)

  把他们加到你的上传程序里做一次验证,那么你的上传程序安全性将会大大提高.

  什么?你还不放心?拿出杀手锏,请你的虚拟主机服务商来帮忙吧。登陆到服务器,将PROG ID 中的"shell.application"项和"shell.application.1"项改名或删除。再将"WSCRIPT.SHELL"项和"WSCRIPT.SHELL.1"这两项都要改名或删除。呵呵,我可大胆的说,国内可能近半以上的虚拟主机都没改过。只能庆幸你们的用户很合作,否则......我删,我删,我删删删......

  小结

  如何更好的达到防范SQL Injection的攻击?这里我个人给推荐几个办法,第一,免费程序不要真的就免费用,既然你可以共享原码,那么攻击者一样可以分析代码。如果有能力的站长最好还是更改一下数据库表名,字段名,只修改关键的admin, username, password就可以了,比如forum_upasswd 这样的字段名谁能猜到?如果你猜到了,最好赶快去买彩票吧,特等奖不是你还会有谁呢?另外,一般站点的关键就在于管理员的密码,很好的保护好你的管理员密码那是至关重要的,至少10位的数字字母组合。另外加上现在大多数站点程序都会使用MD5来加密用户密码,加上你密码的强壮性,那样你站点的安全性就大大的提高了。即使出现了SQL Injection漏洞,攻击者也不可能马上拿下你的站点。