Analyse expérimentale de l'attaque par ARP de l'attaque, sous anti-





Vulnérabilités d'Injection SQL sur le réseau à l'aide d'attaque, script JS, HTML scripting attaques semblent jouer sur plus forte. L'un après l'autre des nombreux sites sont en proie à de telles attaques, n'aimait pas les vulnérabilités d'accueil peut être réparé immédiatement, l'attaque du Web afin que nous dans la prévention ou de réparation qui apporte son lot de désagréments. Un webmaster est le plus douloureux de cette. Quelle est la force de votre mot de passe pour l'attaquant a toujours été disponible, mais comment pouvons-nous assurer la sécurité réelle? Tout d'abord, ne pas mot de passe et un lien entre votre vie, d'autre part, le PWD Supermaster que tu connais le mieux , le troisième, absolument nécessaire pour améliorer votre site Web du Programme. Mais comment pouvons-nous améliorer, ce sera notre objectif ultime de cet article.

De sécurité, comment faire de la sécurité? Voulez protection est nécessaire de savoir comment attaquer les uns les autres. De nombreux articles ont été rédigés pour capturer un site particulier, en fait, la manière de leurs attaques, mais également ce qui suit:

Simple script 1. attaque

De telles attaques doivent difficultés, c'est ennuyeux. Par exemple ****: alert (), de même, en raison d'un filtre n'est pas proche de ce que l'attaquant non seulement disponibles, mais il ne peut être perturbateur à l'objet. De nombreux sites présent service gratuit, ou le programme sur leur propre site n'est pas strictement un problème de filtration.

2. Dangereuses attaques de script

Ces attaques ont été plus à l'écriture peut voler l'administrateur ou informations d'autres utilisateurs de la mesure. Par exemple, nous le savons tous, voler les cookies, utilisez le script sur le client local écrire plus.

3. Sql exploits d'injection

On peut dire que cette attaque est de partir d'Dongwangluntan et BBSXP. Filtrage avec SQL caractères spéciaux ne sont pas étanches, et les attaques requête bases de données croisées. Par exemple:

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

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

http://127.0.0.1/forum/showuser.asp?id=999 et 0 (SELECT COUNT (*) à partir de admin)

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

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

Obtenez le mot de passe administrateur a des moyens de commande toute la station n'a pas besoin d'être l'hôte des privilèges, mais aussi pour cette étape pour faire beaucoup de préfiguration. SQL Injection attaques similaires aux méthodes et moyens de nombreux filtres de fichiers différents ne sont pas prises pour fermer la requête de différentes manières. Donc, pour faire un filtre caractère complet où les procédures ne sont pas l'effort de venir est impossible.

Attaques par injection 4. Distance

Filtre d'un site appelé la page formulaire de soumission est un simple filtrage JS. Pour l'utilisateur moyen, vous n'avez pas besoin de prévenir, de l'attaque préméditée sont concernés, ne semblent pas être un effet de filtrage. On dit souvent que l'attaque POST est un exemple. Soumis par les attaques à distance des informations illicites, afin d'atteindre l'objectif.

Grâce à la description ci-dessus des méthodes d'attaque, nous avons généralement comprendre la façon dont les attaquants, la description qui suit nous nous concentrons sur le départ, la façon de prévenir efficacement les attaques de script!

Nous commençons donc des plus simples:

Contre les attaques de script

scripts JS et HTML protection contre les attaques de script est très simple: Server.HTMLEncode (Str) bin. Bien sûr, vous ne pleurez pas, comment pourrait-il être? Vous me permettant de la gare, je n'aime pas tous les ajouter au filtre épuisé? Afin de faciliter le filtrage, nous avons seulement besoin de scripts HTML et des scripts JS à filtrer certains personnages clés peuvent être : le corps de la procédure (1) comme suit:

«Ce qui suit est une fonction de filtrage

«Les éléments suivants sont des exemples d'application

Nom d'utilisateur = CHK (remplacer (à la demande (""),"''","")) nom d'utilisateur

Inclure la fonction écrite en utilisant la page publique, donc l'efficacité est le meilleur.

corps de la procédure (1)

En outre, il est digne de notre attention est que les utilisateurs du site de nombreux pour vous inscrire, ou modifier la page d'informations utilisateur est également un manque de script de filtrage, ou dans un seul filtre, de modifier les informations enregistrées dans le post-scriptum peut encore attaquer. Les données soumises par un utilisateur pour détecter et filtrer, le corps du programme (2) comme suit:

«Ce qui suit est une fonction de filtrage

If InStr (request ("nom d'utilisateur "),"=") 0 ou

Instr (request ("nom d'utilisateur "),"%") 0 ou

Instr (demande ("username"), Chr (32)) 0 ou

Instr (request ("nom d'utilisateur "),"?") 0 ou

Instr (request ("nom d'utilisateur "),"&") 0 ou

Instr (request ("nom d'utilisateur "),";") 0 ou

Instr (request ("nom d'utilisateur "),",") 0 ou

Instr (request ("nom d'utilisateur "),"''") 0 ou

Instr (request ("nom d'utilisateur "),"?") 0 ou

Instr (demande ("username"), Chr (34)) 0 ou

Instr (demande ("username"), Chr (9)) 0 ou

Instr (demande ("username"), "") 0 ou

Instr (request ("nom d'utilisateur "),"$") 0 ou

Instr (request ("nom d'utilisateur ")," ") 0 ou

Instr (request ("nom d'utilisateur ")," ") 0 ou

Instr (request ("nom d'utilisateur "),"""") 0 alors

Response.Write "ami, à soumettre votre nom d'utilisateur contient des caractères non, le changement, merci de revenir"

Response.End

End If

corps de la procédure (2)

Afin d'assurer l'efficacité que nous cherchons à filtrer davantage le contenu des procédures, pour l'efficacité de filtration des différents paramètres sera largement augmenté: comme le corps du programme (3)

«À la suite du programme principal

Bword DIM (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)"

CEDR = false

«Les éléments suivants sont des exemples de certaines applications

pour i = 0 à UBound (Bword)

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

CEDR = true

End If

prochain

si ERRC puis

response.write "

Response.End

End If

corps de la procédure (3)

Avec la fonction de filtre ci-dessus vous avez besoin dans n'importe quelle application où la fonction de filtration directement sur elle. Ce qui rend notre travail de restauration grandement simplifiée.

En outre, plus que je tiens à rappeler une fois de plus, un petit nombre de sites au cours de l'expression de l'icône UBB apparaît lorsque la question de transformation de filtre, car il était caché n'est pas facile à trouver:

Tels que:

Nous modifions le texte des étiquettes,

Je ne savais pas que vous comprenez, avant un guillemet simple et procédures prévues dans le guillemet gauche, entre guillemets simples utilisés dans les deuxième et fermé le guillemet droit, de sorte que le processus de sortie:

attaque par ARP n'est pas un virus - et donc presque tous les logiciels anti-virus pour tous les démunis, mais il vaut un virus - car elle ralentit la lumière peuvent causer des communications, la paralysie du réseau, le poids peut provoquer des fuites d'informations. Au fil des ans, les attaques ARP a toujours existé, mais pas une bonne solution. Plusieurs utilisateurs d'Internet souffrent, le personnel de gestion de réseau n'est pas en mesure de commencer, misérable. Dans cette étude, l'analyse de l'ARP Protocole et le principe de la tricherie, cet article présente comment mettre en œuvre les attaques ARP, la façon de déterminer l'attaque ARP est la souffrance, la façon de prévenir et de résoudre les attaques ARP.

1.ARP accord et la théorie de la tromperie

(1) Ethernet fonctionne. Ethernet dans le paquet de données est envoyé, en premier lieu nous devons diviser (le plus grand groupement de paquets), l'emballage (dans la couche réseau pour ajouter l'adresse IP source et l'adresse IP cible dans la couche liaison de données pour ajouter l'adresse MAC source et adresse du saut suivant MAC), dans un flux de bits binaires, le processus de la figure I-1. Les paquets d'atteindre l'objectif après la mise en œuvre du processus d'envoi de l'autre côté, le flux de bits binaires dans le cadre, package de solution (couche liaison de données du premier but de la MAC est comparée avec MAC de la carte même réseau local ou de diffusion Mac, selon le même Retirez le cadre en-tête, puis passer sur les paquets de la couche réseau, ou mis au rebut; réseau de destination de couche adresse IP est comparé avec la même machine, la même volonté de continuer à aborder, autrement rejetés). Si l'expéditeur et le récepteur sur le même réseau, le tronçon suivant de l'AMC est l'objectif de la MAC, comme l'expéditeur et le destinataire n'est pas sur le même réseau, le saut suivant MAC est l'adresse MAC de la passerelle. De ce processus n'est pas difficile de trouver Ethernet vitesse de transmission des données ne connaissez pas l'adresse IP de la cible n'est pas suffisante, ont également besoin de connaître l'adresse du saut suivant MAC, ce qui nécessite l'aide d'un autre regard sur l'accord, ARP (Address Resolution Protocol).






Figure I-1 de données emballage et le déballage

2) ARP. Ordinateurs avant d'envoyer le paquet de données, par rapport aux cibles adresse IP, de déterminer la source et la cible ne sont pas le même segment, tels que le même segment de réseau, l'objectif paquet MAC, sinon sur le même segment de réseau, la passerelle paquet MAC. Avant l'emballage, voir cache ARP de la machine pour voir si il n'ya pas de saut suivant correspondant IP et MAC entrées de cartographie, si l'encapsulation directe, si pas alors envoyer le paquet de requête ARP. requête ARP et paquets de réponse du format comme le montre la Figure I-2, le paquet de requête "adresse de destination Ethernet" pour l'adresse de diffusion 0xffffffffffff, "adresse source Ethernet", adresse de la carte réseau de base de MAC des machines, "Frame Type" est 0x0806 ladite réponse ARP ou la demande, l'adresse Ethernet de type de matériel »pour le 0x0001, a déclaré:" le type de protocole "pour cette adresse IP 0x0800," OP "pour la requête ARP ou la réponse, requête ARP paquets OP valeur de 1, la réponse ARP paquet de OP est de 2 ", l'adresse Ethernet de l'expéditeur, l'adresse MAC de l'expéditeur, la propriété intellectuelle" expéditeur "que l'adresse IP de l'expéditeur, l'adresse Ethernet fin" ici pour 0x000000000000, "la période d'enquête objectif" pour le vérifier l'adresse MAC de la propriété intellectuelle. Envoyer ce forfait à diffuser sur le réseau, tous les ordinateurs dans le LAN reçoivent ce paquet, seule l'adresse IP locale dans le but "de la propriété intellectuelle" de l'ordinateur répond à ce paquet, et de répondre à ce paquet. Lorsque vous commencez à envoyer recevoir ce paquet de réponse ARP chu plus tard, l'accès correspondant à l'adresse IP de destination MAC, puis les paquets de données peuvent être encapsulées.






Figure I-2 de requête ARP et le format de paquet de réponse

(3) la tromperie ARP. Dans le numéro de séquence TCP et le numéro de la reconnaissance à travers les différents domaines, la mise en œuvre du three-way handshake pour assurer la fiabilité de la transmission de données, ARP est un protocole sans état, ce qui signifie que, avec ou sans envoyer de requête ARP envoyé à la machine tant que la réponse ARP forfait, l'ordinateur ne pourra pas ajouter de validation pour recevoir et mettre à jour son cache ARP. Après environ ARP fonctionne tant que l'intention de remplir Figure I-2 dans certains domaines, peuvent obtenir l'effet d'une attaque ARP: conflit d'adresse IP, la tromperie ARP, les attaques ARP.

les conflits d'adresse P. Adresse IP locale de l'ordinateur détecte si les méthodes utilisées dans l'Internet est l'objet de l'adresse de la machine IP que l'adresse IP, envoyer un paquet de requête ARP, si la réponse reçue, il indique l'adresse IP a été utilisée dans l'Internet, pop-up adresse IP à utiliser boîte de dialogue, libérer l'adresse IP de la machine. ARP attaquant profiter de ce principe, avec l'adresse MAC arbitraires (qui n'est pas un attaquant véritable adresse MAC) rempli de "adresse Ethernet expéditeur» sur le terrain, utiliser l'adresse IP de l'attaquant était rempli de "IP expéditeur» sur le terrain utilisé par le Real de l'attaquant adresse MAC de l'adresse de remplissage "fin Ethernet" sur le terrain, utiliser l'adresse IP de l'attaquant était rempli de "propriété intellectuelle fin" sur le terrain, OP de la valeur de "2", comme le montre la Figure I-3 . Lorsque l'attaquant reçues après cette réponse ARP, il a considéré que l'adresse IP de la machine sur le réseau a été utilisé, pop-up de dialogue conflits zone Adresse IP.






Figure I-3 conflits d'adresses IP du paquet de réponse ARP

triche ARP: comme le montre la Figure I-4, PC1 est l'attaquant, le but de l'attaquant est «PC2 communication interruption avec la passerelle. PC1 génère un paquet de réponse ARP, "IP de l'expéditeur", remplissez l'adresse IP de la passerelle, l'adresse Ethernet expéditeur "remplir une adresse non-passerelle MAC (cette adresse peut être généré de façon aléatoire)," l'objectif IP ", remplissez l'adresse IP de PC2, l'adresse Ethernet fin ", remplissez l'adresse MAC de la PC2. Hôte PC2 recevoir plus tard après le paquet de réponse ARP, il utilisera cette passerelle n'est pas la bonne adresse MAC de mettre à jour leur table du cache ARP, après cette erreur PC2 après encapsulé adresse MAC, ce qui provoque le paquet après encapsulation ne peut pas correctement atteindre la passerelle; PC1 similaires ré-envoyer un paquet de réponse incorrecte ARP à la passerelle, "IP de l'expéditeur", remplissez l'adresse IP en PC2, "adresse Ethernet de l'expéditeur», remplissez répondre à un non-PC2 MAC (ce adresse peut être généré de façon aléatoire), "l'objectif IP" Saisissez l'adresse IP de la passerelle. Gateway ARP réponse reçu de tels renseignements, sont enregistrés dans les entrées du cache mal la carte PC2. PC1 et PC2 à la passerelle envoie périodiquement un tel paquet, de sorte que le vieillissement de leurs tables ARP, donc les empêcher d'atteindre l'objectif de communication.






Figure I-4 Schéma de tricher ARP

attaque par ARP. Pour que les attaques du milieu (attaque man-in-the-middle), et la tricherie comme ARP, que PC1 envoie la requête ARP, qui remplissent dans l'adresse «expéditeur Ethernet" n'est pas généré de façon aléatoire, mais remplacer le PC1 machines adresse MAC, ouvrez le PC1 de la fonction de routage - modifier (ajouter) Registre option HKEY_LOCAL_ MACH INE SYSTEMCurrentControlSetServicesTcpipParametersIPEnableRouter = 0x1, tout en exploitant le logiciel installé sur le PC1, PC2 et d'intercepter toutes les communications entre l'ensemble de la passerelle.

2. Comment mettre en œuvre l'attaque ARP

Voici deux attaques ARP d'utiliser le logiciel, la topologie de la figure I-5.






attaque Figure I-5 ARP

Le logiciel est principalement utilisé pour la première attaque, les perturbations du trafic normal du réseau, comme le montre la Figure I-5, 2 dans la machine virtuelle pour installer magistrat "réseau" de logiciels, de détruire la machine virtuelle 1 et la communication normale entre la machine réelle expérience étapes sont les suivantes.

Correctement configuré l'adresse IP de l'ordinateur. Virtual Machine 1 type de carte passerelle, adresse IP est 192.168.1.220, masque 255.255.255.0, la passerelle 192.168.1.1, DNS est 218.2.135.1. Virtual Machine 2 types de carte de pont, l'adresse IP est 192.168.1.210, masque 255.255.255.0, la passerelle 192.168.1.1, DNS est 218.2.135.1. adresse IP de la machine réelle est 192.168.1.200, masque 255.255.255.0, la passerelle 192.168.1.1, DNS est 218.2.135.1.

2 dans la machine virtuelle pour installer WinPcap. Extrait magistrats réseau ". Rar" fichier, double-cliquez sur "WinPcap30.exe" pour démarrer l'installation WinPcap.

2 dans le logiciel de machine virtuelle est installée sur le magistrat réseau. Double-cliquez sur "version réseau de fissures magistrat 2.8. Exe" pour installer le magistrat réseau.

Exécutez le magistrat réseau. magistrats première manche, ouvrir la boîte de dialogue de la figure I-6, ce qui suggère que les paramètres de surveillance.






paramètres Figure I-6 de contrôle

Comme un seul bloc en réseau, activez la case à cocher carte du dessus, cliquez sur "OK". Comme le montre la Figure I-7 pour ouvrir la sélection de la plage de contrôle boîte de dialogue, spécifiez la plage de surveillance est répertorié dans la carte où tous les sous-réseau adresse IP disponibles, cliquez sur le graphique dans le "Ajouter / modifier", en ajoutant le champ d'application, cliquez sur bouton "OK".






Figure I-7 de contrôle de la portée des choix

Attaque avant le test. 1 sur une machine virtuelle, ouvrez la fenêtre DOS, tapez ping 192.168.1.200-t, continu de ping de l'adresse IP de la machine réelle peuvent être trouvées à travers l'. Ne fermez pas la fenêtre.

A commencé à attaquer. logiciel magistrat peut surveiller le réseau à la même sous-réseau à tous les hôtes en ligne magistrat dans l'interface de gestion de réseau, cliquez droit sur la machine réelle, dans le menu contextuel, sélectionnez «Gérer manuellement", comme le montre la Figure I-8.






Figure I-8 interface de gestion magistrat

Comme le montre la Figure I-9 dans la boîte de dialogue, sélectionnez la troisième option »contre tous les autres hôtes sur ..."," Démarrer ", puis la machine virtuelle peut être trouvée entre 1 et véritable machine de test ping Début Conseils "Request timed out", la communication coupée. environnement réel, vous pouvez également vous suffit de sélectionner l'interdiction "et la connexion la clé d'hôte ..." et puis cliquez sur le capitaine "clé", en ajoutant l'adresse de la passerelle, afin que l'ordinateur attaqué et la passerelle de connexion sera interrompue, et l'ordinateur du réseau local communication ininterrompue entre les deux.






Figure I-9 du Manuel de gestion informatique

Deuxième alinéa du logiciel utilisé pour voler des informations précieuses, comme le montre la Figure I-5 dans la machine virtuelle pour installer un Caïn »& Abel" logiciel, atteinte à la machine réelle de la machine virtuelle 1 et la communication normale entre les mesures expérimentales sont les suivantes.

Installé sur la machine virtuelle un Caïn et Abel. Double-cliquez sur "ca_setup.exe" pour démarrer l'installation, l'installation à proximité de la fin arrive, sera invité à installer WinPcap4.0, comme le montre la Figure I-10, sélectionnez "Installer" pour démarrer la WinPcap4.0 installation.






Figure I-10 pour installer WinPcap4.0

Cain & Abel Exécuter. Double-cliquez sur le bureau, "Caïn" icône, ouvrez le Cain & Abel interface de gestion, cliquez sur l'interface de gestion de la "Start / Stop Sniffer" icône, comme le montre la Figure I-11 pour commencer la capture de paquets.








Figure I-11 a commencé Sniffer

Sous le mot de passe pour le moyeu. Cliquez sur la carte I-11 dans le haut de la "Sniffer" onglet, puis cliquez en dessous de la «passe» de tabulation et commencez à saisir des mots de passe et les informations sensibles, y compris e-mail, Telnet, FTP, etc. Dans la machine virtuelle ouvrir un service Telnet 2, dans la vraie machine telnet 192.168.1.210, puis entrez le nom d'utilisateur et mot de passe pour vous connecter, comme le montre la Figure I-12 sur la barre de navigation de gauche pour capturer une information rapide Telnet.






suivre la Figure I-12 des informations sensibles

Cliquez sur la barre de navigation à gauche de la "Telnet", la liste dans la colonne de droite, cliquez sur la capture de l'entrée, le menu contextuel, sélectionnez «Affichage», ouverte comme le montre la Figure I-13 papier de cahiers, de pas difficile de voir le nom d'utilisateur est administrateur, mot de passe est cisco. Le chiffre pour chaque lettre de l'administrateur du mot SHOW en deux fois, parce que une fois par telnet écho.






Figure I-13 pour saisir le mot de passe du fichier

Le mot de passe pour l'environnement interrupteur. Juste très facile d'obtenir le mot de passe parce que la machine virtuelle de la machine virtuelle 1 et 2, et les vraies machines sont connectées à la carte réseau de l'ordinateur réel, l'équivalent de tous connectés à un hub, l'environnement réel, le plus souvent interrupteurs, deux interrupteurs ne sera pas d'hôte ou un hôte et la passerelle pour passer du trafic entre l'hôte de l'attaquant. Cela a nécessité l'utilisation de la tromperie ARP, cliquez comme indiqué dans la figure I-12 dans le cadre du "ARP" onglet, puis cliquez sur "Ajouter à la liste" icône barre d'outils, comme le montre la Figure I-14.






Figure I-14 pour augmenter ARP tricherie à la liste

Ouvrir les entrées ARP comme le montre la Figure I-15, sur la gauche pour sélectionner une adresse IP, le droit de choisir une adresse IP, l'hôte de deux adresses IP seront trompés.






Figure I-15 de sélection en trompant l'ordinateur

Cliquez sur "OK" pour revenir, puis cliquez sur le graphique I-11 comme indiqué dans la barre d'outils "Start / Stop Sniffer" icône à la droite de "Start / Stop ARP" icône pour commencer la mise en œuvre de la tromperie ARP, comme le montre la Figure I-15 de sélection la communication entre les ordinateurs d'un transfert de la machine virtuelle, la machine virtuelle, on peut naturellement obtenir des informations sensibles entre eux explicite. Vu sous cet interrupteur de la lumière des risques de sécurité des réseaux existent.

3. Comment faire pour déterminer souffre ARP attaque

attaque par usurpation ARP décrites ci-dessus n'entraîne pas de congestion du réseau, mais une fuite se produit, suivie par l'introduction d'une solution. Déterminer si il ya la méthode première attaque ARP est simple, suivez ces étapes.

ping en continu ne peuvent pas accéder à l'adresse IP. Dans l'ordinateur problème (machine virtuelle 1) de la fenêtre DOS, tapez "ping" 192.168.1.200-t, est utilisée pour tester la connectivité réseau; 192.168.1.200 n'est pas normal de communication informatique (Il s'agit de la vraie machine), le projet lui-même remplacé ne peut pas accéder au même segment de l'adresse de l'ordinateur cible IP. Si vous souffrez d'attaques ARP, l'écran sera invité à "Heure de la demande de«.

Dans l'ordinateur affecté (machine virtuelle 1) précédente pour ouvrir une autre fenêtre DOS, tapez "arp-d", ARP est une commande DOS, pour résoudre l'adresse IP de la carte réseau adresse MAC correspondante,-d pour effacer le cache de toutes les IP de la machine et l'adresse MAC correspondante. Si vous trouvez que l'étape 1 de la fenêtre de contenu dans un soutenue "Réponse de ... ...», l'ARP qui ont été soumis à des attaques, a été normalisé; Si seulement il y avait une "réponse de ... ...« paquet, le dos est devenu un temps «Demande de« paquets, puis l'ordinateur est soumis à des attaques continuelles ARP.

4. Comment prévenir et résoudre les ARP attaque

solutions attaque par ARP variées, mais en raison de diverses contraintes, très peu de choses peuvent être mises en œuvre à terme, même une sorte de ne trouvez pas la mise en œuvre. Les solutions suivantes n'ont pas exhaustive, mais quelle que soit l'équipement de réseau réel du matériel, sera en mesure de trouver la solution la plus appropriée.

Méthode 1: Après qu'un juge ait conclu, les attaques ARP, si l'attaque persiste, la mise en œuvre par ordinateur de la victime de la "arp-d", puis la mise en œuvre du "arp-a», «un rôle est affiché sur l'ordinateur tous les cache ARP . D'où l'on peut trouver un peu d'enregistrements, un enregistrement est la porte d'entrée ou d'accéder à l'hôte cible, il ya un autre dossier, il peut y avoir plusieurs. Plus de la mise en œuvre de plusieurs "arp-d", "arp-a", résumé, il est essentiellement le plus gros morceau du dossier ARP l'adresse IP de l'attaquant réel.

L'avantage: C'est simple, adapté à presque tous de l'environnement réseau, sans logiciel de soutien et ne nécessite pas de connaissances de gestion de réseau sont très professionnels, vous pouvez identifier l'agresseur, puis l'attaquant pour l'isolement du réseau. Inconvénient si l'attaquant n'est que destruction, et non à des fins de contrôle, "arp-a voir" aucun enregistrement fiable de l'.

Méthode 2: Dans le dispositif cible et la machine de la victime l'adresse IP et MAC, respectivement l'adresse statique contraignant. Par exemple, la mise en œuvre de l'ordinateur:

"Arp-s 192.168.1.1 00-AA-00-62-C6-09"

Dans le routage ou de l'équipement de commutation (où seuls les équipements Cisco par exemple) à effectuer:

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

La nécessité de protéger l'appareil cible l'adresse IP et adresse MAC obligatoire pour l'entrée illégale d'attaque ARP sans trous. Non, chaque utilisateur a le droit à leurs propres moyens à la passerelle à utiliser l'adresse IP et adresse MAC contraignant, mais les clients peuvent se faire au moins dans leurs propres ordinateurs à l'adresse IP de la passerelle et l'adresse MAC contraignant être les meilleurs en un fichier de commandes à chaque fois que l'ordinateur démarre, tous les la mise en œuvre du fichier, en utilisant cette méthode peut effectivement éviter l'attaque de la deuxième fuite.

Cette méthode a l'avantage d'une application relativement à petite échelle du réseau. Inconvénient est la difficulté de mise en œuvre, plus grande, plus si l'hôte Internet, changements d'accueil et fréquentes, telles que les universités de ce groupe chaque année et les étudiants diplômés de nouveau à signaler, toujours lié à la charge de travail énorme, difficile à mettre en œuvre, trop liée des articles d'équipement aura une incidence sur la vitesse d'exécution et de réduire l'efficacité, même attaque par ARP n'affecterait pas l'Internet, mais un grand nombre de paquets ARP envoyés, ou à prendre beaucoup de bande passante utile; équipements nécessaires pour soutenir statique fonction de liaison.

Méthode 3: Utilisation de la dynamique ARP procureur de la technologie, combinée avec les fonctions de serveur DHCP, IP et MAC pour réaliser la liaison automatique. Comparable à la méthode et la méthode 2, mais contraignant se fait automatiquement, et peut être déployé dans le commutateur couche d'accès, le commutateur de paquets ARP illégaux seront mis au rebut, des amis intéressés, à trouver de la documentation technique des équipements connexes.

L'avantage est la meilleure façon de résoudre les attaques ARP, n'ont pas besoin de l'assistance de la direction, les paquets ARP illégale ne peut pas accéder au réseau. Il n'y a ni mal ni affecter les performances réseau. Inconvénient est d'exiger que l'administrateur a une meilleure technologie; demandé le soutien de l'équipement réseau, les périphériques Cisco en charge cette fonctionnalité au moins trois autres (quelques entreprises nationales dans la couche d'accès en utilisant les trois dispositifs), de nombreux fabricants de matériel n'est pas encore supporté.

Méthode 4: commutateur géré, avec une minute, vous pouvez trouver l'agresseur. 1 dans la solution précédente, vous pouvez trouver l'adresse MAC de la cible de propriété intellectuelle n'est pas un vrai MAC, l'adresse MAC de la présente note, si le MAC est "0050.bae3.2305", dans les commutateurs gérés (où seuls les équipements Cisco par exemple) à effectuer:

"Cisco-2950 # show | ARP comprennent 0050.bae3.2305

Internet 10.168.168.9 239 0050.bae3.2305

ARPA FastEthernet1/17 "

La première ligne est la mise en œuvre de l'ordre, un arp montrer "simple" affichera tous les commutateurs apprendre des adresses MAC, MAC attaque est très difficile à trouver », | comprennent 0050.bae3.2305" jouer une fonction de filtrage, afficher uniquement la ligne correspondante . La deuxième ligne est la mise en œuvre des résultats, vous trouverez l'adresse MAC du port Fa1/17. Trouver le port de l'hôte se trouve correspondant à s'attaquer à la source, si le port n'est pas connecté à un ordinateur, mais un autre commutateur, les méthodes et répéter jusqu'à ce que vous trouvez l'ordinateur ultime.

Avantage de la méthode est l'option la plus viable de mettre en œuvre plus rapidement, tous les commutateurs gérés en charge cette fonctionnalité, fortement recommandé. Inconvénient est que il ya beaucoup d'unités toujours utiliser le commutateur non géré ou à un concentrateur.

Méthode 5: commutateur non géré ou à un concentrateur de l'affaire, vous pouvez utiliser 10 minutes de temps pour trouver l'agresseur. Être l'ordinateur de l'attaquant (machine virtuelle 1) d'ouvrir deux fenêtres DOS, une fenêtre de l'application du "ping" 192.168.1.200-t, une autre fenêtre DOS intermittente mise en œuvre de "arp-d", si un certain nombre de Taiwan et l'Afrique du réseau commutateur de type tube ou à un concentrateur, à leur tour leur couper la puissance, quand il est devenu la fenêtre DOS deuxième d'une durable "Réponse de ... ...», alors on peut conclure de cette attaque par ARP dispositifs réseau source. Pris pour rétablir le courant à l'appareil, le câble de traction à une racine, en trouvant une fenêtre DOS deuxième d'une durable "Réponse de ... ...», alors il peut être conclu que le câble réseau est connecté équipement est ARP source attaque. Si cette méthode de recherche lent, vous pouvez utiliser la recherche binaire, soit la moitié d'une ligne de traction, mesure de ce qui est généralement pas plus de 10 minutes, vous pouvez trouver la source d'attaque.

Avantage de la méthode est appropriée pour pratiquement n'importe quel environnement réseau. Inconvénient est que la mise en œuvre de la place un peu difficile, le meilleur type de commutateur ou le réseau qu'il a remplacé.

Méthode 6: usage commun d'auto-sauvetage. En tant que de simples internautes à la réparation du réseau ne peuvent pas être résolus en temps, écrire un fichier batch pour exécuter l'ordinateur peut résoudre le problème de l'attaque ARP. de fichiers par lots comme suit:: un

Arp-d

Ping 1.1.1.1-n 1-W 100

Aller à une

Pour le fichier texte que a.bat, puis double-cliquez sur la mise en œuvre de l'ordinateur de l'utilisateur va ouvrir une fenêtre DOS, le programme boucle, ne fermez pas la fenêtre attaques ARP peut résoudre le problème. Si la méthode d'élimination ARP est trop lent, vous pouvez changer le dessus de 100 (pour 0,1 s) à la valeur désirée.

Cette méthode a l'avantage de l'utilisateur attaque commune ARP le problème peut être résolu, car presque tous les environnements réseau. Inconvénient est la fréquence du cache ARP clair, ARP diffuser des paquets à envoyer fréquente, elle pourrait entraîner une charge supplémentaire sur l'ordinateur et le réseau.

Si l'image n'existe pas, alors la balise script pour activer la mise en œuvre onerror. Pour les guillemets simples ont été filtrage des sites, comme ici, avec des guillemets doubles. **** Pour le champ filtré, et seulement alert () peut aussi. Nous devons donc filtre pour filtrer complètement, ne donnent pas l'attaquant la possibilité de laisser une trace.

Prévenir SQL Injection exploits

Il peut être dit ici semble être l'objet de l'article en entier. Vulnérabilité d'Injection SQL sur la diversification permet aussi notre défense sur le programme a dû penser un peu plus. Injection SQL dans le visage d'une forte «offensives», ce que nous à la fin du filtre?

Le risque de certains caractères couramment utilisés ont

Base de données sur la discrimination fields''closed

- Mark quelques-unes des bases de données d'annotation

# Base de données d'annotation Certains signes

»Peut conduire à l'erreur,

répertoire de la Croix-

caractère 3221143836nicode fonctions de codage

$ Peut être utilisée pour l'étiquette variable

/ Et la même chose

NULL attention "vide" dans le risque de traitement peut conduire à la base de données ou erreur système, dépassement de structure de l'utilisation d'erreur.

Avec and''to espace construire injeciton SQL

= & Si le second paramètre peut être réécrite querystr.

(1) du plus général. Exploits d'injection SQL de vue: nom d'utilisateur et mot de passe sur les problèmes de filtrage, tels que:

Auteur: Nom d'utilisateur:''ou''''='' mot de passe est:''ou''''=''

A partir de ce processus, nous pouvons arriver à la base de données suivantes

Sql = "SELECT conf bin sauvegarde des données de configuration generate.sh eshow_sitemap.html journal maint sitemap.html LUSERS svn tmp From Where Nom d'utilisateur ou =''''''''='''' et mot de passe ou ='''' ''''=''''"

De cette façon, alors, le serveur SQL renverra tous les enregistrements de table LUSERS, tandis que le script ASP sera pris pour un attaquant d'entrer dans un LUSERS le premier enregistrement de la table, ce qui permet à l'attaquant de l'identifiant de l'utilisateur site Web. Semble empêcher ce type d'injection est très simple:

Utilisez la procédure suivante peut être atteint, le corps du programme (4)

strUserName = Replace (Request.Form ("Nom d'utilisateur"), "''''", "''''''''")

strPassword = Replace (Request.Form ("Password"), "''''", "''''''''")

corps de la procédure (4)

(2) pour prévenir des attaques par injection SQL, la première étape consiste à utiliser une variété de moyens de contrôle de sécurité de l'objet de demande ASP (Reques, Request.QueryString, Request.Form, Request.Cookies et Request.ServerVariables) l'entrée d'utilisateur, afin d'assurer que la commande SQL fiabilité. mesures de sécurité spécifiques varient en fonction de votre SGBD.

des attaques par injection SQL peuvent causer des dommages à l'environnement dépend de logiciels du site et de configuration. Lorsque le serveur Web à l'opérateur (dbo) de l'identité pour accéder à la base de données, en utilisant attaque par injection SQL, qui pourrait supprimer toutes les formes, créer de nouvelles formes, et ainsi de suite. Lorsque le serveur de super-utilisateur (SA) pour accéder à la base de données d'identité, en utilisant attaque par injection SQL, qui pourrait contrôler l'ensemble du serveur SQL; dans certaines configurations, un attaquant peut même créer votre propre compte d'utilisateur de bien manipuler la base de données se trouve dans le serveur Windows.

Tels que:

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

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

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

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

Même possible de réaliser, comme: net user fqy fqy / ajouter cette commande. Bien sûr, cela vous oblige à exécuter l'état actuel doit être SA, ou vous attaquer seulement un hôte virtuel, je vous conseille de s'arrêter là.

Pour certains sites utilisés pour la machine pour empêcher une attaque directe par 80 pour obtenir l'autorité de gestion du port machine, il est devenu essentiel. Filtrer sur xp_cmdshell à l'enseignement primaire, de nombreux sites utilisent les procédures GET et POST ou GET pour envoyer des données, mixtes, et pour cela, nous donnons un moyen d'empêcher la procédure d'injection SQL EEG conduite: comme le corps du programme (5)

Request.ServerVariables fqys = ("QUERY_STRING")

nothis DIM (18)

nothis (0) = "net user"

nothis (1) = "xp_cmdshell"

nothis (2) = "/ add"

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

nothis (4) = "administrateurs net localgroup"

nothis (5) = "select"

nothis (6) = "count"

nothis (7) = "asc"

nothis (8) = "char"

nothis (9) = "mi"

nothis (10 )="''"

nothis (11 )=":"

nothis (12 )=""""

nothis (13) = "insert"

nothis (14) = "supprimer"

nothis (15) = "drop"

nothis (16) = «tronquer»

nothis (17) = "de"

nothis (18 )="%"

CEDR = false

pour i = 0 à UBound (nothis)

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

CEDR = true

End If

prochain

si ERRC puis

response.write "

Response.End

End If

corps de la procédure (5)

Je tiens à souligner la déclaration est la suivante: La procédure ci-dessus est une méthode GET sur les données présentées par le filtre, ne pas appliquer aveuglément.

Comme d'autres objets de la demande ASP (Reques, Request.QueryString, Request.Form, Request.Cookies et Request.ServerVariables) méthode d'attaque des méthodes de saisie de l'utilisateur, en grande partie concentrée dans la variable d'entrée script est le nombre moyen de variables (ID ), bien sûr, nous ne pouvons pas regarder le nombre de variables, telles que:

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

d, 1) =''une

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

d =''ou''''=''

En outre, comment une seule injection pour éviter les erreurs comme ça?

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

Programme de prévention: le corps du programme (6)

...... Addtopic.asp? Action = ajouter ......

...... Addtopic.asp? Action = DELECT ......

Action 1 = trim (Request.QueryString ())

si gauche (action1, 7) "action =" then''must être limitée à l'action QueryString =

la gestion des erreurs (err01) error''

d'autre

action = Request.QueryString ("action")''pour obtenir la valeur de chaîne de requête

End If

Sélectionnez face action''to cas sur la chaîne de requête

cas "ajouter"

.....

cas "supprimer"

......

else''if cas, la chaîne de requête n'est pas cette valeur pour la gestion des erreurs

Erreur (err02)

sélectionnez Fin

corps de la procédure (6)

Une telle attaque se produit, afin que nos webmasters ont un mal de tête à nouveau, ici, je peux vous donner une solution à la meilleure façon, en général, la longueur du nom d'utilisateur, le nombre de caractères ne doit pas excéder 15 caractères, la plupart des 14 caractères . Ensuite, nous procédons de la longueur de filtre: Si le corps du programme (7)

Nom = remplacer (,"''","") nom

Si len (nom) 16, puis

Response.write "Tu fais ce que?"

Response.End

Fin de si

corps de la procédure (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")

d'autre

  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

d'autre

  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-----------------

Version Windows Éditeur du Registre 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

d'autre

  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漏洞,攻击者也不可能马上拿下你的站点。