This page has been robot translated, sorry for typos if any. Original content here.

Les attaques de réseau et autre chose

Introduction aux attaques réseau

Brève description des attaques de réseau

Fragmentation des données

Transmettre des paquets IP fragmentés

Attaque d'inondation Ping

PingOfDeath ou SSPing

Bombe UDP

SYN inondation

Protocoles encapsulés IP non standard

Application du protocole TFTP

Attaque de Schtroumpf

Attaque terrestre

Introduisez un serveur parasite dans Internet en créant une «tempête» directionnelle de réponses DNS erronées à l'hôte attaqué

Déploiement d'un faux serveur sur Internet en interceptant une requête DNS ou en créant une «tempête» directionnelle de fausses réponses DNS sur le serveur DNS attaqué

Déployer un serveur DNS parasite sur Internet en interceptant une requête DNS

Inondation d'attaque DNS

Attaque d'usurpation DNS

Attaque d'usurpation d'adresse IP

Forfaits imposants

Sniffing - écoute du canal (possible uniquement dans le segment de réseau local)

Interception de paquets sur le routeur

Imposer une route parasite à un hôte en utilisant ICMP

Winnuke

Faux serveur ARP

Numéro de prédiction de séquence TCP (usurpation d'adresse IP)

Tempête locale

Détournement d'Ip

Détection d'attaque et protection

Méthodes d'analyse

Utiliser le protocole ARP

Numérisation réseau via DNS

Bombe UDP

Balayage de port TCP

Analyser les ports UDP

Balayage furtif

Analyse passive

Système d'invitation et danger des informations qu'il contient

Quelques conseils pour la recherche en réseau

Quelques autres moyens d'obtenir des informations.

Trous et erreurs d'administration dans Windows NT

Spam

Comment protéger le système de messagerie contre les spammeurs

Comment fonctionnent les spammeurs

Trous IIS, WWW, FTP

Introduction aux attaques réseau

Intérêt accru pour les réseaux TCP / IP en raison de la croissance rapide d'Internet. Cependant, cela soulève des questions sur la manière de protéger vos ressources d'informations contre les attaques provenant d'un réseau externe. Si vous êtes connecté à Internet, votre système peut être attaqué. Les protocoles de la famille IP constituent la base de la construction d’intranets et de l’Internet mondial. Bien que le développement de TCP / IP ait été financé par le ministère de la Défense des États-Unis, TCP / IP n'est pas complètement sécurisé et permet divers types d'attaques décrits dans ce chapitre. Pour mener de telles attaques, un attaquant potentiel doit avoir le contrôle d'au moins un des systèmes connectés à Internet. L’une des méthodes d’analyse des menaces à la sécurité des systèmes informatiques consiste à attribuer à une classe distincte de menaces inhérentes uniquement aux réseaux informatiques. Cette classe de menaces s'appelle la classe des attaques à distance. Cette approche de la classification semble être valable en raison de la présence de caractéristiques fondamentales dans la construction de systèmes d'exploitation de réseau. La principale caractéristique de tout système d’exploitation réseau est que ses composants sont répartis dans l’espace et que la connexion entre eux est réalisée physiquement à l’aide de connexions réseau spéciales (câble coaxial, paire torsadée, fibre optique, etc.) et par programme utilisant le mécanisme de messagerie. Dans ce cas, tous les messages de contrôle et les données envoyés par un composant d'un système d'exploitation réseau à un autre composant sont transmis via des connexions réseau sous la forme de paquets d'échange. Cette fonctionnalité est la principale raison de l'émergence d'une nouvelle classe de menaces: les attaques à distance. Avec ce type d'attaque, l'attaquant interagit avec le destinataire des informations, l'expéditeur et / ou les systèmes intermédiaires, éventuellement en modifiant et / ou en filtrant le contenu des paquets TCP / IP. Ces types d'attaques semblent souvent techniquement difficiles à implémenter, mais pour un bon programmeur, il n'est pas difficile d'implémenter les outils appropriés. La capacité à générer des paquets IP arbitraires est un élément clé pour les attaques actives. Les attaques à distance peuvent être classées par type d'impact: actif ou passif. Les attaques actives peuvent être divisées en deux parties. Dans le premier cas, l'attaquant prend certaines mesures pour intercepter et modifier le flux de réseau ou pour tenter de "prétendre" être un autre système. Dans le second cas, TCP / IP est utilisé pour rendre le système victime inopérant. Dans les attaques passives, les attaquants ne se révèlent en aucun cas et n'interagissent pas directement avec d'autres systèmes. En fait, tout se résume à surveiller les données disponibles ou les sessions de communication. Bien que les attaques passives puissent violer les politiques de sécurité du réseau. L'idée de détecter une attaque est simple: toute attaque correspond à un certain trafic réseau. Par conséquent, l'analyse du trafic vous permet d'identifier l'attaque et de détecter les «traces» de l'attaquant, c'est-à-dire. déterminer les adresses IP à partir desquelles l'impact de l'information a été effectué. Ainsi, la détection d'attaques est réalisée en contrôlant le flux d'informations, ce qui est réalisé en analysant le trafic réseau.

Brève description des attaques de réseau

Il convient de rappeler que des méthodes grossières telles que le ping dans des paquets volumineux ou l'inondation SYN peuvent inonder n'importe quelle machine Internet ou sous-réseau, quelle que soit la configuration.

Fragmentation des données

Lorsqu'un paquet de données IP est transmis sur un réseau, ce paquet peut être divisé en plusieurs fragments. Plus tard, une fois parvenu au destinataire, le paquet est restauré à partir de ces fragments. Un attaquant peut provoquer l'envoi d'un grand nombre de fragments, ce qui provoque un débordement de la mémoire tampon logicielle côté réception et, dans certains cas, une panne du système.

Transmission de paquets IP fragmentés avec un volume total de plus de 64 Ko

Le nombre d'implémentations d'attaques utilisant la possibilité de fragmentation de paquets IP est assez important. Plusieurs paquets IP fragmentés sont transmis à l'ordinateur victime, qui, une fois assemblés, forment un paquet de plus de 64 Ko (la taille maximale du paquet IP est de 64 Ko moins la longueur de l'en-tête). Cette attaque était efficace contre les ordinateurs exécutant Windows. À la réception d'un tel package, Windows NT, qui ne dispose pas d'un correctif icmp-fix spécial, se bloque ou se bloque. D'autres variantes de ces attaques utilisent des décalages incorrects dans les fragments IP, ce qui entraîne une allocation de mémoire incorrecte, un débordement de mémoire tampon et, finalement, des dysfonctionnements du système.

Contre-réaction: pour identifier de telles attaques, il est nécessaire de réaliser et d’analyser l’assemblage de paquets "à la volée", ce qui alourdira considérablement les besoins en matériel.

Attaque d'inondation Ping

Il est apparu parce que le programme "ping", conçu pour évaluer la qualité de la ligne, possède la clé pour des tests "agressifs". Dans ce mode, les demandes sont envoyées le plus rapidement possible et le programme vous permet d’évaluer le fonctionnement du réseau à la charge maximale. Cette attaque nécessite que l'attaquant accède à des canaux rapides sur Internet. Rappelez-vous comment fonctionne le ping. Le programme envoie un paquet ICMP de type ECHO REQUEST, en définissant l'heure et son identifiant. Le noyau de la machine réceptrice répond à une requête similaire avec le paquet ICMP ECHO REPLY. Après l'avoir reçu, ping donne la vitesse du paquet. En mode de fonctionnement standard, les paquets sont envoyés à certains intervalles, presque sans charger le réseau. Mais dans le mode «agressif», le flux ICMP d'écho de requête / réponse-paquet peut surcharger une petite ligne, la privant de sa capacité à transmettre des informations utiles. Naturellement, le cas du ping est un cas particulier d’une situation plus générale liée à la surcharge de canaux. Par exemple, un attaquant peut envoyer plusieurs paquets UDP sur le 19ème port de la machine victime et si, conformément aux règles généralement acceptées, il dispose d'un générateur de caractères sur le 19ème port UDP qui répond aux paquets contenant des lignes de 80 octets. Notez qu'un attaquant peut également simuler l'adresse de retour de tels paquets, ce qui la rend plus difficile à détecter. Seul le travail coordonné de spécialistes sur les routeurs intermédiaires aidera à le suivre, ce qui est pratiquement irréaliste. L'une des options d'attaque consiste à envoyer des paquets de requête d'écho ICMP avec l'adresse source pointant vers la victime vers les adresses de diffusion de grands réseaux. En conséquence, chacune des machines répondra à cette demande fictive et la machine émettrice recevra un plus grand nombre de réponses. L'envoi d'un grand nombre de demandes d'écho de diffusion de la part de la "victime" aux adresses de diffusion de grands réseaux peut être rempli brusquement avec le canal "victime". Signes d’inondation - augmentation de la charge sur le réseau (ou le canal) et augmentation du nombre de paquets spécifiques (tels que ICMP). À titre de protection, nous pouvons recommander la configuration de routeurs, dans lesquels ils filtreront le même trafic ICMP, dépassant une valeur prédéterminée (paquets / unité de temps). Pour vous assurer que vos machines ne peuvent pas servir de source d’inondation de ping, limitez l’accès à ping.

PingOfDeath ou SSPing

Son essence est la suivante: un paquet ICMP de grande taille (64 Ko) très fragmenté est envoyé à la machine de la victime. La réponse des systèmes Windows à la réception d'un tel package est un blocage inconditionnel, notamment une souris et un clavier. Le programme d’attaque est largement disponible en ligne en tant que source C et en tant que fichier de lancement pour certaines versions d’Unix. Il est curieux de constater que, contrairement à WinNuke, non seulement les machines Windows peuvent être victimes d’une telle attaque, mais aussi MacOS et certaines versions d’Unix. Les avantages de cette méthode d’attaque sont que le pare-feu ignore généralement les paquets ICMP. Si le pare-feu est configuré pour filtrer les adresses des expéditeurs, vous pouvez également tromper ce pare-feu à l’aide de simples techniques d’espionnage. L'inconvénient de PingOfDeath est que, pour une attaque unique, vous devez envoyer plus de 64 Ko sur le réseau, ce qui le rend généralement peu utile pour les détournements à grande échelle.

Bombe UDP

Le paquet UDP transmis contient le mauvais format de champs de service. Certaines versions plus anciennes du logiciel réseau entraînent une panne du système lors de la réception d'un tel package.

SYN inondation

L'inondation de paquets SYN est le moyen le plus connu de «découper» un canal d'information. Rappelez le fonctionnement de TCP / IP pour les connexions entrantes. Le système répond au paquet C-SYN - S-SYN / C-ACK entrant par un paquet, transfère la session à l'état SYN_RECEIVED et la place dans une file d'attente. Si dans un délai spécifié du client ne vient pas S-ACK, la connexion est supprimée de la file d'attente, sinon la connexion est transférée à l'état ESTABLISHED. Prenons le cas où la file d'attente de connexion d'entrée est déjà pleine et que le système reçoit un paquet SYN qui vous invite à établir une connexion. Par RFC, il sera silencieusement ignoré. L'inondation des paquets SYN est fonction du débordement de la file d'attente du serveur, après quoi le serveur cesse de répondre aux demandes des utilisateurs. L’attaque la plus célèbre de ce type est l’attaque de Panix, un fournisseur new-yorkais. Panix n'a pas fonctionné pendant 2 semaines. Dans divers systèmes, le travail avec la file d'attente est mis en œuvre de différentes manières. Ainsi, dans les systèmes BSD, chaque port a sa propre file d’attente de 16 éléments. Sur le système SunOS, au contraire, cette séparation n’existe pas et le système dispose simplement d’une file d’attente commune de grande taille. Par conséquent, pour bloquer, par exemple, le port WWW sur BSD, 16 paquets SYN suffisent et, pour Solaris 2.5, leur nombre sera beaucoup plus important. Après un certain temps (selon l'implémentation), le système supprime les demandes de la file d'attente. Cependant, rien n'empêche l'attaquant d'envoyer un nouveau lot de demandes. Ainsi, même avec une connexion à 2400 bps, un attaquant peut envoyer 20 à 30 paquets toutes les minutes et demie au serveur FreeBSD, le maintenant ainsi inopérant (naturellement, cette erreur a été corrigée dans les versions récentes de FreeBSD). Comme d'habitude, un attaquant peut utiliser des adresses IP à retour aléatoire lors de la formation de paquets, ce qui rend difficile la détection et le filtrage de son trafic. La détection est facile - un grand nombre de connexions à l'état SYN_RECEIVED, ignorant les tentatives de connexion à ce port. En guise de protection, vous pouvez recommander des correctifs qui implémentent un «amincissement» automatique de la file d'attente, basé par exemple sur l'algorithme Early Random Drop. Pour savoir si votre système est protégé contre le SYN-flooding, contactez le fournisseur de votre système. Une autre option de sécurité consiste à configurer le pare-feu de manière à ce que toutes les connexions TCP / IP entrantes soient définies par lui, et seulement après qu'il les transfère à l'intérieur du réseau vers l'ordinateur spécifié. Cela vous permettra de limiter l’inondation de synchronisation et de ne pas la manquer à l’intérieur du réseau. Cette attaque est une attaque par déni de service qui empêche de fournir des services. L'attaque est généralement dirigée contre un service spécifique, tel que telnet ou ftp. Il consiste à transmettre des paquets pour établir une connexion au port correspondant au service attaqué. Lorsqu'une demande est reçue, le système alloue des ressources pour une nouvelle connexion, après quoi il essaie de répondre à la demande (envoyer un "SYN-ACK") à une adresse indisponible. Par défaut, les versions 3.5 à 4.0 de NT essaieront de répéter la confirmation 5 fois - après 3, 6, 12, 24 et 48 secondes. Après cela, le système peut attendre 96 secondes supplémentaires avant d’attendre une réponse. Il libère ensuite les ressources allouées pour la future connexion. Le temps total d'utilisation de la ressource est de 189 secondes.

Protocoles encapsulés IP non standard

Le paquet IP contient un champ qui définit le protocole du paquet encapsulé (TCP, UDP, ICMP). Les attaquants peuvent utiliser une valeur non standard de ce champ pour transférer des données qui ne seront pas enregistrées par des moyens standard de contrôle des flux d'informations.

Application du protocole TFTP

Ce protocole ne contient pas de mécanismes d'authentification, il est donc attrayant pour les intrus.

Attaque de Schtroumpf

L'attaque de smurf consiste à envoyer des demandes au réseau de diffusion ICMP pour le compte de l'ordinateur victime. En conséquence, les ordinateurs ayant reçu de tels paquets de diffusion répondent à l'ordinateur victime, ce qui entraîne une réduction significative de la bande passante du canal de communication et, dans certains cas, une isolation complète du réseau attaqué. L’attaque du smurf est extrêmement efficace et généralisée. Contre-réaction: pour reconnaître cette attaque, il est nécessaire d'analyser la charge du canal et de déterminer les raisons de la diminution du débit.

Attaque terrestre

Une attaque terrestre exploite les vulnérabilités de la mise en œuvre de la pile TCP / IP dans certains systèmes d'exploitation. Il consiste à transmettre un paquet TCP au port ouvert de l'ordinateur victime avec l'indicateur SYN défini, et l'adresse source et le port du paquet sont respectivement égaux à l'adresse et au port de l'ordinateur attaqué. Cela entraîne le fait que l'ordinateur victime tente d'établir une connexion avec lui-même, ce qui augmente considérablement la charge du processeur et peut provoquer un «blocage» ou un redémarrage. Cette attaque est très efficace sur certains modèles de routeurs Cisco Systems. L'application réussie de l'attaque au routeur peut désactiver l'ensemble du réseau de l'organisation. Counteraction: vous pouvez vous protéger de cette attaque, par exemple, en installant un filtre de paquets entre le réseau interne et Internet, en définissant une règle de filtrage qui indique de supprimer les paquets provenant d'Internet, mais avec les adresses IP d'origine des ordinateurs du réseau interne.

Introduisez un serveur parasite dans Internet en créant une «tempête» directionnelle de réponses DNS erronées à l'hôte attaqué

Une autre variante de la mise en œuvre d'une attaque à distance visant le service DNS est basée sur le deuxième type d'attaque à distance «faux objet du soleil». Dans ce cas, l'attaquant envoie en permanence à l'hôte attaqué une réponse DNS fausse préalablement préparée pour le compte du serveur DNS réel sans recevoir de requête DNS. En d'autres termes, un attaquant crée une «tempête» directionnelle de réponses DNS parasites sur Internet. Cela est possible car le protocole UDP est généralement utilisé pour transmettre une requête DNS dans laquelle il n’existe aucun moyen d’identifier les paquets. Les seuls critères indiqués par le système d'exploitation de l'hôte pour la réponse reçue du serveur DNS sont, d'une part, la correspondance de l'adresse IP de l'expéditeur avec l'adresse IP du serveur DNS, et d'autre part, que le même nom est spécifié dans la réponse DNS, comme dans la requête DNS, troisièmement, la réponse DNS doit être dirigée vers le même port UDP à partir duquel la requête DNS a été envoyée (dans ce cas, il s'agit du premier problème pour l'attaquant) et, quatrièmement, dans le serveur DNS. - l'identifiant de champ de réponse de la demande dans l'en-tête du DNS (ID) doit contenir la même valeur que dans la requête DNS transmise (c'est le deuxième problème). Dans ce cas, l'attaquant ne pouvant pas intercepter la requête DNS, le principal problème pour lui est le numéro de port UDP à partir duquel la requête a été envoyée. Mais le numéro de port de l'expéditeur accepte un ensemble limité de valeurs (1023?). Par conséquent, il suffit qu'un attaquant agisse simplement en itérant, en envoyant de fausses réponses à la liste de ports appropriée. À première vue, le deuxième problème peut être un identifiant de deux octets de la requête DNS, mais dans ce cas, il est égal à un ou sa valeur est proche de zéro (une requête - l'ID est incrémenté de 1). Par conséquent, pour mener cette attaque à distance, un attaquant doit sélectionner l'hôte (A) concerné, la route sur laquelle vous souhaitez changer, afin qu'il passe par un faux serveur, l'hôte de l'attaquant. Ceci est réalisé par une transmission constante (dirigée par "l'orage") à l'attaquant de fausses réponses DNS à l'hôte attaqué pour le compte du serveur DNS réel aux ports UDP correspondants. Ces fausses réponses DNS indiquent l'adresse IP de l'hôte A en tant qu'adresse IP de l'attaquant. Ensuite, l'attaque est développée comme suit. Dès que la cible de l'attaque (hôte attaqué) adresse l'hôte A par son nom , une requête DNS est envoyée au réseau à partir de cet hôte, ce que l'attaquant ne recevra jamais, mais cette opération n'est pas obligatoire car l'hôte recevra immédiatement un message faux constamment transmis. La réponse DNS, qui sera perçue par le système d'exploitation de l'hôte attaqué comme la réponse réelle du serveur DNS. L’attaque a eu lieu et l’hôte attaqué transfèrera tous les paquets destinés à A à l’adresse IP de l’hôte de l’attaquant, qui les transmettra à A , affectant ainsi les informations interceptées selon le schéma du «faux objet de l’avion distribué». Considérez le schéma fonctionnel de l'attaque à distance proposée sur le service DNS: • transmission continue de fausses réponses DNS à l'hôte attaqué vers divers ports UDP et, éventuellement, avec différents ID, pour le compte (de l'adresse IP) du serveur DNS réel, en indiquant le nom de l'hôte d'intérêt et sa fausse adresse IP, qui seront être l'adresse IP du faux serveur - l'hôte de l'attaquant; • dans le cas de la réception d'un paquet d'un hôte, changer l'en-tête IP du paquet avec son adresse IP en adresse IP de l'attaquant et envoyer le paquet au serveur (en d'autres termes, le faux serveur travaille avec le serveur à partir de son propre nom - de son adresse IP); • dans le cas de la réception d'un paquet du serveur, changer l'en-tête IP du paquet pour que son adresse IP soit l'adresse IP du serveur parasite et envoyer le paquet à l'hôte (pour l'hôte, le serveur parasite est le serveur réel). Ainsi, la mise en œuvre de cette attaque à distance, qui utilise des failles de sécurité dans le service DNS, permet de perturber le routage entre deux objets spécifiés à partir de n’importe où sur Internet. C'est-à-dire que cette attaque à distance est intersegmentale pour la cible de l'attaque et menace la sécurité de tout hôte Internet utilisant un DNS normal.

Déploiement d'un faux serveur sur Internet en interceptant une requête DNS ou en créant une «tempête» directionnelle de fausses réponses DNS sur le serveur DNS attaqué

Dans le schéma de recherche DNS distant, il s'ensuit que si le nom du serveur DNS spécifié dans la demande ne trouve pas de noms dans sa base de données, la demande est envoyée par le serveur à l'un des serveurs DNS racine dont les adresses figurent dans le fichier de paramètres du serveur root.cache. . Autrement dit, si le serveur DNS ne dispose pas d'informations sur l'hôte demandé, il transmet ensuite la demande, ce qui signifie que le serveur DNS lui-même est à l'origine de la recherche DNS à distance. Par conséquent, rien n'empêche l'attaquant, en utilisant les méthodes décrites dans le paragraphe précédent, de diriger son attaque vers le serveur DNS. En d'autres termes, la cible de l'attaque ne sera plus l'hôte, mais le serveur DNS et les réponses DNS fausses seront envoyées par l'attaquant pour le compte du serveur DNS racine au serveur DNS attaqué. Il est important de prendre en compte les fonctionnalités suivantes du serveur DNS. Pour accélérer l'opération, chaque serveur DNS met en cache ses propres noms d'hôte et adresses IP dans la zone de mémoire. Le cache inclut des informations modifiées de manière dynamique sur les noms et adresses IP des hôtes trouvés lors du fonctionnement du serveur DNS. En d’autres termes, si un serveur DNS, lorsqu’il reçoit une demande, ne trouve pas l’enregistrement correspondant dans sa table de cache, il transmet la réponse au serveur suivant et, après avoir reçu la réponse, met en mémoire les informations trouvées dans la table de cache. Ainsi, lors de la réception de la requête suivante, le serveur DNS n’est plus obligé d’effectuer une recherche à distance, car les informations nécessaires se trouvent déjà dans sa table de cache. L'analyse du schéma de recherche DNS distant qui vient d'être décrit en détail montre qu'il est évident que si un attaquant envoie une fausse réponse DNS en réponse à une requête du serveur DNS (ou dans le cas d'un «orage», des réponses fausses les enverront de manière permanente), une entrée correspondante contenant de fausses informations apparaîtra dans la table de cache du serveur, puis tous les hôtes accédant à ce serveur DNS seront mal informés. Lors de l'accès à l'hôte, la route sur laquelle l'attaquant a décidé de changer, la connexion avec ce dernier est établie via l'hôte de l'attaquant. selon les régimes e "faux objet d'avion". Et au fil du temps, ces fausses informations entrées dans la mémoire cache du serveur DNS seront distribuées aux serveurs DNS voisins des niveaux supérieurs et, par conséquent, de plus en plus d'hôtes sur Internet seront mal informés et attaqués. Évidemment, dans l'éventualité où un attaquant ne pourrait pas intercepter une requête DNS d'un serveur DNS, il lui faudrait un «assaut» de fausses réponses DNS envoyées au serveur DNS pour pouvoir lancer une attaque. Dans ce cas, le problème principal suivant se pose, différent du problème de sélection de port en cas d'attaque dirigée contre l'hôte. Comme indiqué précédemment, le serveur DNS, en envoyant une demande à un autre serveur DNS, identifie cette demande avec une valeur à deux octets (ID). Cette valeur est incrémentée de un à chaque demande envoyée. Pour connaître l'attaquant est la valeur actuelle de l'identificateur de la requête DNS n'est pas possible. Il est donc assez difficile de suggérer autre chose que d’énumérer 2 16 valeurs d’ID possibles. Mais le problème de contournement de port disparaît, car toutes les requêtes DNS sont transmises par le serveur DNS au port 53. Le problème suivant, qui est une condition préalable à la mise en œuvre de cette attaque à distance sur le serveur DNS en cas de "tempête" de réponses DNS erronées, est que l'attaque ne réussira que si le serveur DNS envoie une requête pour rechercher un nom spécifique (qui contient dans une fausse réponse DNS). Le serveur DNS envoie cette requête, qui est si nécessaire et souhaitable pour un attaquant, si une requête DNS provient d’un hôte pour rechercher le nom donné et ce nom dans la table de cache du serveur DNS. En principe, cette demande peut arriver à tout moment et l'attaquant peut être obligé d'attendre les résultats de l'attaque pendant un temps arbitrairement long. Cependant, rien n'empêche l'attaquant, sans attendre personne, d'envoyer une requête DNS similaire au serveur DNS attaqué et de provoquer un serveur DNS à rechercher le nom spécifié dans la requête. Ensuite, cette attaque est susceptible de réussir presque immédiatement après le début de sa mise en œuvre.

Déployer un serveur DNS parasite sur Internet en interceptant une requête DNS

Dans ce cas, il s'agit d'une attaque à distance basée sur une attaque à distance typique standard liée à l'attente d'une requête de recherche DNS. Avant de considérer l'algorithme d'attaque sur le service DNS, vous devez faire attention aux subtilités suivantes dans le travail de ce service. Premièrement, par défaut, le service DNS fonctionne sur la base du protocole UDP (bien qu'il soit possible d'utiliser le protocole TCP), ce qui le rend naturellement moins sécurisé, car le protocole UDP, contrairement à TCP, ne fournit pas de moyen d'identifier les messages. Afin de passer d'UDP à TCP, l'administrateur du serveur DNS devra étudier la documentation très sérieusement. De plus, cette transition ralentira quelque peu le système, car d’une part, lorsqu’on utilise TCP, une connexion virtuelle est requise et, d’autre part, les systèmes d’exploitation réseau finaux envoient d’abord une requête DNS à l’aide du protocole UDP et une réponse spéciale du serveur DNS, le système d’exploitation du réseau enverra une requête DNS à l’aide de TCP. Deuxièmement, la subtilité suivante à laquelle vous devez faire attention est que la valeur du champ "port de l'expéditeur" dans le paquet UDP prend d'abord la valeur 1023 (?), Puis augmente avec chaque demande DNS transmise. Troisièmement, la valeur de l'identifiant (ID) de la requête DNS se comporte comme suit. Dans le cas d'un transfert de requête DNS à partir d'un hôte, sa valeur dépend de l'application réseau spécifique qui génère la requête DNS. Les expériences de l’auteur ont montré que, dans le cas d’un transfert de requête provenant du shell de l’interpréteur de commandes des systèmes d’exploitation Linux et Windows '95 (par exemple, ftp nic.funet.fi), cette valeur est toujours égale à un. Si une requête DNS est transmise à partir de Netscape Navigator, le navigateur incrémente chaque valeur de chaque nouvelle requête. Dans ce cas, si la requête est transmise directement par le serveur DNS, le serveur augmente cette valeur d'identificateur de un à chaque nouvelle requête transmise. Toutes ces subtilités importent en cas d’attaque sans intercepter une requête DNS. Pour mettre en œuvre une attaque en interceptant une requête DNS, un attaquant doit intercepter la requête DNS, extraire le numéro de port UDP de l'expéditeur de la requête, la valeur à deux octets de l'ID de la requête DNS et le nom que vous recherchiez, puis envoyer une fausse réponse DNS à la requête DNS. Un port UDP dans lequel spécifier comme adresse IP souhaitée la véritable adresse IP du faux serveur DNS. Cela permettra à l'avenir d'intercepter complètement et d'influencer activement le schéma "Faux objet RVS" sur le trafic entre l'hôte "trompé" et le serveur. Considérons un schéma généralisé d'un faux serveur DNS: • en attente d'une requête DNS; • après avoir reçu une requête DNS, en extraire les informations nécessaires et envoyer une fausse réponse DNS sur le réseau à l'hôte demandeur, pour le compte (de l'adresse IP) du serveur DNS réel, qui indique l'adresse IP du faux serveur DNS; • dans le cas de la réception d'un paquet provenant d'un hôte, changer l'en-tête IP du paquet avec son adresse IP en adresse IP du serveur DNS parasite et transférer le paquet sur le serveur (en d'autres termes, le serveur DNS parasite travaille avec le serveur en son propre nom); • en cas de réception d’un paquet du serveur, changer l’adresse IP de son paquet dans l’en-tête IP du paquet en adresse IP du faux serveur DNS et envoyer le paquet à l’hôte (pour l’hôte, le faux serveur DNS est le vrai serveur). Une condition nécessaire pour la mise en oeuvre de cette variante de l'attaque est l'interception de la requête DNS. Cela n'est possible que si l'attaquant se trouve sur le chemin de trafic principal ou dans un segment d'un serveur DNS réel. La réalisation d'une de ces conditions pour la localisation d'un attaquant sur un réseau rend une telle attaque distante difficile à mettre en œuvre dans la pratique (il est probable qu'un attaquant ne pourra pas accéder au segment du serveur DNS ni, en outre, au canal de communication intersegment). Toutefois, si ces conditions sont remplies, il est possible de mener une attaque à distance entre segments sur Internet . Nous notons que la mise en œuvre pratique de cette attaque à distance a révélé un certain nombre de fonctionnalités intéressantes dans le fonctionnement du protocole FTP et dans le mécanisme d'identification des paquets TCP. Si le client FTP de l'hôte se connecte au serveur FTP distant via un faux serveur DNS, il s'avère que chaque fois que l'utilisateur émet une commande d'application FTP (par exemple, ls, get, put, etc.), le client FTP J’ai élaboré la commande PORT, qui consistait à envoyer le numéro de port et l’ adresse IP de l’hôte client au serveur FTP dans le champ de données du paquet TCP (il est difficile de trouver une signification spéciale à ces actions - pourquoi envoyer chaque fois l’adresse IP du client au serveur FTP)! Cela a conduit au fait que si sur un faux serveur DNS, vous ne modifiez pas l'adresse IP transmise dans le champ de données du paquet TCP et ne transférez ce paquet au serveur FTP de la manière habituelle, le paquet suivant sera transmis par le serveur FTP à l'hôte client FTP. en contournant un faux serveur DNS et, ce qui est le plus intéressant, ce paquet sera perçu comme un paquet normal et, de plus, un faux serveur DNS perdra le contrôle du trafic entre le serveur FTP et le client FTP! Cela est dû au fait qu'un serveur FTP standard ne fournit aucune identification supplémentaire du client FTP, mais il déplace tous les problèmes d'identification de paquet et de connexion vers un niveau inférieur - le niveau TCP.

Inondation d'attaque DNS

L'inondation DNS est une attaque dirigée contre les serveurs de noms Internet. Elle consiste à transmettre un grand nombre de requêtes DNS et conduit au fait que les utilisateurs ne peuvent pas accéder au service de noms. Il est donc impossible aux utilisateurs ordinaires de travailler. Counteraction: pour détecter cette attaque, il est nécessaire d'analyser la charge du serveur DNS et d'identifier les sources des requêtes.

Attaque d'usurpation DNS

Le résultat de cette attaque est l’introduction de la correspondance imposée entre l’adresse IP et le nom de domaine dans le cache du serveur DNS. En raison du succès d’une telle attaque, tous les utilisateurs du DNS du nord recevront des informations incorrectes sur les noms de domaine et les adresses IP. Cette attaque est caractérisée par un grand nombre de paquets DNS portant le même nom de domaine. Cela est dû à la nécessité de sélectionner certains paramètres de l'échange DNS. Counteraction: pour détecter une telle attaque, il est nécessaire d'analyser le contenu du trafic DNS.

Attaque d'usurpation d'adresse IP (syslog)

Un grand nombre d'attaques sur Internet est associé à la substitution de l'adresse IP source. Syslog fait partie de ces attaques. Il consiste à envoyer un message à l'ordinateur de la victime pour le compte d'un autre ordinateur du réseau interne. Le protocole syslog étant utilisé pour conserver les journaux système, il est possible d'imposer des informations ou de supprimer les traces d'accès non autorisés en envoyant de faux messages à l'ordinateur victime. Counteraction: la détection d’attaques liées à la substitution d’adresses IP est possible lors du contrôle de la réception d’un paquet avec l’adresse source de la même interface sur l’une des interfaces ou lors du contrôle de la réception des paquets avec les adresses IP du réseau interne de l’interface externe.

Forfaits imposants

Un attaquant envoie des paquets avec une fausse adresse de retour sur le réseau. Avec cette attaque, un attaquant peut basculer sur ses connexions informatiques établies entre d’autres ordinateurs. Dans ce cas, les droits d'accès de l'attaquant deviennent égaux à ceux de l'utilisateur dont la connexion au serveur a été commutée sur l'ordinateur de l'attaquant.

Sniffing - écoute du canal (possible uniquement dans le segment de réseau local)

Pratiquement toutes les cartes réseau prennent en charge la possibilité d'intercepter les paquets transmis sur un canal commun du réseau local. Dans ce cas, le poste de travail peut recevoir des paquets adressés à d'autres ordinateurs du même segment de réseau. Ainsi, l'intégralité de l'échange d'informations dans le segment de réseau devient disponible pour l'attaquant. Pour implémenter cette attaque avec succès, l'ordinateur de l'attaquant doit se trouver sur le même segment de réseau local que l'ordinateur attaqué.

Interception de paquets sur le routeur

Le logiciel réseau du routeur a accès à tous les paquets réseau transmis par ce routeur, ce qui permet l'interception des paquets. Pour mettre en œuvre cette attaque, l'attaquant doit disposer d'un accès privilégié à au moins un routeur réseau. Étant donné que de nombreux paquets sont généralement transmis via un routeur, leur interception totale est presque impossible. Cependant, des paquets individuels peuvent très bien être interceptés et enregistrés pour une analyse ultérieure par un attaquant. L'interception la plus efficace des paquets FTP contenant des mots de passe utilisateur, ainsi que du courrier électronique.

Imposer une route parasite à un hôte en utilisant ICMP

Sur Internet, il existe le protocole ICMP (Internet Control Message Protocol), dont l’une des fonctions est d’informer les hôtes du changement de routeur actuel. Ce message de contrôle s'appelle redirection. Il est possible d'envoyer un faux message de redirection de n'importe quel hôte du segment de réseau au nom du routeur à l'hôte attaqué. En conséquence, l'hôte modifie la table de routage actuelle et, à l'avenir, tout le trafic réseau de cet hôte passera, par exemple, par l'hôte qui a envoyé un faux message de redirection. Ainsi, il est possible d'imposer activement une fausse route dans un segment d'Internet.

Winnuke

Outre les données habituelles envoyées via une connexion TCP, le standard envoie également des données (hors bande). Au niveau des formats de paquets TCP, cela est exprimé dans un pointeur urgent différent de zéro. La plupart des PC sur lesquels Windows est installé ont un protocole réseau NetBIOS qui utilise 3 ports IP: 137, 138, 139. Il s’est avéré que si vous vous connectez à la machine Windows à 139 ports et envoyez plusieurs octets de données OutOfBand, la mise en œuvre NetBIOS sans savoir quoi faire avec ces données, il raccroche ou redémarre simplement la voiture. Pour Windows 95, cela ressemble généralement à un écran de texte bleu, qui signale une erreur dans le pilote TCP / IP et l'impossibilité de travailler avec le réseau avant le redémarrage du système d'exploitation. NT 4.0 sans service pack est redémarré, NT 4.0 avec un deuxième service pack s'affiche dans un écran bleu. Un envoi similaire de données à 135 et à certains autres ports entraîne une charge importante sur le processeur RPCSS.EXE. Sur NTWS, cela entraîne un ralentissement important, le SNRC est presque gelé.

Faux serveur ARP

Sur Internet, chaque hôte possède une adresse IP unique, qui reçoit tous les messages du réseau mondial. Cependant, le protocole IP n'est pas tant un réseau qu'un protocole d'échange Internet conçu pour la communication entre des objets d'un réseau mondial. Au niveau de la liaison, les paquets sont adressés aux adresses matérielles des cartes réseau. Internet utilise le protocole ARP (Address Resolution Protocol) pour la correspondance un à un entre adresses IP et Ethernet. Initialement, l'hôte peut ne pas avoir d'informations sur les adresses Ethernet des autres hôtes qui le composent dans le même segment, y compris l'adresse Ethernet du routeur. En conséquence, lors du premier accès aux ressources du réseau, l'hôte envoie une demande ARP de diffusion que toutes les stations du segment de réseau recevront. À la réception de cette demande, le routeur envoie une réponse ARP à l'hôte demandeur, dans laquelle il indique son adresse Ethernet. Ce schéma d'opération permet à un attaquant d'envoyer une fausse réponse ARP, dans laquelle il se déclare l'hôte souhaité (par exemple, un routeur) et, ultérieurement, de surveiller activement tout le trafic réseau de l'hôte "fraudé".

Numéro de prédiction de séquence TCP (usurpation d'adresse IP)

Dans ce cas, l'objectif de l'attaquant est de prétendre être un autre système, qui, par exemple, est «approuvé» par le système victime. La méthode est également utilisée à d'autres fins - par exemple, utiliser le protocole SMTP de la victime pour envoyer de faux courriels. La connexion TCP est établie en trois étapes: le client sélectionne et envoie le numéro de séquence au serveur (appelons-le C-SYN). En réponse, le serveur envoie au client un paquet de données contenant une confirmation (C-ACK) et son propre numéro de séquence (S-SYN). ). Maintenant, le client doit envoyer une confirmation (S-ACK). Après cela, la connexion est considérée comme établie et l’échange de données commence. De plus, chaque paquet a dans l'en-tête un champ pour le numéro de séquence et le numéro d'accusé de réception. Ces nombres augmentent lors de l'échange de données et vous permettent de contrôler l'exactitude du transfert. Supposons qu'un attaquant puisse prédire quel numéro de séquence (S-SYN selon le schéma) sera envoyé par le serveur. Cela peut être fait en fonction de la connaissance d'une implémentation TCP / IP spécifique. Par exemple, dans 4.3BSD, la valeur du numéro de séquence, qui sera utilisée lors de la définition de la valeur suivante, augmente de 125 000 toutes les secondes. Ainsi, en envoyant un paquet au serveur, l'attaquant recevra une réponse et sera en mesure (éventuellement avec plusieurs tentatives et corrigé pour la vitesse de connexion) Le numéro de séquence pour la prochaine connexion. Si la mise en œuvre TCP / IP utilise un algorithme spécial pour déterminer le numéro de séquence, vous pouvez le clarifier en envoyant plusieurs dizaines de paquets au serveur et en analysant ses réponses. Supposons donc que le système A approuve le système B, de sorte que l'utilisateur du système B puisse effectuer "rlogin A" et se retrouver sur A sans entrer de mot de passe. Supposons que l'attaquant se trouve sur le système C. Le système A agit en tant que serveur, les systèmes B et C agissent en tant que clients. La première tâche de l'attaquant consiste à placer le système B dans un état dans lequel il ne peut pas répondre aux requêtes du réseau. Cela peut être fait de plusieurs manières, dans le cas le plus simple, il vous suffit d'attendre le redémarrage du système B. Quelques minutes, pendant lesquelles il sera inopérant, devraient suffire. Après cela, l’attaquant peut essayer de se faire passer pour le système B, afin d’avoir accès au système A (au moins à court terme). L'attaquant envoie plusieurs paquets IP qui établissent la connexion, au système A, afin de déterminer l'état actuel du numéro de séquence du serveur. L'attaquant envoie un paquet IP dans lequel l'adresse du système B est déjà spécifiée comme adresse de retour. Le système A répond avec un paquet avec un numéro de séquence envoyé au système B. Cependant, le système B ne le recevra jamais (il est désactivé), comme l'attaquant. Mais sur la base de l'analyse précédente, il devine quel numéro de séquence a été envoyé au système B. L'attaquant confirme que le paquet a été reçu de A, envoyant un paquet avec un S-ACK estimé pour le compte de B (notez que si les systèmes sont situés dans un segment, l'attaquant déterminera la séquence. nombre est suffisant pour intercepter un paquet envoyé par le système A). Ensuite, si l’attaquant a de la chance et que le numéro de séquence du serveur a été correctement deviné, la connexion est considérée comme établie. Un attaquant peut maintenant envoyer un autre faux paquet IP, qui contiendra déjà des données. Par exemple, si l’attaque visait rsh, elle pourrait contenir des commandes permettant de créer un fichier .rhosts ou d’envoyer le fichier / etc / passwd à un attaquant par courrier électronique. Contre-action: le signal le plus simple de l'usurpation d'adresse IP sera constitué de paquets avec des adresses internes provenant du monde extérieur. Le logiciel du routeur peut alerter l'administrateur. Cependant, ne vous y trompez pas: l'attaque peut provenir de votre réseau. Dans le cas d'outils de surveillance réseau plus intelligents, l'administrateur peut surveiller (en mode automatique) les paquets provenant de systèmes dont l'état est indisponible. Cependant, qu'est-ce qui empêche un attaquant d'imiter le fonctionnement du système B en répondant aux paquets ICMP? Quels sont les moyens de se protéger contre l'usurpation d'adresse IP? Tout d'abord, il est possible de rendre difficile ou impossible de deviner le numéro de séquence (l'élément clé de l'attaque). Par exemple, vous pouvez augmenter le taux de changement du numéro de séquence sur le serveur ou sélectionner le nombre d'augmentation du numéro de séquence de manière aléatoire (en utilisant de préférence un algorithme cryptographiquement robuste pour générer des nombres aléatoires). Si le réseau utilise un pare-feu (ou un autre filtre de paquets IP), vous devez lui ajouter des règles selon lesquelles tous les paquets provenant de l'extérieur et ayant des adresses de retour de notre espace d'adressage ne doivent pas être autorisés à l'intérieur du réseau. En outre, vous devez minimiser la confiance des machines les unes envers les autres. Dans l’idéal, il ne devrait y avoir aucun moyen d’accéder directement à la machine réseau suivante, après avoir obtenu les droits de superutilisateur sur l’une d’elles. Bien entendu, cela ne vous évitera pas l'utilisation de services ne nécessitant pas d'autorisation, par exemple, IRC (un attaquant peut prétendre être une machine Internet arbitraire et envoyer un ensemble de commandes pour entrer dans le canal IRC, émettre des messages arbitraires, etc.). Le cryptage d'un flux TCP / IP résout, en général, le problème d'usurpation d'adresse IP (à condition que des algorithmes cryptographiquement puissants soient utilisés). Afin de réduire le nombre de telles attaques, il est également recommandé de configurer le pare-feu pour filtrer les paquets envoyés vers l'extérieur par notre réseau, mais dont les adresses n'appartiennent pas à notre espace adresse.

Tempête locale

Faisons une petite digression vers la mise en œuvre de TCP / IP et considérons les "tempêtes locales" comme un exemple de tempête UDP. En règle générale, les systèmes prennent en charge le fonctionnement des ports UDP tels que 7 ("echo", le paquet reçu est renvoyé), 19 ("générateur de caractères", la chaîne du générateur de caractères est envoyée à l'expéditeur en réponse au paquet reçu) et autres (date, etc.). Dans ce cas, l'attaquant peut envoyer un seul paquet UDP, où 7 sera spécifié comme port source, le 19ème comme destinataire et, par exemple, deux machines de votre réseau (ou même 127.0) seront indiquées comme adresses du destinataire et de l'expéditeur. 0,1). Ayant reçu le paquet, le 19ème port répond avec une chaîne qui va au port 7. Le septième port le duplique et le renvoie à 19 .. et ainsi de suite à l'infini. Le cycle sans fin consomme les ressources des machines et ajoute une charge insignifiante au canal. Bien sûr, avec le premier paquet UDP perdu, la tempête va s'arrêter. Contre-action: en guise de protection, il convient de recommander de nouveau de ne pas autoriser les paquets avec des adresses internes, mais ceux venant de l'extérieur, de transiter par le réseau. Il est également recommandé de fermer l’utilisation de la plupart des services sur le pare-feu.

Détournement d'Ip

La méthode est une combinaison d'espionnage et d'usurpation d'adresse IP. Conditions préalables: l'attaquant doit avoir accès à la machine située dans le chemin du flux réseau et disposer des droits suffisants pour générer et intercepter les paquets IP qui s'y trouvent. Rappelez-vous que pendant la transmission des données, le numéro de séquence et le numéro d'accusé de réception sont constamment utilisés (les deux champs sont dans l'en-tête IP). Sur la base de leur valeur, le serveur et le client vérifient l'exactitude de la transmission de paquets. Il est possible d'entrer la connexion à l'état "désynchronisé" lorsque le numéro de séquence et le numéro d'accusé de réception envoyés par le serveur ne correspondent pas à la valeur attendue du client, et inversement. Dans ce cas, l'attaquant, «écoutant» la ligne, peut assumer les fonctions d'un intermédiaire, générant les paquets corrects pour le client et le serveur et interceptant leurs réponses. La méthode vous permet de contourner complètement les systèmes de protection tels que, par exemple, les mots de passe à usage unique, car l'attaquant commence à fonctionner après l'autorisation de l'utilisateur. Il y a deux façons de désynchroniser une connexion. • désynchronisation précoce. La connexion est désynchronisée au stade de son installation. L'attaquant écoute sur le segment de réseau sur lequel vont passer les paquets de la session d'intérêt. Après avoir attendu le paquet S-SYN du serveur, l’attaquant envoie bien sûr au paquet un paquet RST (réinitialisation) avec le numéro de séquence correct, et immédiatement après un faux paquet C-SYN au nom du client.Le serveur lâche la première session et en ouvre une nouvelle. le même port, mais avec le nouveau numéro de séquence, puis envoie au client un nouveau paquet S-SYN. Le client ignore le paquet S-SYN, mais l'attaquant qui écoute sur la ligne envoie le paquet S-ACK au serveur pour le compte du client. Ainsi, le client et le serveur sont à l'état ESTABLISHED, mais la session est désynchronisée. Naturellement, ce système ne fonctionne pas à 100%. Par exemple, il n'est pas assuré que certains paquets envoyés par un intrus ne seront pas perdus en cours de route. Pour gérer ces situations correctement, le programme doit être compliqué. • Désynchronisation par zéro donnée. Dans ce cas, l’attaquant écoute la session et envoie à un moment un paquet contenant «zéro» données au serveur, c.-à-d. telles que celles qui seront réellement ignorées au niveau de l'application et non visibles pour le client (par exemple, pour telnet, il pourrait s'agir de données telles que IAC NOP, IAC NOP, IAC NOP, etc.). Un paquet similaire est envoyé au client. Il est évident qu'après cette session, l'état de synchronisation est désynchronisé. Tempête ACK L'un des problèmes du détournement IP est que tout paquet envoyé au moment où la session est désynchronisée provoque un "tempête ACK". Par exemple, le paquet est envoyé par le serveur et il est inacceptable pour le client. Par conséquent, il répond avec un paquet ACK. En réponse à ce package inacceptable pour le serveur, le client reçoit à nouveau une réponse. Et ainsi de suite jusqu'à l'infini. Heureusement, les réseaux modernes sont construits sur la technologie, lors de la perte de paquets individuels. Étant donné que les paquets ACK ne transportent pas de données, aucune retransmission n'a lieu et la tempête s'atténue. Comme les expériences l'ont montré, plus la tempête ACK est forte, plus elle se «calme» rapidement - cela se produit en une fraction de seconde sur Ethernet 10 Mo. Sur des connexions peu fiables comme SLIP - pas beaucoup plus. Détection et protection Il y a plusieurs façons. Par exemple, vous pouvez implémenter une pile TCP / IP qui contrôlera la transition vers un état désynchronisé en échangeant des informations sur le numéro de séquence / le numéro d'accusé de réception. Cependant, dans ce cas, nous ne sommes pas assurés contre un attaquant qui modifie ces valeurs. Par conséquent, un moyen plus fiable consiste à analyser la charge du réseau et à suivre les tempêtes ACK émergentes. Ceci peut être implémenté en utilisant des contrôles de réseau spécifiques. Si l'attaquant ne se préoccupe pas de maintenir une connexion désynchronisée jusqu'à ce qu'elle soit fermée ou ne commence pas à filtrer la sortie de ses commandes, l'utilisateur le remarquera immédiatement. Malheureusement, la très grande majorité d'entre eux ouvrira simplement une nouvelle session sans contacter l'administrateur. Comme toujours, une protection à 100% contre cette attaque est fournie en chiffrant le trafic TCP / IP (au niveau de l'application - shell sécurisé) ou au niveau du protocole - IPsec. Cela élimine la possibilité de modifier le flux du réseau. PGP peut être utilisé pour protéger les messages électroniques. Il convient de noter que la méthode ne fonctionne pas non plus sur certaines implémentations spécifiques de TCP / IP. Ainsi, malgré [rfc ...], qui requiert la fermeture silencieuse d'une session en réponse à un paquet RST, certains systèmes génèrent un paquet de compteur RST. Cela rend impossible la désynchronisation précoce.

Détection d'attaque et protection

• Pour détecter les attaques, vous pouvez analyser l'activité de diffusion - il s'agit des paquets UDP, NBF, SAP. • Pour protéger le réseau interne connecté à Internet, vous ne devez pas transmettre les paquets entrants provenant du réseau externe, dont la source est l'adresse du réseau interne. Vous pouvez autoriser les paquets à se rendre uniquement sur le port 80. • Définissez le filtrage de paquets, si nécessaire (vous ne devez même pas négliger
Panneau de configuration \ Réseau \ Protocoles \ Propriétés \ Avancé sous Windows NT).

Méthodes d'analyse

Utiliser le protocole ARP

Les attaquants peuvent utiliser ce type de requête pour identifier les systèmes en fonctionnement dans les segments du réseau local.

Numérisation réseau via DNS

On sait qu’avant de lancer une attaque, les assaillants identifient les cibles, c.-à-d. l'identification des ordinateurs qui seront victimes de l'attaque, ainsi que des ordinateurs permettant l'échange d'informations avec les victimes. Un moyen d'identifier les cibles consiste à interroger le serveur de noms et à obtenir toutes les informations de domaine disponibles. Counteraction: pour déterminer une telle analyse, il est nécessaire d'analyser les requêtes DNS (adresse dans le nom) provenant peut-être de serveurs DNS différents, mais pendant une certaine période de temps fixe. Dans le même temps, il est nécessaire de visualiser quelles informations sont transmises et de suivre la recherche d'adresses.

Bombe UDP

Ping balayage balayage du réseau

Ping balayer ou localiser avec ICMP est une méthode efficace.

Contre-action: pour déterminer le fait que les cibles d’analyse ping se trouvent dans un sous-réseau, vous devez analyser les adresses de source et de destination des paquets ICMP.

Balayage de port TCP

L'analyse de port est une méthode bien connue pour reconnaître la configuration de l'ordinateur et les services disponibles. Il existe plusieurs méthodes d'analyse TCP, dont certaines sont appelées furtives, car elles exploitent les vulnérabilités des implémentations de pile TCP / IP dans la plupart des systèmes d'exploitation modernes et ne sont pas détectées par des moyens standard. Contre-action: la contre-action peut être accomplie, par exemple, en envoyant des paquets TCP avec l'indicateur RST défini pour le compte de l'ordinateur en cours d'analyse à l'ordinateur de l'attaquant.

Analyser les ports UDP

Un autre type d'analyse de port est basé sur l'utilisation du protocole UDP et comprend les éléments suivants: un paquet UDP adressé au port est transmis à l'ordinateur analysé, dont la disponibilité est contrôlée. Si le port est indisponible, le message ICMP d'indisponibilité (port de destination inaccessible) arrive à la réponse, sinon il n'y a pas de réponse. Ce type d'analyse est assez efficace. Il vous permet d'analyser tous les ports de l'ordinateur victime en peu de temps. Contre-action: il est possible de contrer ce type d'analyse en envoyant des messages sur l'inaccessibilité du port à l'ordinateur de l'attaquant.

Balayage furtif

La méthode est basée sur un code réseau incorrect, vous ne pouvez donc pas garantir qu'il fonctionnera normalement dans une situation donnée. Les paquets TCP avec les indicateurs ACK et FIN installés sont utilisés. Ils devraient être utilisés parce que si un tel paquet est envoyé au port avec une connexion non ouverte, renvoyez toujours le paquet avec l'indicateur RST. Plusieurs méthodes utilisent ce principe: • Envoyer un package FIN. Si l'hôte destinataire renvoie un RST, le port est inactif. Si le RST n'est pas renvoyé, le port est actif. Cette méthode fonctionne dans la plupart des systèmes d'exploitation. • envoyer un paquet ACK. Si la durée de vie des paquets renvoyés est inférieure au reste des paquets RST reçus ou si la taille de la fenêtre est supérieure à zéro, le port est probablement actif.

Analyse passive

Les cybercriminels ont souvent recours à l'analyse pour déterminer les ports TCP sur lesquels les démons répondent aux demandes du réseau. Un programme de scanner typique ouvre les connexions à différents ports en séquence. Dans le cas où la connexion est établie, le programme la réinitialise en indiquant le numéro de port de l'attaquant. Cette méthode est facilement détectée par les messages de démons, surprise par une connexion instantanément interrompue après l’installation ou par l’utilisation de programmes spéciaux. Les meilleurs de ces programmes ont quelques tentatives pour introduire des éléments d'un élément artificiel dans les tentatives de suivi pour se connecter à différents ports. Toutefois, l’attaquant peut utiliser une autre méthode, le scan passif (en anglais «passive scan»). Lorsqu'il est utilisé, l'attaquant envoie un paquet TCP / IP SYN à tous les ports d'une ligne (ou selon un algorithme donné). Pour les ports TCP acceptant les connexions de l'extérieur, un paquet SYN / ACK sera renvoyé en tant qu'invitation à poursuivre la négociation à 3 voies. Le reste retournera les paquets RST. Après avoir analysé les données de réponse, un attaquant peut rapidement comprendre les ports sur lesquels le programme est exécuté. En réponse aux paquets SYN / ACK, il peut également répondre par des paquets RST, indiquant que le processus d’établissement de la connexion ne se poursuivra pas (en général, les paquets RST répondront automatiquement à la mise en œuvre TCP / IP de l’attaquant s’il ne prend pas de mesures spéciales). La méthode n'est pas détectée par les méthodes précédentes, car la connexion TCP / IP réelle n'est pas établie. Toutefois (en fonction du comportement de l'attaquant), vous pouvez suivre le nombre considérablement accru de sessions se trouvant dans l'état SYN_RECEIVED. (en supposant que l'attaquant n'envoie pas de RST en réponse) reçoit du client un paquet RST en réponse à un SYN / ACK. Malheureusement, avec un comportement suffisamment intelligent d’un attaquant (par exemple, balayer à faible vitesse ou ne contrôler que des ports spécifiques), il est impossible de détecter un balayage passif, car il n’est pas différent des tentatives habituelles d’établir une connexion. En guise de défense, vous ne pouvez que conseiller de fermer tous les services du pare-feu, dont l'accès n'est pas requis de l'extérieur.

Système d'invitation et danger des informations qu'il contient

Il est nécessaire de supprimer les "invites système" affichées par les ordinateurs centraux sur les terminaux d'accès à distance pour que l'utilisateur puisse se connecter au système. Cette exigence est due aux raisons suivantes: • L’invite système contient généralement des informations permettant à un intrus d’identifier le type et la version du système d’exploitation de l’ordinateur central, le type de logiciel d’accès distant, etc. Ces informations peuvent considérablement simplifier la tâche d'accès au système, car l'intrus peut utiliser des outils d'accès illégaux exploitant les faiblesses d'un système particulier; • "système d'invitation" indique généralement l'affiliation départementale du système. Dans le cas où le système appartient à une agence secrète ou à une structure financière, les intérêts du délinquant peuvent augmenter considérablement; • Un récent procès a abouti à l’abandon d’une action en justice contre une personne ayant pénétré illégalement dans le réseau de la société, alors qu’il expliquait ses actes avec une inscription sur le terminal d’accès à distance «Bienvenue à…» de l’ordinateur central.

Quelques conseils pour la recherche en réseau

• Recherchez les ports et les services ouverts sur le serveur. • Essayez de vous connecter au serveur en tant que IUSR_ <nom de la machine avec des balles>. • Essayez de supprimer SAM._ à partir de / REPAIR (les mots de passe SAM sont obtenus à l'aide de la commande de développement). • Comme beaucoup de gens le savent probablement, les répertoires / scripts et / cgi-bin peuvent exécuter tous les fichiers de ces répertoires dans NT. Vous devez donc fermer l'accès à ces répertoires. Le lancement est effectué à l'aide de la commande suivante (si le fichier exécutable de / scripts) à partir du navigateur est http: //www.idahonews/scripts/getadmin.exe? Test. Vous pouvez obtenir les droits d'administrateur comme suit: les programmes à partir de / scripts ne sont pas lancés sous le nom d'utilisateur de l'utilisateur, mais à partir du même compte Web, à partir duquel il est possible de conclure que les mots de passe administrateur peuvent être facilement supprimés du registre à l'aide de PWDUMP.exe. • N'oubliez pas que les programmes de / SCRIPTS sont exécutés sous le compte Web et non sous le compte de l'utilisateur qui démarre. Par conséquent, vous pouvez essayer de réinitialiser les mots de passe du registre à l'aide de PWDUMP.EXE. Les mots de passe seront cryptés. Dans ce cas, vous devez enregistrer la page en tant que fichier texte et essayer de décoder les mots de passe à l'aide du programme BRUTEFORCE. • Sous le compte administrateur, vous pouvez modifier les alias en ftp et http.

Quelques autres moyens d'obtenir des informations.

• À l'aide de whois ou de NSLookUp pour trouver d'autres noms, déterminez à qui appartient le réseau. Rappelez-vous la plage d'adresses IP pour une analyse ultérieure. • Allez au routeur le plus proche et trouvez quelque chose. Pour trouver le routeur, vous devez acheminer le chemin vers n'importe quelle adresse IP de la plage détectée. Le routeur le plus proche est déterminé par le temps de réponse. • Essayez de vous connecter au routeur par telnet. • Lancez le scanner de la plage d'adresses IP pour détecter les services en cours d'exécution sur le PC.

Trous et erreurs d'administration dans Windows NT

• Envisagez une vulnérabilité associée à une erreur dans la mise en œuvre du système. Cette vulnérabilité ouvre la possibilité d’une attaque appelée GetAdmin . Vulnérable est le service système NtAddAtom, qui ne vérifie pas les paramètres qui lui sont transmis et définit le bit 0 à NtGlobalFlag + 2. Pour cela, ouvrez le fichier ntoskrnl.exe et recherchez le point d'entrée dans NtAddAtom. La définition de ce bit désactive la vérification des privilèges du débogueur dans NtOpenProcess et NtOpenThread. Ainsi, tout utilisateur a le droit d'ouvrir n'importe quel processus du système. L’attaque ouvre le processus Winlogon et y intègre des dll. Étant donné que ce service dispose de privilèges SYSTÈME, il peut ajouter un utilisateur au groupe Administrateurs ou le supprimer de ce groupe. Théoriquement, il existe d'autres failles de sécurité possibles. • L'une des méthodes populaires de pénétration dans le système consiste à deviner le mot de passe. Pour lutter contre cela, il est courant de verrouiller le compte d'utilisateur après un certain nombre de tentatives de connexion infructueuses. Le compte admin est une exception agréable. Et s'il a accès à l'entrée via le réseau, cela ouvre une échappatoire pour pouvoir deviner le mot de passe. Pour la protection, il est recommandé de renommer l'utilisateur administrateur, de verrouiller le compte, d'interdire à l'administrateur de se connecter via le réseau, d'interdire le transfert de paquets SMB via TCP / IP (ports 137, 138, 139) et de mettre en place une journalisation des entrées en échec.

Spam

Les spammeurs trouveront non seulement un FAI pour commencer à envoyer leur courrier électronique, mais ils choisiront très probablement une société, car Il est plus facile pour le fournisseur d’internet de comprendre ce qui s’est passé et il pourra probablement se débarrasser de ces messages plus rapidement. Les spams récurrents peuvent perturber les utilisateurs légitimes en raison d'une surcharge du serveur de messagerie. Le problème est que la connexion à un serveur SMTP n'est pas si difficile. Pour ce faire, vous devez savoir que seules 7 à 8 commandes au serveur SMTP ont commencé à distribuer vos messages. Pour vous protéger contre cela, vous pouvez vérifier les adresses des messages entrants dans la base de données des utilisateurs de serveur enregistrés. Si l'adresse de la personne qui envoie le message ou l'une des adresses demandées par celle-ci ne figure pas dans la liste, le courrier électronique ne sera pas transmis.

Comment protéger le système de messagerie contre les spammeurs

• Si vous ne lisez pas les journaux, les spammeurs agissent en toute impunité. • Programmez tous les serveurs de messagerie de votre entreprise, sauf un, afin qu'ils ne répondent pas à la demande de transfert de message. Le serveur restant doit soigneusement filtrer les adresses IP. • Gardez tous les serveurs de messagerie pouvant recevoir des demandes de transfert de messages à portée de votre pare-feu.

Comment fonctionnent les spammeurs

• Cible sélectionnée - le polluposteur choisit au hasard le nom de domaine de la société, puis devine le nom d'hôte du fournisseur de service de messagerie SMTP. Si le serveur accepte le courrier, le polluposteur lui demande de diffuser le message par liste d'adresses. • Le serveur exécute la demande en donnant l'impression que les messages quittent l'adresse IP de la victime.

Trous IIS, WWW, FTP

• L'expéditeur peut laisser sa fausse adresse de la manière suivante: il peut se connecter au port SMTP de la machine pour le compte duquel il souhaite envoyer la lettre et entrer le texte de la lettre. • Le service FTP vous permet d'établir des connexions passives en fonction de l'adresse du port spécifié par le client. Ceci peut être utilisé par un attaquant pour envoyer des commandes dangereuses au service FTP. Le registre contient la clé: <HKLM \ System \ CurrentControlSet \ Services \ MSFTPSVC \ Parameters> avec la valeur <EnablePortAttack: REG_DWORD:> Assurez-vous que la valeur est définie sur "0" et non sur "1". • Si vous vous connectez via telnet au port 80, la commande "GET ../ .." provoquera un crash d’IIS et le message "L’application exe \ inetinfo.dbg a généré une erreur lors de la génération de l’adresse générée était c0000005 à l’adresse 53984655. • Adresse 'http://www.domain.com/scripts .. \ .. \ scriptname "vous permet d'exécuter le script spécifié. La valeur par défaut est l'invité ou IUSR_WWW a le droit de lire tous les fichiers de tous les répertoires. Ainsi, ces fichiers peuvent être visualisés, téléchargés et lancés. • Les répertoires \ script \ cgi-bin doivent être fermés, car À partir de ces répertoires, vous pouvez exécuter tous les fichiers directement à partir de la fenêtre du navigateur. • À la demande d'IIS pour une URL très longue (4 à 8 Ko), le serveur se bloque et ne répond pas aux demandes suivantes. Le problème est que la taille exacte de l'URL dépend du serveur spécifique. Par conséquent, les programmes destructeurs, commençant par une certaine taille de requête élémentaire et augmentant progressivement la taille, tentent de trouver le point critique qui suspendra le serveur. • Les utilisateurs d'Outlook Express 98 doivent prendre en compte le fait que cette messagerie permet le traitement, y compris pour l'exécution, des scripts Visual-Basic, qui peuvent facilement être masqués dans la lettre. Un tel script a un accès complet au système de fichiers. La véritable protection ne peut être que de définir le "niveau de sécurité" dans Outlook sur "maximum". • Si les balises HTML sont autorisées dans la discussion, personne ne s'immiscera dans l'insertion de quelque chose comme <img src = "http://www.mysite.com/cgi-bin/sniffer.cgi"> dans votre message. En conséquence, tous ceux présents sur le chat (même ceux qui ne se sont pas inscrits) appellent, sans le savoir, le script. • Limitez l'accès au port 25 à certains utilisateurs uniquement.