SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
API Win32 ancestrales pourAPI Win32 ancestrales pour
Chevaux de Troie hyper furtifsChevaux de Troie hyper furtifs
JSSI 2004JSSI 2004
EricEric DETOISIENDETOISIEN
EyalEyal DOTANDOTAN
JSSI 2004JSSI 2004 22
SommaireSommaire
! Introduction
! Modèle de Communication
! Injection de Code
! API Hooking
! Démo finale
! Evolutions Possibles
! Prévention
! Conclusion
JSSI 2004JSSI 2004 33
IntroductionIntroduction
! Aujourd’hui il existe des méthodes plus ou moins fiables
pour sécuriser les réseaux des menaces extérieures
(firewalls, cryptage, authentification, …)
! Mais le maillon faible des systèmes d’information reste
encore et toujours à l’intérieur du réseau, c’est à dire le
poste client. Même si l’administrateur peut faire
confiance à ses utilisateurs, comment faire confiance aux
logiciels qui tournent sur leurs machines ?
JSSI 2004JSSI 2004 44
IntroductionIntroduction
! Les chevaux de Troie sont des outils d’attaque de plus
en plus utilisés. Ils sont redoutables pour ce qui est de
l’attaque des ordinateurs des particuliers.
! Mais la plupart des chevaux de Troie sont facilement
détectables et inefficaces dans des environnements
professionnels.
! Dans cette présentation, nous démontrerons qu’il est
parfaitement possible de mettre au point des chevaux de
Troie extrêmement furtifs en utilisant des techniques de
programmation Win32 connues depuis plus de 10 ans.
JSSI 2004JSSI 2004 55
IntroductionIntroduction
! Nous discuterons également des méthodes de prévention
et de l’éventuelle existence de tels programmes
d’attaque.
! Le but de cette présentation est de vous aider à mieux
connaître vos ennemis et le danger de ce qui va devenir
à notre avis la prochaine génération de chevaux de Troie
(publics) visant les réseaux d’entreprise.
JSSI 2004JSSI 2004 66
ModModèèle de Communicationle de Communication
! La communication est la première raison d’être d’un
cheval de Troie.
! Notre cheval de Troie communique avec le monde
extérieur via le protocole HTTP. Le cheval de Troie
vérifie régulièrement les ordres de l’attaquant en se
connectant sur un site WEB maintenu par l’attaquant.
JSSI 2004JSSI 2004 77
ModModèèle de Communicationle de Communication
! Les firewalls à l’entrée du
réseau voient les requêtes
HTTP initiées par le cheval
de Troie. Mais ils ne
peuvent pas faire la
différence avec des requêtes
légitimes d’un navigateur
WEB.
JSSI 2004JSSI 2004 88
ModModèèle de Communicationle de Communication
! Ce mécanisme de communication est simple, mais
efficace.
! Les tunnels HTTP ne sont pas des techniques nouvelles
(cf. HTTPTunnel, Setiri, webdownloader, …), mais les
chevaux de Troie fonctionnant ainsi sont plutôt rares.
(Pourquoi?)
! Il existe des APIs très simples permettant de générer des
requêtes HTTP. Ex: WININET.DLL
JSSI 2004JSSI 2004 99
Injection de CodeInjection de Code
Rappel sur les Desktop Firewalls :
JSSI 2004JSSI 2004 1010
Injection de CodeInjection de Code
Technique de contournement par injection :
JSSI 2004JSSI 2004 1111
Injection de CodeInjection de Code
! L’injection de code est une technique connue depuis 10
ans: "Load Your 32-bit DLL into Another Process's
Address Space Using INJLIB" - Jeffrey Richter (Mai
1994).
! L’injection de code directe, sans passer par DLL, est
plus difficile à programmer, mais plus furtive.
! Mais surtout : l’injection de code ne requiert pas de
privilèges particuliers. Tous les processus appartenant à
l’utilisateur peuvent être injectés.
JSSI 2004JSSI 2004 1212
Injection de CodeInjection de Code
! APIs d’injection de code:
! OpenProcess : Retourne un Handle vers le
processus cible.
! VirtualAllocEx : Alloue de la mémoire dans le
processus cible.
! WriteProcessMemory : Ecrit du code dans la
mémoire allouée.
! CreateRemoteThread : Exécute le code copié à
partir du processus visé.
JSSI 2004JSSI 2004 1313
Injection de CodeInjection de Code
Avantages pour un cheval de Troie
! Contournement de Desktop Firewalls en injectant une
application autorisée à se connecter.
! Peut tromper d’autres logiciels de surveillance de
comportement.
! Permet au cheval de Troie de modifier le comportement
des programmes injectés et d’intercepter ses APIs (cf
chapitre suivant).
JSSI 2004JSSI 2004 1414
Injection de CodeInjection de Code
Utilisation dans les programmes malveillants
Aujourd’hui il existe plusieurs programmes malveillants
utilisant la technique d’injection :
! BackStealth (proof of concept)
! Outils de tests Firewalls
! Optix, Beast et autres chevaux de Troie
! Keyloggers …
JSSI 2004JSSI 2004 1515
Injection de CodeInjection de Code
L’avenir de l’injection de code
! « Inject and die »: une fois que le cheval de Troie a
injecté son code, il peut se terminer et ainsi disparaître
du gestionnaire des tâches.
! Survie du thread injecté: une fois que le cheval de Troie
meurt, la survie du thread injecté dépend du processus
injecté.
! Solution: injecter tous les processus utilisateur, ainsi que
chaque nouveau processus créé.
JSSI 2004JSSI 2004 1616
Injection de CodeInjection de Code
Démo:
Injection,
Inject-and-die,
Injection multiple
JSSI 2004JSSI 2004 1717
APIAPI HookingHooking
! But : intercepter les appels API des programmes de la
machine.
! Technique connue depuis 10 ans: "Peering Inside the
PE" - Matt Pietrek (Mars 1994)
! Méthode la plus utilisée: IAT hooking (Import Address
Table) " Ne fonctionne pas bien dans un cheval de
Troie.
! Solution la plus efficace: API hooking par JMP
JSSI 2004JSSI 2004 1818
APIAPI HookingHooking
JSSI 2004JSSI 2004 1919
APIAPI HookingHooking
JSSI 2004JSSI 2004 2020
APIAPI HookingHooking
JSSI 2004JSSI 2004 2121
APIAPI HookingHooking
API hooking : Quel intérêt pour un « Trojan » ?
! Identifier les processus communiquants: hooker les APIs
de communication telles que connect. But : effectuer
des communications vers l’extérieur à partir de ces
programmes. (hook connect)
! Vol des e-mails entrants et sortants. Vol des mots de
passe POP3, proxy et serveur Socks. (hook de recv et
send)
! Espionnage et log des URL visitées et formulaires
d’authentification remplis sur le Web. (hook send)
JSSI 2004JSSI 2004 2222
APIAPI HookingHooking
API hooking: Quel intérêt pour un « Trojan » ?
! Fonctionnalités « Rootkit » : cacher les fichiers et clés
de registre du cheval de Troie. Le tout en mode user et…
sans privilèges d’administrateur!
! Intercepter CreateProcess pour rendre la survie du
thread plus efficace. Tout processus créé est directement
injecté.
! Interdire ou simuler les connexions vers les sites de mise
à jour de signature des anti-virus (attaque spécifique qui
varie selon l’anti-virus ciblé).
JSSI 2004JSSI 2004 2323
APIAPI HookingHooking
API hooking et « malware » aujourd’hui
! Certains programmes malveillants utilisent l’API
hooking, mais uniquement pour des fonctionnalités de
rootkit : Hacker Defender, Vanquish et autres rootkits.
L’avenir de l’API hooking dans les « malware »
! Hook d’APIs importantes : WinSock. Egalement
CreateProcess et LoadLibraryW, afin
d’effectuer les actions d’espionnage décrites.
! Pas d’injection de DLL
JSSI 2004JSSI 2004 2424
DDéémomo
Démo:
Cheval de Troie complet
JSSI 2004JSSI 2004 2525
AntiAnti--VirusVirus àà SignaturesSignatures
Anti anti-virus
! Ce genre de chevaux de Troie n’est pas conçu pour une
distribution à grande échelle. Ainsi, les anti-virus à
signature ne sont pas efficaces pour le contrer.
! Tout de même, si l’on part du principe qu’un anti-virus
connaîtra un jour la signature du cheval de Troie, celui-
ci peut lui échapper en introduisant une fonction d’auto-
update qui permet de recompiler un binaire différent et
le redéployer sur les postes infectés. Les signatures
d’anti-virus y seront alors inefficaces.
JSSI 2004JSSI 2004 2626
Evolutions PossiblesEvolutions Possibles
Injection & API Hooking
! Il est possible d’injecter du code sans utiliser
CreateRemoteThread.
! Inclure un calculateur de taille d’instruction dynamique
pour l’API Hooking.
Communication et protocoles
! Nous avons utilisé le protocole HTTP, mais bien
entendu il est possible de faire la même chose avec
d’autres protocoles tels que : DNS, FTP, SMTP.
! Espionnage de trafic crypté en SSL : Faisable!
JSSI 2004JSSI 2004 2727
PrPrééventionvention
! Théoriquement, ce genre de chevaux de Troie n’est pas
détectable à partir du moment où il y a exécution. Ainsi,
le meilleur moyen de lutter contre reste la prévention.
! La protection contre les chevaux de Troie, virus et vers
passe par les étapes suivantes :
JSSI 2004JSSI 2004 2828
PrPrééventionvention
1. Formation des utilisateurs contre le syndrome du
« je-clique-partout ».
2. Mise en place régulière de correctifs de sécurité.
3. Implémentation d’une politique de sécurité pour
les téléchargements et pièces jointes des e-mails.
4. Sécurisation du démarrage système (« startup »).
5. Protection des processus en mémoire.
6. Lorsque cela est possible, sécuriser les postes
clients contre les programmes non validés.
JSSI 2004JSSI 2004 2929
ConclusionConclusion
! Une fois exécuté, les possibilités d’un programme
malveillant sont quasiment illimitées. Et ce, en dépit des
firewalls réseau, firewall personnels et autres anti-virus.
! Question : puisque ces techniques existent depuis si
longtemps, pourquoi ne voit-on pas plus de tels chevaux
de Troie furtifs ?
! 1) Le fait que les plateformes Windows ont seulement
été unifiées récemment depuis Windows 2000.
JSSI 2004JSSI 2004 3030
ConclusionConclusion
! 2) Au vue de leur furtivité, il est difficile de savoir
s’ils se trouvent déjà sur des postes en production ou
pas.
! Quoi qu’il en soit, il faut s’attendre à une forte
augmentation dans le développement et l’utilisation de
ce genre de chevaux de Troie dans les mois et années à
venir.
! La probabilité de l’introduction d’un tel cheval de Troie
est forte avec le manque de vigilance actuelle (cf la
propagation des vers/virus)

Más contenido relacionado

La actualidad más candente (11)

Snort
SnortSnort
Snort
 
Owasp top 10 2010 Resist toulouse
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouse
 
IDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAUIDS,SNORT ET SÉCURITÉ RESEAU
IDS,SNORT ET SÉCURITÉ RESEAU
 
Conférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime MauchausséeConférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
 
Vulnérabilité des sites web
Vulnérabilité des sites webVulnérabilité des sites web
Vulnérabilité des sites web
 
Sécurité des applications web
Sécurité des applications webSécurité des applications web
Sécurité des applications web
 
Piratage informatique
Piratage informatiquePiratage informatique
Piratage informatique
 
Présentation de mon PFE
Présentation de mon PFEPrésentation de mon PFE
Présentation de mon PFE
 
La sécurité sur le web
La sécurité sur le webLa sécurité sur le web
La sécurité sur le web
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securite
 
20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatif20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatif
 

Destacado (20)

Backdoors et rootkits_avancees_[slides]
Backdoors et rootkits_avancees_[slides]Backdoors et rootkits_avancees_[slides]
Backdoors et rootkits_avancees_[slides]
 
Choix ceramique
Choix ceramiqueChoix ceramique
Choix ceramique
 
Backdoors et rootkits_avancees
Backdoors et rootkits_avanceesBackdoors et rootkits_avancees
Backdoors et rootkits_avancees
 
Equipe
EquipeEquipe
Equipe
 
monsanto 11-10-05d
monsanto 11-10-05dmonsanto 11-10-05d
monsanto 11-10-05d
 
monsanto 07-12-05b
  monsanto 07-12-05b  monsanto 07-12-05b
monsanto 07-12-05b
 
.monsanto 10-10-07
.monsanto 10-10-07.monsanto 10-10-07
.monsanto 10-10-07
 
.monsanto 2008_biotech_acres
.monsanto 2008_biotech_acres.monsanto 2008_biotech_acres
.monsanto 2008_biotech_acres
 
monsanto 11-10-05g
monsanto 11-10-05gmonsanto 11-10-05g
monsanto 11-10-05g
 
monsanto MON_06/25/04d
monsanto MON_06/25/04dmonsanto MON_06/25/04d
monsanto MON_06/25/04d
 
monsanto 09-20-05
monsanto 09-20-05monsanto 09-20-05
monsanto 09-20-05
 
.monsanto R_DPipelineReview
.monsanto R_DPipelineReview.monsanto R_DPipelineReview
.monsanto R_DPipelineReview
 
.monsanto 06-29-05
.monsanto 06-29-05.monsanto 06-29-05
.monsanto 06-29-05
 
.monsanto 03_10_09
.monsanto 03_10_09.monsanto 03_10_09
.monsanto 03_10_09
 
monsanto 02-17-05
monsanto 02-17-05monsanto 02-17-05
monsanto 02-17-05
 
.monsanto 04-04-07
.monsanto 04-04-07.monsanto 04-04-07
.monsanto 04-04-07
 
Curriculum vitae ac[1]
Curriculum vitae ac[1]Curriculum vitae ac[1]
Curriculum vitae ac[1]
 
monsanto 08-23-05b
monsanto 08-23-05bmonsanto 08-23-05b
monsanto 08-23-05b
 
Guide pratique pour l'auto construction au Maroc
Guide pratique pour l'auto construction au MarocGuide pratique pour l'auto construction au Maroc
Guide pratique pour l'auto construction au Maroc
 
monsanto 01-18-05
monsanto 01-18-05monsanto 01-18-05
monsanto 01-18-05
 

Similar a Api win32 ancestrales pour chevaux de troie hyper furtifs

Reverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le ProfitReverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le Profit
Soufiane Tahiri
 
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
michelcusin
 
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
Cyber Security Alliance
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1
Tarek MOHAMED
 

Similar a Api win32 ancestrales pour chevaux de troie hyper furtifs (20)

Barcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphiaBarcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphia
 
Reverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le ProfitReverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le Profit
 
unité 2.pptx
unité 2.pptxunité 2.pptx
unité 2.pptx
 
Securité web
Securité webSecurité web
Securité web
 
Quand les cybercriminels n’ont plus besoin de fuir les logiciels de sécurité
Quand les cybercriminels n’ont plus besoin de fuir les logiciels de sécuritéQuand les cybercriminels n’ont plus besoin de fuir les logiciels de sécurité
Quand les cybercriminels n’ont plus besoin de fuir les logiciels de sécurité
 
2011 02-08-ms tech-days-sdl-sgi-v02
2011 02-08-ms tech-days-sdl-sgi-v022011 02-08-ms tech-days-sdl-sgi-v02
2011 02-08-ms tech-days-sdl-sgi-v02
 
Présentation ransomware - Ivanti Interchange 2017
Présentation ransomware - Ivanti Interchange 2017Présentation ransomware - Ivanti Interchange 2017
Présentation ransomware - Ivanti Interchange 2017
 
Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016
 
La sécurité des applications avec ESAPI
La sécurité des applications avec ESAPILa sécurité des applications avec ESAPI
La sécurité des applications avec ESAPI
 
Sécuriter informatiques
Sécuriter informatiquesSécuriter informatiques
Sécuriter informatiques
 
Rapport Threat Intelligence Check Point du 25 juillet 2016
Rapport Threat Intelligence Check Point du 25 juillet 2016Rapport Threat Intelligence Check Point du 25 juillet 2016
Rapport Threat Intelligence Check Point du 25 juillet 2016
 
Tp securité des reseaux
Tp securité des reseauxTp securité des reseaux
Tp securité des reseaux
 
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
Comment les administrateurs de systèmes peuvent ils détecter les pirates info...
 
Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016
 
Présentation1.pptx
Présentation1.pptxPrésentation1.pptx
Présentation1.pptx
 
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
 
Projet de Securité Informatique.ppt
Projet de Securité Informatique.pptProjet de Securité Informatique.ppt
Projet de Securité Informatique.ppt
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1
 
Sécurité informatique
Sécurité informatiqueSécurité informatique
Sécurité informatique
 
Gestion des vulnérabilités dans l'IoT
Gestion des vulnérabilités dans l'IoTGestion des vulnérabilités dans l'IoT
Gestion des vulnérabilités dans l'IoT
 

Más de UltraUploader

01 le 10 regole dell'hacking
01   le 10 regole dell'hacking01   le 10 regole dell'hacking
01 le 10 regole dell'hacking
UltraUploader
 
00 the big guide sz (by dr.to-d)
00   the big guide sz (by dr.to-d)00   the big guide sz (by dr.to-d)
00 the big guide sz (by dr.to-d)
UltraUploader
 
[E book ita] php manual
[E book   ita] php manual[E book   ita] php manual
[E book ita] php manual
UltraUploader
 
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
UltraUploader
 
[Ebook ita - database] access 2000 manuale
[Ebook   ita - database] access 2000 manuale[Ebook   ita - database] access 2000 manuale
[Ebook ita - database] access 2000 manuale
UltraUploader
 
(E book) cracking & hacking tutorial 1000 pagine (ita)
(E book) cracking & hacking tutorial 1000 pagine (ita)(E book) cracking & hacking tutorial 1000 pagine (ita)
(E book) cracking & hacking tutorial 1000 pagine (ita)
UltraUploader
 
(Ebook ita - inform - access) guida al database access (doc)
(Ebook   ita - inform - access) guida al database access (doc)(Ebook   ita - inform - access) guida al database access (doc)
(Ebook ita - inform - access) guida al database access (doc)
UltraUploader
 
(Ebook computer - ita - pdf) fondamenti di informatica - teoria
(Ebook   computer - ita - pdf) fondamenti di informatica - teoria(Ebook   computer - ita - pdf) fondamenti di informatica - teoria
(Ebook computer - ita - pdf) fondamenti di informatica - teoria
UltraUploader
 
Broadband network virus detection system based on bypass monitor
Broadband network virus detection system based on bypass monitorBroadband network virus detection system based on bypass monitor
Broadband network virus detection system based on bypass monitor
UltraUploader
 
Botnetsand applications
Botnetsand applicationsBotnetsand applications
Botnetsand applications
UltraUploader
 
Bot software spreads, causes new worries
Bot software spreads, causes new worriesBot software spreads, causes new worries
Bot software spreads, causes new worries
UltraUploader
 
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
UltraUploader
 
Bird binary interpretation using runtime disassembly
Bird binary interpretation using runtime disassemblyBird binary interpretation using runtime disassembly
Bird binary interpretation using runtime disassembly
UltraUploader
 
Biologically inspired defenses against computer viruses
Biologically inspired defenses against computer virusesBiologically inspired defenses against computer viruses
Biologically inspired defenses against computer viruses
UltraUploader
 
Biological versus computer viruses
Biological versus computer virusesBiological versus computer viruses
Biological versus computer viruses
UltraUploader
 
Biological aspects of computer virology
Biological aspects of computer virologyBiological aspects of computer virology
Biological aspects of computer virology
UltraUploader
 
Biological models of security for virus propagation in computer networks
Biological models of security for virus propagation in computer networksBiological models of security for virus propagation in computer networks
Biological models of security for virus propagation in computer networks
UltraUploader
 

Más de UltraUploader (20)

1 (1)
1 (1)1 (1)
1 (1)
 
01 intro
01 intro01 intro
01 intro
 
01 le 10 regole dell'hacking
01   le 10 regole dell'hacking01   le 10 regole dell'hacking
01 le 10 regole dell'hacking
 
00 the big guide sz (by dr.to-d)
00   the big guide sz (by dr.to-d)00   the big guide sz (by dr.to-d)
00 the big guide sz (by dr.to-d)
 
[E book ita] php manual
[E book   ita] php manual[E book   ita] php manual
[E book ita] php manual
 
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
 
[Ebook ita - database] access 2000 manuale
[Ebook   ita - database] access 2000 manuale[Ebook   ita - database] access 2000 manuale
[Ebook ita - database] access 2000 manuale
 
(E book) cracking & hacking tutorial 1000 pagine (ita)
(E book) cracking & hacking tutorial 1000 pagine (ita)(E book) cracking & hacking tutorial 1000 pagine (ita)
(E book) cracking & hacking tutorial 1000 pagine (ita)
 
(Ebook ita - inform - access) guida al database access (doc)
(Ebook   ita - inform - access) guida al database access (doc)(Ebook   ita - inform - access) guida al database access (doc)
(Ebook ita - inform - access) guida al database access (doc)
 
(Ebook computer - ita - pdf) fondamenti di informatica - teoria
(Ebook   computer - ita - pdf) fondamenti di informatica - teoria(Ebook   computer - ita - pdf) fondamenti di informatica - teoria
(Ebook computer - ita - pdf) fondamenti di informatica - teoria
 
Broadband network virus detection system based on bypass monitor
Broadband network virus detection system based on bypass monitorBroadband network virus detection system based on bypass monitor
Broadband network virus detection system based on bypass monitor
 
Botnetsand applications
Botnetsand applicationsBotnetsand applications
Botnetsand applications
 
Bot software spreads, causes new worries
Bot software spreads, causes new worriesBot software spreads, causes new worries
Bot software spreads, causes new worries
 
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
Blended attacks exploits, vulnerabilities and buffer overflow techniques in c...
 
Blast off!
Blast off!Blast off!
Blast off!
 
Bird binary interpretation using runtime disassembly
Bird binary interpretation using runtime disassemblyBird binary interpretation using runtime disassembly
Bird binary interpretation using runtime disassembly
 
Biologically inspired defenses against computer viruses
Biologically inspired defenses against computer virusesBiologically inspired defenses against computer viruses
Biologically inspired defenses against computer viruses
 
Biological versus computer viruses
Biological versus computer virusesBiological versus computer viruses
Biological versus computer viruses
 
Biological aspects of computer virology
Biological aspects of computer virologyBiological aspects of computer virology
Biological aspects of computer virology
 
Biological models of security for virus propagation in computer networks
Biological models of security for virus propagation in computer networksBiological models of security for virus propagation in computer networks
Biological models of security for virus propagation in computer networks
 

Api win32 ancestrales pour chevaux de troie hyper furtifs

  • 1. API Win32 ancestrales pourAPI Win32 ancestrales pour Chevaux de Troie hyper furtifsChevaux de Troie hyper furtifs JSSI 2004JSSI 2004 EricEric DETOISIENDETOISIEN EyalEyal DOTANDOTAN
  • 2. JSSI 2004JSSI 2004 22 SommaireSommaire ! Introduction ! Modèle de Communication ! Injection de Code ! API Hooking ! Démo finale ! Evolutions Possibles ! Prévention ! Conclusion
  • 3. JSSI 2004JSSI 2004 33 IntroductionIntroduction ! Aujourd’hui il existe des méthodes plus ou moins fiables pour sécuriser les réseaux des menaces extérieures (firewalls, cryptage, authentification, …) ! Mais le maillon faible des systèmes d’information reste encore et toujours à l’intérieur du réseau, c’est à dire le poste client. Même si l’administrateur peut faire confiance à ses utilisateurs, comment faire confiance aux logiciels qui tournent sur leurs machines ?
  • 4. JSSI 2004JSSI 2004 44 IntroductionIntroduction ! Les chevaux de Troie sont des outils d’attaque de plus en plus utilisés. Ils sont redoutables pour ce qui est de l’attaque des ordinateurs des particuliers. ! Mais la plupart des chevaux de Troie sont facilement détectables et inefficaces dans des environnements professionnels. ! Dans cette présentation, nous démontrerons qu’il est parfaitement possible de mettre au point des chevaux de Troie extrêmement furtifs en utilisant des techniques de programmation Win32 connues depuis plus de 10 ans.
  • 5. JSSI 2004JSSI 2004 55 IntroductionIntroduction ! Nous discuterons également des méthodes de prévention et de l’éventuelle existence de tels programmes d’attaque. ! Le but de cette présentation est de vous aider à mieux connaître vos ennemis et le danger de ce qui va devenir à notre avis la prochaine génération de chevaux de Troie (publics) visant les réseaux d’entreprise.
  • 6. JSSI 2004JSSI 2004 66 ModModèèle de Communicationle de Communication ! La communication est la première raison d’être d’un cheval de Troie. ! Notre cheval de Troie communique avec le monde extérieur via le protocole HTTP. Le cheval de Troie vérifie régulièrement les ordres de l’attaquant en se connectant sur un site WEB maintenu par l’attaquant.
  • 7. JSSI 2004JSSI 2004 77 ModModèèle de Communicationle de Communication ! Les firewalls à l’entrée du réseau voient les requêtes HTTP initiées par le cheval de Troie. Mais ils ne peuvent pas faire la différence avec des requêtes légitimes d’un navigateur WEB.
  • 8. JSSI 2004JSSI 2004 88 ModModèèle de Communicationle de Communication ! Ce mécanisme de communication est simple, mais efficace. ! Les tunnels HTTP ne sont pas des techniques nouvelles (cf. HTTPTunnel, Setiri, webdownloader, …), mais les chevaux de Troie fonctionnant ainsi sont plutôt rares. (Pourquoi?) ! Il existe des APIs très simples permettant de générer des requêtes HTTP. Ex: WININET.DLL
  • 9. JSSI 2004JSSI 2004 99 Injection de CodeInjection de Code Rappel sur les Desktop Firewalls :
  • 10. JSSI 2004JSSI 2004 1010 Injection de CodeInjection de Code Technique de contournement par injection :
  • 11. JSSI 2004JSSI 2004 1111 Injection de CodeInjection de Code ! L’injection de code est une technique connue depuis 10 ans: "Load Your 32-bit DLL into Another Process's Address Space Using INJLIB" - Jeffrey Richter (Mai 1994). ! L’injection de code directe, sans passer par DLL, est plus difficile à programmer, mais plus furtive. ! Mais surtout : l’injection de code ne requiert pas de privilèges particuliers. Tous les processus appartenant à l’utilisateur peuvent être injectés.
  • 12. JSSI 2004JSSI 2004 1212 Injection de CodeInjection de Code ! APIs d’injection de code: ! OpenProcess : Retourne un Handle vers le processus cible. ! VirtualAllocEx : Alloue de la mémoire dans le processus cible. ! WriteProcessMemory : Ecrit du code dans la mémoire allouée. ! CreateRemoteThread : Exécute le code copié à partir du processus visé.
  • 13. JSSI 2004JSSI 2004 1313 Injection de CodeInjection de Code Avantages pour un cheval de Troie ! Contournement de Desktop Firewalls en injectant une application autorisée à se connecter. ! Peut tromper d’autres logiciels de surveillance de comportement. ! Permet au cheval de Troie de modifier le comportement des programmes injectés et d’intercepter ses APIs (cf chapitre suivant).
  • 14. JSSI 2004JSSI 2004 1414 Injection de CodeInjection de Code Utilisation dans les programmes malveillants Aujourd’hui il existe plusieurs programmes malveillants utilisant la technique d’injection : ! BackStealth (proof of concept) ! Outils de tests Firewalls ! Optix, Beast et autres chevaux de Troie ! Keyloggers …
  • 15. JSSI 2004JSSI 2004 1515 Injection de CodeInjection de Code L’avenir de l’injection de code ! « Inject and die »: une fois que le cheval de Troie a injecté son code, il peut se terminer et ainsi disparaître du gestionnaire des tâches. ! Survie du thread injecté: une fois que le cheval de Troie meurt, la survie du thread injecté dépend du processus injecté. ! Solution: injecter tous les processus utilisateur, ainsi que chaque nouveau processus créé.
  • 16. JSSI 2004JSSI 2004 1616 Injection de CodeInjection de Code Démo: Injection, Inject-and-die, Injection multiple
  • 17. JSSI 2004JSSI 2004 1717 APIAPI HookingHooking ! But : intercepter les appels API des programmes de la machine. ! Technique connue depuis 10 ans: "Peering Inside the PE" - Matt Pietrek (Mars 1994) ! Méthode la plus utilisée: IAT hooking (Import Address Table) " Ne fonctionne pas bien dans un cheval de Troie. ! Solution la plus efficace: API hooking par JMP
  • 18. JSSI 2004JSSI 2004 1818 APIAPI HookingHooking
  • 19. JSSI 2004JSSI 2004 1919 APIAPI HookingHooking
  • 20. JSSI 2004JSSI 2004 2020 APIAPI HookingHooking
  • 21. JSSI 2004JSSI 2004 2121 APIAPI HookingHooking API hooking : Quel intérêt pour un « Trojan » ? ! Identifier les processus communiquants: hooker les APIs de communication telles que connect. But : effectuer des communications vers l’extérieur à partir de ces programmes. (hook connect) ! Vol des e-mails entrants et sortants. Vol des mots de passe POP3, proxy et serveur Socks. (hook de recv et send) ! Espionnage et log des URL visitées et formulaires d’authentification remplis sur le Web. (hook send)
  • 22. JSSI 2004JSSI 2004 2222 APIAPI HookingHooking API hooking: Quel intérêt pour un « Trojan » ? ! Fonctionnalités « Rootkit » : cacher les fichiers et clés de registre du cheval de Troie. Le tout en mode user et… sans privilèges d’administrateur! ! Intercepter CreateProcess pour rendre la survie du thread plus efficace. Tout processus créé est directement injecté. ! Interdire ou simuler les connexions vers les sites de mise à jour de signature des anti-virus (attaque spécifique qui varie selon l’anti-virus ciblé).
  • 23. JSSI 2004JSSI 2004 2323 APIAPI HookingHooking API hooking et « malware » aujourd’hui ! Certains programmes malveillants utilisent l’API hooking, mais uniquement pour des fonctionnalités de rootkit : Hacker Defender, Vanquish et autres rootkits. L’avenir de l’API hooking dans les « malware » ! Hook d’APIs importantes : WinSock. Egalement CreateProcess et LoadLibraryW, afin d’effectuer les actions d’espionnage décrites. ! Pas d’injection de DLL
  • 24. JSSI 2004JSSI 2004 2424 DDéémomo Démo: Cheval de Troie complet
  • 25. JSSI 2004JSSI 2004 2525 AntiAnti--VirusVirus àà SignaturesSignatures Anti anti-virus ! Ce genre de chevaux de Troie n’est pas conçu pour une distribution à grande échelle. Ainsi, les anti-virus à signature ne sont pas efficaces pour le contrer. ! Tout de même, si l’on part du principe qu’un anti-virus connaîtra un jour la signature du cheval de Troie, celui- ci peut lui échapper en introduisant une fonction d’auto- update qui permet de recompiler un binaire différent et le redéployer sur les postes infectés. Les signatures d’anti-virus y seront alors inefficaces.
  • 26. JSSI 2004JSSI 2004 2626 Evolutions PossiblesEvolutions Possibles Injection & API Hooking ! Il est possible d’injecter du code sans utiliser CreateRemoteThread. ! Inclure un calculateur de taille d’instruction dynamique pour l’API Hooking. Communication et protocoles ! Nous avons utilisé le protocole HTTP, mais bien entendu il est possible de faire la même chose avec d’autres protocoles tels que : DNS, FTP, SMTP. ! Espionnage de trafic crypté en SSL : Faisable!
  • 27. JSSI 2004JSSI 2004 2727 PrPrééventionvention ! Théoriquement, ce genre de chevaux de Troie n’est pas détectable à partir du moment où il y a exécution. Ainsi, le meilleur moyen de lutter contre reste la prévention. ! La protection contre les chevaux de Troie, virus et vers passe par les étapes suivantes :
  • 28. JSSI 2004JSSI 2004 2828 PrPrééventionvention 1. Formation des utilisateurs contre le syndrome du « je-clique-partout ». 2. Mise en place régulière de correctifs de sécurité. 3. Implémentation d’une politique de sécurité pour les téléchargements et pièces jointes des e-mails. 4. Sécurisation du démarrage système (« startup »). 5. Protection des processus en mémoire. 6. Lorsque cela est possible, sécuriser les postes clients contre les programmes non validés.
  • 29. JSSI 2004JSSI 2004 2929 ConclusionConclusion ! Une fois exécuté, les possibilités d’un programme malveillant sont quasiment illimitées. Et ce, en dépit des firewalls réseau, firewall personnels et autres anti-virus. ! Question : puisque ces techniques existent depuis si longtemps, pourquoi ne voit-on pas plus de tels chevaux de Troie furtifs ? ! 1) Le fait que les plateformes Windows ont seulement été unifiées récemment depuis Windows 2000.
  • 30. JSSI 2004JSSI 2004 3030 ConclusionConclusion ! 2) Au vue de leur furtivité, il est difficile de savoir s’ils se trouvent déjà sur des postes en production ou pas. ! Quoi qu’il en soit, il faut s’attendre à une forte augmentation dans le développement et l’utilisation de ce genre de chevaux de Troie dans les mois et années à venir. ! La probabilité de l’introduction d’un tel cheval de Troie est forte avec le manque de vigilance actuelle (cf la propagation des vers/virus)