View
4.696
Download
0
Category
Tags:
Preview:
DESCRIPTION
Training at Datelec
Citation preview
IDS
Les systèmes
de détection d’intrusion
© 2000 Datelec Networks SA 2
Objectifs du cours
Transfert d’information Sites Documents intéressants
Théorie et pratique
Hacking tools Security tools
Echange d’idées et d’expériences
© 2000 Datelec Networks SA 3
Schéma de la salle de test
© 2000 Datelec Networks SA 4
TCP/IP Basics: Transport Layer
© 2000 Datelec Networks SA 5
Transport Layer Protocols
Application
UDP TCP
ICMP IP
ARP RARP
Datalink
Physical
© 2000 Datelec Networks SA 6
Transport layer protocols At the transport layer we have 2 separate options :
UDP (User Datagram Protocol) - Provides a connectionless unreliable service .It allows data to be transmitted to a machine or group of machines without a need to establish a connection .There is no requirement for acknowledgment of the datagram arrived .Where broadcast is required , NFS may be the only choice .Used for example by : TFTP , NFS …
TCP (Transmission Control Protocol) - Provides a connection oriented service .A connection is like a data pipe running between 2 points only .There is no broadcast or multicast in TCP .TCP has all the necessary features to provide a reliable service between 2 computers .The reliability costs us in significant amount of overhead to manage acknowledgments , flow control , timers and connection management facilities .Applications that use TCP are : Telnet , FTP ...
© 2000 Datelec Networks SA 7
Ports
Both UDP and TCP use port addressing to deliver information to the relevant application layer services .
A port is a 16 bit address of which a number of well known ports have been defined .If application developers create a program to work over TCP or UDP , they have to define which port they wish to use .
There is a dynamic alternative to this fixed binding of ports .This service is called Portmapper (used by NFS for example) .It allows new ports to be defined and registered dynamically , or the port used by a particular service to be discovered on request .
SunRPC
SNMP TFTP SMTP FTP Telnet
UDP TCP
© 2000 Datelec Networks SA 8
Sockets
A socket is a concatenation of the IP address and the port number . The socket reference is unique , so it gives a unique identification of an
application layer service . Both UDP and TCP include the IP address and port number in their checksum
calculation , to ensure that a datagram arriving at a wrong host will not be accepted by it’s application layer .
Most application layer services allow multiple sessions and thus need to be able to differentiate between these sessions to ensure data is sent back to the appropriate computer .
Problem : 2 users from the same host are connected to the same application . Solution : Well known ports are used only by server applications .
Client applications select a unique port number that has not already been used .
© 2000 Datelec Networks SA 9
UDP
UDP adds little to the underlying IP service , other than dealing with the problem of passing data to the correct application .
Source port - The port number of the application layer service the datagram came from . Destination port - The port number , the datagram is intended to . Length - The length of the UDP datagram . Checksum - A checksum to protect the data carried by UDP .
Source Port Destination port
Length UDP checksum
Data
© 2000 Datelec Networks SA 10
TCP TCP adds reliability to IP , and , like UDP provides application layer addressing through
the use of ports . TCP is a connection - oriented protocol .
It is not only reliable , but before transmission can commence between 2 machines , a connection must be opened .When transmission finishes , the connection is closed .
The block of data which TCP passes to IP , including TCP header and application layer data is called a segment .
Adding reliability requires the following facilities : Error detection and correction Flow control Resequencing Removing duplicate segments
TCP adds these facilities by : Using sequence numbers to identify data Positive acknowledgments of data received in the correct sequence Retransmission of segments which have not been acknowledged within some time
limit
© 2000 Datelec Networks SA 11
The TCP header
Source Port Destination PortSequence Number
Acknowledgement Number
Data Offset Reserved Code Window
Checksum Urgent Pointer
Options Padding
Data
…
© 2000 Datelec Networks SA 12
The TCP header
Sequence number - 32 bitsIn most protocols that use sequence numbers for error control , the sequence numbers count segments as they are transmitted and received .In TCP the sequence numbers count octets within the transmission stream .The sequence number in the header of a segment identifies the position in the overall data stream of the first data octet in that segment .On connection setup , new sequence numbers are agreed by both nodes .
After a machine crash , new sequence numbers do not start at 0 .The sequence number is 32 bit , so that even in the fastest links the time taken for the same value of the counter to be valid again is very long .This means that any segment received with the same sequence number as one already acknowledged , can only be a duplicate .Duplicates can be freely discarded .
© 2000 Datelec Networks SA 13
Acknowledgment number - 32 bitsWhen a data sender receives a new value , it can dispose of data which was held for possible retransmission .The acknowledgment number is valid only if the ACK flag is set . The acknowledgment number is one greater then the octet number of the lastin sequence octet received .It is therefore the same as the sequence number that will be in the next segmentof immediately useful data .In TCP , it is possible to send a number of segments that have been received correctly, but have not been acknowledged because the critical segment , which is the next in sequence , has failed to arrive .The acknowledgment number cannot advance until this missing segment isn’t retransmitted .Data offsetMeasures the offset to the start of the application data field .
© 2000 Datelec Networks SA 14
FlagsUsed to indicate the validity of other fields and for connection control .There are 6 separate flags :
•URG - Indicates that the urgent pointer field is valid .Points to the octet in the data field which is the end of the urgent data .This is data that should be processed before any other data .It can be used even if the usual data is blocked from some reason , or to interrupt programs .•ACK - Indicates that the acknowledgment field is valid.•PSH - The push flag causes the remote TCP layer to pass this segment immediately to the application layer .In some situations such as character by character terminal operation the incoming segments must be passed to the application , and not wait till the buffer is full .•RST - The reset flag is used when all else failed .It indicates that an error has occurred and the connection should be forcibly closed .•SYN - The synchronize flag is used at the beginning of the connection between 2 nodes .•FYN - Used to terminate connections .When there is no more data to send by one of the connection sides it sends the FIN flag .When both ends send the FIN flag , the connection is closed .
© 2000 Datelec Networks SA 15
Window - 16 bit The window advertises the amount of buffer space this node allocated to this connection The other node must not send more unacknowledged data than the buffer space indicated .Checksum - 16 bitA basic check on header and data .Urgent pointer - 16 bitPoints to the end of data in the data field that is considered urgent .It is valid only if the URG flag is set .Options - variable lengthNormally there is only 1 option used with TCP and it’s :MMS (Maximum Segment Size) .It tells the destination TCP layer the maximum size of the segment (including TCPheader) .PaddingIf the options field is valid , padding ensures that the data starts on a 32 bit boundary , so that the data offset may correctly point to it .
© 2000 Datelec Networks SA 16
Connections setup phase
Node 128.1.0.1 Node 128.1.0.9
SYNSEQ 921 No ACK
SYNSEQ 302 ACK 922
SYNSEQ 922 ACK 303
SEQ=921ACK=?
SEQ=922ACK=303
SEQ=302ACK=?
SEQ=302ACK=922
SEQ=303ACK=922
© 2000 Datelec Networks SA 17
TCP ack’s for simple character echo with host
Node 128.1.0.1 Node 128.1.0.9SEQ 92 ACK=109 Data=C
SEQ 109 ACK 93 Data=C
SEQ 93 ACK 110
User types C
Node acknowledgesreciept of C(ACK=SEQ+1=109+1=110)
C
Host OS echoes back C and acknowledges receipt of C(ACK=SEQ+1=92+1=93)
OperatingSystem
C
© 2000 Datelec Networks SA 18
Sécurité informatique Buts recherchés
Confidentialité Intégrité des données Disponibilité des ressources
Périmètre de sécurité Interne Externe (Extranet) Externe (Internet) Dial-in (RAS)
Moyens Contrôle d’accès (Access control) Authentification - Identification Audit
© 2000 Datelec Networks SA 19
Une approche classique ...
Des routeurs (peut-être avec des ACLs) Un ou plusieurs firewalls Un contrôle plus ou moins régulier des fichiers logs Des procédures de login standards
Est ce suffisant ?
Peut-être pas ?
Pourquoi ?
Car de nombreuses vulnérabilités existent, qui peuvent être utilisées contre vous, parfois à votre insu.
© 2000 Datelec Networks SA 20
Les sites intéressants http://packetstorm.securify.com/index.shtml http://www.phrack.com/archive.html http://www.attrition.org/ http://www.rootshell.com/beta/exploits.html http://www.nswc.navy.mil/ISSEC/ http://www.insecure.org/ http://www.technotronic.com/ http://www.l0pht.com/ http://www.sans.org/newlook/home.htm http://www.hackers.com/index2.htm http://www.ntsecurity.net http://www.itprc.com/security.htm
© 2000 Datelec Networks SA 21
Les sites intéressants (suite) www.antionline.com http://www.cultdeadcow.com/ http://www.hackernews.com/ http://www.hackerwhacker.com/ http://black.box.sk/ http://www.securiteam.com/ http://www.securityfocus.com/ http://astalavista.box.sk/ http://www.securitysearch.net/ http://xforce.iss.net/ http://berlin.ccc.de/
© 2000 Datelec Networks SA 22
Articles intéressants http://www.phrack.com http://www.gocsi.com http://packetstorm.securify.com/papers/IDS/ http://www.net-security.org/ http://www.enteract.com/~lspitz/papers.html http://seclab.cs.ucdavis.edu/papers/ http://www.sri.com/publication/publications.html http://www.cert.org http://ciac.llnl.gov http://www.first.org
… et les flux de news underground ….
© 2000 Datelec Networks SA 23
Hacking:
Outils et méthodes
© 2000 Datelec Networks SA 24
Techniques de hacking Brute force - Password guessing Déni de service et “distributed denial of service” Spoofing Scanning - network mapping Attaques liées à la messagerie électronique Virus Chevaux de Troie Sniffing Attaques liées au language (CGI,Java,…) Faiblesses SNMP Vulnérabilité des OS Attaques par débordement de pile (buffer overflow) Ingénierie sociale Divers
© 2000 Datelec Networks SA 25
Brute force - Password guessing
Il s’agit, à l’aide de logiciels appropriés, d’essayer de deviner une combinaison userid / password valide.
Cette méthode peut être utilisée pour FTP, Telnet, POP3, IMAP, Netbios, HTTP, Cisco login et de manière générale tout protocole supportant une authentification interactive.
Trois méthodes sont généralement utilisées Force brutale (Brute force) Dictionnaire (avec des “wordlists” disponibles sur Internet) Hybride
© 2000 Datelec Networks SA 26
Brute force - Password guessing
Les outils à disposition Crack, Jack14 - Unix passwords L0phtcrack (avec readsmb) - NT, Glide - PWL files, Claymore
(Windows) Zipcrack - Protected zip files PGPCrack, Pop3Hack - Email, WebHack - WWW - Brutus -
Misc. AmiCrack - Bios cracker LPHCrack - SS et PWL cracker ExcelCrack - Excel cracker … et bien d’autres utilitaires en cherchant un peu
© 2000 Datelec Networks SA 27
Labo
Le classique incontournable : L0phtcrack Comment contourner (bypasser) le screensaver:
LHP Un nouveau venu - Brutus
Sur un serveur FTP ou Telnet Sur un routeur ou un switch Sur un serveur HTTP
© 2000 Datelec Networks SA 28
Déni de service Trois grandes catégories
Les “floodings” syn-flood log-flood data-flood
Les bombes Mail bombs UDP bomb
Les “dévoreurs” de ressources ou de bande passante smurf
et des divers ... Ping of death, land, teardrop, winnuke Ascend ou Cisco kill
© 2000 Datelec Networks SA 29
1. Client initiates a request to the server, “I want to talk.” (SYN)
SYN/ACK 2. Server replies, “I’m ready.” (SYN/ACK)
ACK
Client Server
Client Server
Client Server
I wantto talk
Let’sgo!
I’m ready
SYN
3. Client sends acknowledgment toestablish connection, “Let’s go!” (ACK)
Etablissement d’une session
© 2000 Datelec Networks SA 30
Client SYNSYN
SYNSYN
SYN/ACK
SYN/ACK
IP?IP?IP?
IP?
Server
Attaque SYNFLOOD
1 Client attacks server by sending a flood of SYN packets with a spoofed IP address.
2 Server tries to send SYN/ACK to unreachable IP.
3 ACK is not received from Client.
© 2000 Datelec Networks SA 31
Parade contre SYNFLOOD Soit au niveau du routeur
Commandes “intercept” - Cisco Enabling TCP intercept - ip tcp intercept list ACL number Setting the TCP intercept mode - ip tcp intercept mode {intercept¦watch} Setting the TCP intercept Drop mode - ip tcp interceptdrop-mode
{oldest¦random} Changing the tcp intercept timer - ip tcp intercept watch-timeout seconds Changing aggressive threshold - ip tcp intercept max-incomplete low (and
high) monitoring - show tcp intercept connections ¦ statistics
Soit au niveau du firewall Spécifique à chaque firewall
Soit via un système d’IDS qui va terminer la session
© 2000 Datelec Networks SA 32
Mail bombs
Une bombe e-mail consiste en une série de messages postés dans votre boite aux lettres.
Les logiciels de bombes e-mail automatisent le processus de bombardement.
Les plus connus Kaboom!3 Avalanche 3.6 UnaBomber Gatemail
Demo - Avalanche 3.6
© 2000 Datelec Networks SA 33
Broadcast echo address
Source address is spoofed to be
target’s address
Réseauintermédiaire
Attaquant
Cible
Many echo replies arereceived by the target,since most machines
on the intermediary networkrespond to the broadcast
Smurf
© 2000 Datelec Networks SA 34
Smurf (suite) Smurf est une attaque de « déni de service » qui affecte à la fois le
réseau cible et le réseau intermédiaire en raison du trafic qu’elle génère.
Conseil : Eviter de servir de réseau intermédiaire Pour cela , il faut bloquer les requêtes « echo broadcast » avant
qu ’elles ne soient traduites en level 2 broadcast (hardware)
Sur un routeur : no ip directed-broadcast
Les ACLs suivantes sont également utilisées pour bloquer ce type de trafic : access-list xxx deny ip any host 192.168.255.255 access-list xxx deny ip any host 192.168.0.0
© 2000 Datelec Networks SA 35
Internet
Buffer 65535
Assaillant Cible
Fragmentation
Réassemblagedes fragments
A partir d ’un shell Windows 95, « ping -l 65510 cible »
Ping of Death
© 2000 Datelec Networks SA 36
Land
Il s ’agit d ’une attaque dans laquelle l ’adresse source IP et l ’adresse de destination IP sont identiques, de même que les ports de source et de destination.Pour fonctionner, elle doit être émise sur un port ouvert et avec le flag SYN.A réception de ce type de paquet, certains systèmes stoppent (stack IP)
Filtre possible
ip[12:4] = ip[16:4] and ip[12:2] = ip[16:2]
© 2000 Datelec Networks SA 37
Teardrop
Le « fragment reassembly code »cherche à réaligner les fragments,mais il n ’y a pas assez de datadans le deuxième fragment
1er fragment - 36 bytes
24 350
offset end newoffset
2ndfrag
36 bytes
Memcpy (*dest, *src, len)
Unsigned int or unsigned longLen=end-newoffset < 0
© 2000 Datelec Networks SA 38
ICMP echo request or echo reply packet
Loki data dans le payload
Echo request
Echo reply
Attaquant:peut se logger sur le serveur
et lancer des commandes
Serveur:Répond aux requêtes
du client
Note: ce principe de tunnelingn’est pas limité à ICMP. Il seretrouve aussi avec HTTP etd ’autres protocoles.
Loki
© 2000 Datelec Networks SA 39
InternetRéseauinterne
192.168.0.0ACL 101 ACL 102
Blocage des requêtes écho en entrée et des réponses en sortie
access-list 101 deny icmp any 192.168.0.0 0.0.255.255 echoaccess-list 102 deny icmp 192.168.0.0 0.0.255.255 any echo-reply
Acceptation des requêtes écho en sortie et des réponses en entrée
access-list 101 permit icmp 192.168.0.0 0.0.255.255 any echoaccess-list 102 permit icmp any 192.168.0.0 0.0.255.255 echo-reply
Combattre les attaques ICMP
© 2000 Datelec Networks SA 40
Nouvelle forme de déni de service qui permet de concentrerdes attaques depuis n’importe quel point d’internet vers unecible prédéfinie.
Distributed denial of service
© 2000 Datelec Networks SA 41
Principe du DDOS
Documents relatifs au DDOS http://www.cert.org/reports/dsit_workshop.pdf http://packetstorm.securify.com/papers/contest/
Les attaques distribuéesne sont toutefois pas unenouveauté. Elles existent depuis longtempspour les outils de force bruteou de décryption
© 2000 Datelec Networks SA 42
Protection contre les DDOS
Trin00
Ports utilisés Attacker to master 27665/tcp Master to daemon 27444/udp Daemon to master 31335/udp
Recherche de chaîne de caractères : l44
© 2000 Datelec Networks SA 43
Labo “Deni de service”
IGMP Nuke (kill stack IP W98)RFPoison.exe (kill Windows NT 4.0 SP6a)
© 2000 Datelec Networks SA 44
Spoofing IP
Définition Il s ’agit d’une technique permettant à une machine d’être
authentifiée auprès d’une autre au moyen de paquets semblant
émaner d’une adresse source approuvée.
Étapes d’une attaque de spoofing Identifier la cible Immobiliser l’hôte dont l’adresse doit être usurpée Contrefaire l’adresse de l’hôte usurpé Se connecter à la cible en se faisant passer pour l’hôte usurpé Deviner le numéro de séquence exact demandé par la cible
© 2000 Datelec Networks SA 45
Spoofing IP (suite)
Moyens de lutte Sur le routeur Sur le firewall
Autres types de spoofing Spofing ARP ---> corruption du cache ARP Spoofing DNS --> corruption des tables de correspondances
Labo:
hunt.c (sur HP/UX et routeur Cisco)
© 2000 Datelec Networks SA 46
TCP port scanning
Utilisation d’un logiciel permettant de scanner un réseau afin de détecter les applications disponibles sur les systèmes découverts.
HTTP, IMAP, POP3, DNS, Netbios, SOCKS, Telnet, FTP ...
Scanning
© 2000 Datelec Networks SA 47
Scanning (suite)
Un “network scan” est facilement décelable si l’assaillant envoie des requêtes SYN sur le même port pour l’ensemble des machines.
Le hacker se contente dans ce cas d’analyser la réponse du système scanné.
Un RSET signifie que le service est inactif, une réponse SYN-ACK signifie que le service est actif.
Il est également possible de diagnostiquer un scan lorsqu’une capture de trafic montre un trafic régulier issu du même port source.
Le port source permet même parfois de définir le logiciel utilisé pour le scan.
© 2000 Datelec Networks SA 48
Scanning (suite)
Les derniers logiciels de scan permettent d’émettre des paquets avec des ports sources aléatoires, ce qui complique la détection.
Il existe de nombreuses méthodes de scan qui utilisent des combinaison de flags invalides afin de passer inapercues au yeux des systèmes de détection d’intrusion:
Par exemple SYN-FIN flags simultanés pour contourner (bypasser) les IDS qui ne tracent que SYN flag ou pour tester une machine Linux qui répond au SYN-FIN par un
SYN-FIN-ACK.
© 2000 Datelec Networks SA 49
Methodes de filtrageFiltre sur chaque flag (avec tcpdump par exemple)
X U A S FRPX Byte 13 of the TCP header
Syn flag set: tcp[13] & 0x02 != 0Ack flag set: tcp[13] & 0x10 != 0Rst flag set: tcp[13] & 0x04 != 0Fin flag set: tcp[13] & 0x01 != 0Psh flag set: tcp[13] & 0x08 != 0Urg flag set: tcp[13] & 0x20 != 0No flag set: tcp[13] & 0x3f != 0
Exemple de filtrage:tcp and (dst port 80) and (tcp[13] & 0x02 != 0) and (tcp[13] & 0x10 =0)
teste le SYN flag (set) et le ACK flag (no set)
Scanning (suite)
© 2000 Datelec Networks SA 50
Scanning (suite)
Comment bloquer un scan
Au niveau du routeur ; access-list 1xx permit tcp any 192.168.0.0 0.0.255.255 established Permet l’initialisation des connections in--> out, mais pas out-->in
Blocage au niveau d’un port particulier access-list 1xx deny tcp any 192.168.0.0. 0.0.255.255 eq 1999
D’une manière plus précise access-list 1xx permit tcp any host 192.168.2.2 eq 53 access-list 1xx permit tcp any host 192.168.1.1 eq 53 established access-list 1xx deny tcp any 192.168.0.0 0.0.255.255 eq 53
© 2000 Datelec Networks SA 51
Windows
• NTOScanner 1.26• 7th Spher Portscan• Hoppa PortScanner• YASP
Unix
• strobe• nmap• queso• domscan• Hping
Labo
NMAP (en mode étendu)
Les outils
Scanning (suite)
© 2000 Datelec Networks SA 52
Network mapping
Le contenu de cette page sera communiqué ultérieurement
© 2000 Datelec Networks SA 53
Attaques e-mail Outre les bombes e-mail (ou spamming), il existe d’autres
problèmes majeurs dans le domaine de la messagerie. Les liaisons de listes Le relais de courrier
Problème Attaques insidieuses qui nécessitent l’annulation de l’inscription à
chaque liste. Un logiciel de messagerie puissant
permettra également la mise en place de filtres Mesures à prendre
Filtres de courrier Plan d ’exclusion Fichiers de destruction (kill) Changer d ’adresse e-mail si rien d ’autre fonctionne
© 2000 Datelec Networks SA 54
Font partie des dispositifs destructeurs les plus dangereux. Outre le « déni de service », beaucoup d’entre eux occasionnent des
pertes de données, voire l’invalidation totale d’une machine Plusieurs types
MBR virus Virus de secteur d’amorçage Virus de fichiers Virus furtifs - Présente à l’OS des données non infectées Virus polymorphes - Se modifient lors de leur propagation (mutation)
Création de virus - kits en libre accès Virus Creation Laboratories Virus Factory Virus Creation 2000 Virus Construction set The Windows Virus Engine
Les virus
© 2000 Datelec Networks SA 55
Les chevaux de Troie Principe:
Un cheval de Troie est un programme (X) dissimulé à l’intérieur d’un autre programme (Y). Lors de l’activation du programme (Y), le programme (X) s’active également et ouvre des “portes dérobées” sur votre machine.
Infection: Téléchargement de logiciels sur des sites douteux Faux amis rencontrés sur le “Net” Médias déjà infectés
Conséquences courantes: Suppression de données Vol de données Mise en état instable de la station de travail Espionnage (sonore et visuel) Vol et/ou modification des mots de passe Divers
© 2000 Datelec Networks SA 56
Netbus Pro 6400Netbus 1.x 12346BackOrifice 31337Deep Throath 6670Master Paradise 31Millenium 20000Netmonitor 7306Socket23 30303Icq Trojen 4950Vodoo 1245
Stealth Spy 555Attack FTP 666Senna Spy 11000Progenic 11223Backdoor 1999Portal of Doom 9875AOL Trojan 1.1 30029Illusion Mailer 5521Bla 20331Kuang 2 17300
Aujourd’hui des CENTAINES de chevaux de Troie circulent.Il existe même des outils pour en générer sans programmation !!!
Liste non exhaustive
© 2000 Datelec Networks SA 57
Trojans & Trojan generators
Quelques outils
Netbus SubSeven MasterParadise Backorifice Trojan TCP Wrapper
Labo
SubSeven 2.1
© 2000 Datelec Networks SA 58
Sniffers
Programmes qui capturent les paquets qui circulent sur un réseau.
Initialement, outils de debugging permettant l’identification des problèmes.
Risques inhérents à l ’utilisation des sniffers: Capture des sessions Capture des identifiants utilisateurs et des mots de passe Bypass de certaines normes de sécurité
Sniffers commerciaux: NetXray, Microsoft Network Analyzer, HP Advisor,Shomiti Lan Analyzer, RadCom Analyzer, Triticom LanDecoder32, Network General Sniffer
Sniffers freeware: Esniff, Snoop, Gobbler, ETHLoad, NetMan, LinSniff, SunSniff
Des sniffers qui se cachent sous d’autres termes: Abirnet SessionWall
© 2000 Datelec Networks SA 59
Sniffers (suite)
Détection des sniffers Un sniffer est par principe difficile à détecter car il est
passif.
Deux méthodes sont possibles: Soit sur une machine: en utilisant une somme de contrôle des
fichiers (MD5) et en la comparant à la somme de contrôle initiale Soit dans un réseau : dans ce cas, il faudra prendre en compte
l’hétérogénéité des systèmes du réseau afin d ’entreprendre une démarche qui reste aléatoire
© 2000 Datelec Networks SA 60
Sniffers (suite)
Détection des sniffers
Outils permettant l ’aide à la détection: Snifftest NitWit Promisc
Autres précautions: Utiliser une topologie sécurisée (réseau switché, routeurs,…) Encrypter les sessions
© 2000 Datelec Networks SA 61
Sniffer (labo)
Abirnet (installation et utilisation) Snoop NetXray LinSniff
© 2000 Datelec Networks SA 62
Sécurité des langages : CGI
CGI permet aux serveurs Web de transmettre d’autres informations à des clients web que du simple affichage de texte ou de fichiers HTML.
Pour ce faire, CGI va utiliser des langages de programmation tels que : Perl Les shells C ou C++ TCL, etc…
© 2000 Datelec Networks SA 63
CGI (suite)
Il existe de nombreuses faiblesses dans les programmes CGI, qui peuvent être utilisées par un « hacker » pour exécuter des commandes sur le serveur avec l ’UID du serveur web. Exemples: CGI + Perl sans contrôle des chaînes de caractères rentrées par
l ’utilisateur Exécution de scripts en mode privilégiés Inclusion de documents sur le serveur via SSI <!…#exec
cmd=‘ commande ’ …>
© 2000 Datelec Networks SA 65
Sécurité des languages
Quelques outils Retina VoidEye CGIScan
Labo HTTP server guess CGI Check Retina Compromission d’un serveur (explication théorique)
© 2000 Datelec Networks SA 66
Problèmes liés à Java/ActiveX Java est-il potentiellement dangereux ?
Oui Peut-on le rendre inoffensif ?
Pas totalement Assiste-t-on à des améliorations en terme de sécurité ?
Oui (entre autre introduction de routines de cryptographie) Les risques réels
Deni de service (browsers ou % utilisation CPU) Compromission de DNS (via compromission du proxy) Vol de données (infos de login par exemple) Bogue de confidentialité Virus “java based”
© 2000 Datelec Networks SA 67
•Visite de http://metro.to/mladue/hostile-applets/index.html
•Demo de quelques applets Finjan
Problèmes liés à Java/ActiveX ActiveX permet à du code binaire quelconque d’être exécuté. Un composant ActiveX malveillant peut donc être écrit
pour supprimer ou modifier des fichiers sur le disque dur d’un utilisateur
ou pour effectuer des connexions avec d’autres ordinateurs à l’insu de l’utilisateur.
Risque de virus associé également.
© 2000 Datelec Networks SA 68
SNMP SNMP est utilisé pour la gestion des composants actifs d’un réseau Au travers de SNMP, il est possible d’obtenir des données
concernant: Hardware & software profile
Données dynamiques en temps réel Topologie de réseau
Données dynamiques en temps réel Données administratives
Données statiques définies manuellement.
Au travers de SNMP, il est donc possible de modifier les paramètres administratifs
L’accès aux variables est protégé par un “community name” )SNMP V1
© 2000 Datelec Networks SA 69
SNMP (suite) Prévention contre les attaques SNMP
Stratégie de mots de passe Filtrage du trafic SNMP Suppression du service SNMP sur les équipement ou il n’est pas utilisé
Outils Scotty BTT Software SNMP Trap Watcher remote DoS attack
Labo Mibrowser (routeur ou switch)
© 2000 Datelec Networks SA 70
Vulnérabilités des OS Windows NT
TCP sequence prediction Obtention des droits administrateurs DoS spécifiques NT/98/95
Unix Linux suze util pkg Solaris Solstice Internet Mail IMAP4 Server x86 exploit
Cisco Cisco 7xx password buffer overflow CISCO PIX Vulnerability, cracking the 48 bit DES Decrypts encrypted Cisco password files
Netware Perl.NLM - Netware 4.1x et IntranetWare Attaque du protocole de connexion Novell 3.12 DOS 100% CPU usage - Meltman
© 2000 Datelec Networks SA 71
Vulnérabilités des OS - Labo
Le contenu de cette page sera communiqué ultérieurement
© 2000 Datelec Networks SA 72
Définition Débordement de capacité du tampon mémoire utilisé en saisie. Une attaque basée sur un BoF va permettre l’obtention d’un shell ayant les
prérogatives de l’application à partir de laquelle il a été exécuté. Exemples récents
Cfingerd 1.3.3 (*BSD) remote root buffer overflow exploit CERN 3.0A Heap overflow War-ftpd for Windows95/98/NT is vulnerable to a buffer overflow in the MKD/CWD commands until version 1.71-0 Subseven 2.1a BoF causing it to quit quietly or crash
Certains outils de stress permettent la recherche systématique des BoF dans les applications
Blast NTO Scanner
Débordement de pile - BoF
© 2000 Datelec Networks SA 73
Divers Keyloggers
Souvent installé au travers d’un cheval de Troie. Permettent l’enregistrement des touches frappées sur une machine
client. Les keyloggers evolués transmettent de manière régulière les
fichiers ainsi capturés à l ’assaillant. Hooker - Key logger avec support SMTP Wardialer
Accès au réseau interne par une porte dérobée (modem, TA,…) Steganographie
C’est le moyen de communiquer en cachant des messages à l’intérieur de fichiers considérés comme inoffensifs, ceci de manière indétectable (sauf si …)
© 2000 Datelec Networks SA 74
Divers (suite) Démonstration:
Fichier source : winnt256.bmp 157 ’042 bytes Fichier à « cacher » : nc.exe 59 ’392 bytes Fichier résultat : test.bmp 157 ’042 bytes
Utilisation de compression, d ’encryption (IDEA) et d ’une « passphrase »
© 2000 Datelec Networks SA 75
Scanners de vulnérabilités
Hacking ou sécurité ?
Freeware/Shareware
Nessus NSS Satan Ogre Asmodeus
Produits commerciaux
Internet Security Scanner S3 Netsonar Axent Ballista IBM Network Scurity Auditor
© 2000 Datelec Networks SA 76
Labo Nessus ISS
Scanners de vulnérabilités
© 2000 Datelec Networks SA 77
Après les risques,
les mesures de précaution
© 2000 Datelec Networks SA 78
Systèmes de détection d’intrusion
Network based IDS Host based IDS Firewalls Honeypots
© 2000 Datelec Networks SA 79
Analyse des données capturéesVisualisation - Reporting
FW ou routeur
Internet
Réseauinterne
Supervision du trafic
Principe : Une ou plusieurs sondes qui réfèrent à une console
Network based IDS
© 2000 Datelec Networks SA 80
Caractéristiques des NIDS La plupart du temps, utilisés sur les points d’entrée-sortie du réseau Avantages
Faciles à mettre en oeuvre N’affectent pas le réseau (non obstrusive) En cas d’arrêt, pas d’incidence sur la connectivité
Inconvénients Les sondes sont limitées en termes de performance (high speed
networks) Impossibilité de détecter une attaque qui n’est pas dans le ruleset Ne détecte pas toujours la source des attaques (smurf, spoofing) Si le hacker tente une pénétration lente du réseau sur une longue
période, le NIDS ne pourra pas tout logger (taille des logs)
© 2000 Datelec Networks SA 81
Analyse des données capturéesVisualisation - Reporting
Internet
Réseauinterne
IDS host agent
Principe : Des agents sur les machines sensibles qui réfèrent à une console
FW/Router
Host based IDS
© 2000 Datelec Networks SA 82
Host based IDS
Sont apparus pour combler les limites des NIDS Réseaux à haute vitesse
Les NIDS ne vont guère au delà de 80-100 Mb/sec Exigent des plates-formes onéreuses pour maintenir les performances
Réseaux switchés Les NIDS fonctionnent avec des cartes en mode “promiscuous”, ce qui
n’est pas compatible avec les environnements switchés La détection dans le switch n’est pas encore disponible La réplication de ports a des limites
Besoin de sécurité/contrôle sur le réseau interne
Les hosts sur lesquels les agents IDS sont installés monitorent leurs propres connections réseau, mais aussi le status du file system .
Possibilité de reporting/alerting local, mais plus souvent centralisé
© 2000 Datelec Networks SA 83
Anomaly detection Il existe deux types de détections. Le premier est basé sur l’analyse
statistique du trafic et des anomalies constatées Thresholds (ex failed logins) Counters (file read per user) avec algorithmes de pondération
Avantages Plateforme moins “gourmande” em terme de mémoire Permet une adaptation dans le temps (période avec statistiques différentes) Simple à paramétrer pour certains types d’évènements (failed login)
Inconvénients Approche statistique pas toujours possible Comment définir la norme ? Hacker peuvent utiliser des méthodes non détectables Problème des personnes avec plusieurs logins Comment définir des seuils de manière pertinente ?
(expérience requise)
© 2000 Datelec Networks SA 84
Pattern matching Le deuxième type de détection fonctionne sur le même principe
qu’un AV en détection de signatures. Individuals patterns: événements, sequences d’événements, seuils, … Expressions (avec opérateurs) Combinaisons
Avantages Flexibilité - Choix du traffic à surveiller Plus efficace car n’est pas basé sur une analyse statistique
Inconvénients Evolution de la base de données des signatures Pas de langage de programmation (en général) - si disponible, peu
convivial Mise à jour différée --> sensible aux dernières attaques Pas d’apprentissage automatique
© 2000 Datelec Networks SA 85
Real time or interval based
Les scanners de vulnérabilités permettent la détection des failles de sécurité. Ils sont exécutés à intervalles plus ou moins réguliers (schedule) et donnent une image instantanée de la sécurité du réseau et des systems.
Limite: Il se peut qu’une faille soit découverte après qu’elle ait été exploitée par un hacker.
Il est donc préférable d’utiliser un moniteur en temps réel qui permettra une réaction immédiate, manuelle ou automatisée.
© 2000 Datelec Networks SA 86
Freeware/shareware Unix
TCP Wrappers Shadow CMDS
NT Nuke Nabber Syshield
Inetd.conf21 ftp23 telnet
21 TCP
Inetd.conf21 ftp23 telnet
Log accessCheck ACLcall inetd
21 TCP
Sans TCP Wrappers
Avec TCP Wrappers
Les outils disponibles
© 2000 Datelec Networks SA 87
Les outils commerciaux
ISS realsecure Cisco NetRanger Network Flight Recorder NAI Cybercop RSA Kane Platinum SessionWall-3 Axent Intruder Alert
© 2000 Datelec Networks SA 88
Labo - IDS tools
Nuke Nabber Utilisation
ISS RealSecure Concept
Installation Configuration Reporting
© 2000 Datelec Networks SA 89
Compléments aux IDS
Honeypots Machine qui sert de leurre. Abrite des services qui vont simuler une
cible réelle aux yeux des attaquants Permet l’obtention d’un log file avec la source IP, la dest. IP, le dest.
Port, la date, l’heure et différentes informations propres au process. Exemples:
Deception Toolkit NAI Cybercop Sting Recourse ManTrap
Firewalls FW-1 Lucent Firewall
Analyseurs de logs
© 2000 Datelec Networks SA 90
File integrity checking
FIREWALL NETWORK-BASEDINTRUSIONDETECTION
LOGANALYZER
TARGET-BASEDFILE INTEGRITYASSESSMENT
Labo : Tripwire
Compléments aux IDS (suite)
© 2000 Datelec Networks SA 91
How Does Tripwire Work?
10110011000010100
10001001111010100
10011111101000100
10000001011110101
11000100111011001
BeXtw+/deQsQ4EJApaF6RR
File content integrity assured using crypto-graphic signatures.
Cryptographic algorithmsproduce a fixed lengthsignature or “hash.”
© 2000 Datelec Networks SA 92
How Does Tripwire Work?
Database File
Policy File
= cryptographic
signature
From rules defined in a policy file, Tripwire createsa baseline database of the filesystem. It stores this baseline in the database file.
© 2000 Datelec Networks SA 93
=? ?Database File
System’s currentfile structure
= cryptographic
signature
How Does Tripwire Work?
The system can then be checkedagainst the baseline database forany unauthorized changes.
© 2000 Datelec Networks SA 94
How Does Tripwire Work?
Database File
=!
Report Viewer
Email containingreports
Syslog/Event Log
If a violation is found, reports can be emailed to administrators, dropped to syslog or be viewedfrom the machine being
monitored.
© 2000 Datelec Networks SA 95
Centralized Reporting
Specific Reports
Specific violations that occurred for each rule
Identifies what element changed
Different rules within each report
© 2000 Datelec Networks SA 96
Centralized Reporting Violations Report
List of violations for all open reports
Selection will bring up violation detail in right window
© 2000 Datelec Networks SA 97
Centralized ReportingSearch & Filter
Violation search based on minimum severity of 66
Selecting will bring up violation detail in right window
© 2000 Datelec Networks SA 98
TEC NT Console Interface
List of TEC Agents that are managed by TEC Console
Pie chart shows that all the Agents are up and running
© 2000 Datelec Networks SA 99
Gestion des incidentsRéponse automatique Interaction entre le système IDS et le routeur/firewall Drop connection Bloque l’adresse IP Risque cependant de DoS Problème d’interopérabilité entre les différents éléments de la plate-
forme IDS Travaux en cours sur un langage de gestion de l’information qui
permettrait l’interopérabilité : CIDF (common intrusion detection framework)
Réponse manuelle Définition du plan d’action Documentation de l’événement Enregistrement (si possible)
© 2000 Datelec Networks SA 100
Questions et réponses
Discussion
© 2000 Datelec Networks SA 101
Bibliographie
Tout livre ou référence utilisé pour l’élaboration de ce document est mentionné ci-dessous :
TCP/IP: Running a Successful NetworkKevin Washburn,Jim Evans / Hardcover / Addison Wesley Longman, Inc. / 1996
Recommended