Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.

Chercher :
Newsletter :  


Revues :
- Presse
- Presse FR
- Vidéos
- Twitter
- Secuobs





Sommaires :
- Tendances
- Failles
- Virus
- Concours
- Reportages
- Acteurs
- Outils
- Breves
- Infrastructures
- Livres
- Tutoriels
- Interviews
- Podcasts
- Communiques
- USBsploit
- Commentaires


Revue Presse:
- Tous
- Francophone
- Par mot clé
- Par site
- Le tagwall


Top bi-hebdo:
- Ensemble
- Articles
- Revue
- Videos
- Twitter
- Auteurs


Articles :
- Par mot clé
- Par auteur
- Par organisme
- Le tagwall


Videos :
- Toutes
- Par mot clé
- Par site
- Le tagwall


Twitter :
- Tous
- Par mot clé
- Par compte
- Le tagwall


Commentaires :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques


RSS/XML :
- Articles
- Commentaires
- Revue
- Revue FR
- Videos
- Twitter


RSS SecuObs :
- sécurité
- exploit
- windows
- attaque
- outil
- microsoft


RSS Revue :
- security
- microsoft
- windows
- hacker
- attack
- network


RSS Videos :
- curit
- security
- biomet
- metasploit
- biometric
- cking


RSS Twitter :
- security
- linux
- botnet
- attack
- metasploit
- cisco


RSS Comments :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques


RSS OPML :
- Français
- International











Revue de presse francophone :
- Appaloosa AppDome nouent un partenariat pour accompagner les entreprises dans le déploiement et la protection des applications mobiles
- D-Link offre une avec un routeur VPN sans fil AC
- 19 mai Paris Petit-Déjeuner Coreye Développer son business à l'abri des cyberattaques
- POYNTING PRESENTE LA NOUVELLE ANTENNE OMNI-291, SPECIALE MILIEU MARITIME, CÔTIER ET MILIEU HUMIDE
- Flexera Software Les utilisateurs français de PC progressent dans l'application de correctifs logiciels, mais des défis de tailles subsistent
- Riverbed lance SD-WAN basé sur le cloud
- Fujitsu multi-récompensé VMware lui décerne plusieurs Partner Innovation Awards à l'occasion du Partner Leadership Summit
- Zscaler Private Access sécuriser l'accès à distance en supprimant les risques inhérents aux réseaux privés virtuels
- QNAP annonce la sortie de QTS 4.2.1
- Une enquête réalisée par la société de cyber sécurité F-Secure a décelé des milliers de vulnérabilités graves, potentiellement utilisables par des cyber criminels pour infiltrer l'infrastru
- Trouver le juste équilibre entre une infrastructure dédiée et cloud le dilemme de la distribution numérique
- 3 juin - Fleurance - Cybersécurité Territoires
- Cyber-assurances Seules 40 pourcents des entreprises françaises sont couvertes contre les violations de sécurité et les pertes de données
- Des étudiants de l'ESIEA inventent CheckMyHTTPS un logiciel qui vérifie que vos connexions WEB sécurisées ne sont pas interceptées
- Les produits OmniSwitch d'Alcatel-Lucent Enterprise ALE gagnent en sécurité pour lutter contre les cyber-attaques modernes

Dernier articles de SecuObs :
- DIP, solution de partage d'informations automatisée
- Sqreen, protection applicative intelligente de nouvelle génération
- Renaud Bidou (Deny All): "L'innovation dans le domaine des WAFs s'oriente vers plus de bon sens et d'intelligence, plus de flexibilité et plus d'ergonomie"
- Mises à jour en perspective pour le système Vigik
- Les russes ont-ils pwn le système AEGIS ?
- Le ministère de l'intérieur censure une conférence au Canada
- Saut d'air gap, audit de firmware et (in)sécurité mobile au programme de Cansecwest 2014
- GCHQ: Le JTRIG torpille Anonymous qui torpille le JTRIG (ou pas)
- #FIC2014: Entrée en territoire inconnu
- Le Sénat investit dans les monnaies virtuelles

Revue de presse internationale :
- VEHICLE CYBERSECURITY DOT and Industry Have Efforts Under Way, but DOT Needs to Define Its Role in Responding to a Real-world Attack
- Demand letter served on poll body over disastrous Comeleak breach
- The Minimin Aims To Be The Simplest Theremin
- Hacking group PLATINUM used Windows own patching system against it
- Hacker With Victims in 100 Nations Gets 7 Years in Prison
- HPR2018 How to make Komboucha Tea
- Circuit Bender Artist bends Fresnel Lens for Art
- FBI Director Suggests iPhone Hacking Method May Remain Secret
- 2016 Hack Miami Conference May 13-15, 2016
- 8-bit Video Wall Made From 160 Gaming Keyboards
- In An Era Of Decline, News Sites Can t Afford Poor Web Performance
- BeautifulPeople.com experiences data breach 1m affected
- Swedish Air Space Infringed, Aircraft Not Required
- Why cybercriminals attack healthcare more than any other industry
- Setting the Benchmark in the Network Security Forensics Industry

Annuaire des videos
- FUZZING ON LINE PART THREE
- Official Maltego tutorial 5 Writing your own transforms
- Official Maltego tutorial 6 Integrating with SQL DBs
- Official Maltego tutorial 3 Importing CSVs spreadsheets
- install zeus botnet
- Eloy Magalhaes
- Official Maltego tutorial 1 Google s websites
- Official Maltego tutorial 4 Social Networks
- Blind String SQL Injection
- backdoor linux root from r57 php shell VPS khg crew redc00de
- How To Attaque Pc With Back Track 5 In Arabique
- RSA Todd Schomburg talks about Roundup Ready lines available in 2013
- Nessus Diagnostics Troubleshooting
- Panda Security Vidcast Panda GateDefender Performa Parte 2 de 2
- MultiPyInjector Shellcode Injection

Revue Twitter
- RT @fpalumbo: Cisco consistently leading the way ? buys vCider to boost its distributed cloud vision #CiscoONE
- @mckeay Looks odd... not much to go on (prob some slideshow/vid app under Linux)
- [SuggestedReading] Using the HTML5 Fullscreen API for Phishing Attacks
- RT @BrianHonan: Our problems are not technical but cultural. OWASP top 10 has not changed over the years @joshcorman #RSAC
- RT @mikko: Wow. Apple kernels actually have a function called PE_i_can_has_debugger:
- [Blog Spam] Metasploit and PowerShell payloads
- PinkiePie Strikes Again, Compromises Google Chrome in Pwnium Contest at Hack in the Box: For the second time thi...
- @mikko @fslabs y'all wldn't happen to have lat/long data sets for other botnets, wld you? Doing some research (free/open info rls when done)
- RT @nickhacks: Want to crash a remote host running Snow Leopard? Just use: nmap -P0 -6 --script=targets-ipv6-multicast-mld #wishiwaskidding
- An inexpensive proxy service called is actually a front for #malware distribution -

Mini-Tagwall
Revue de presse : security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone

+ de mots clés pour la revue de presse

Annuaires des videos : curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit

+ de mots clés pour les videos

Revue Twitter : security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall

+ de mots clés pour la revue Twitter

Top bi-hebdo des articles de SecuObs
- [Ettercap – Partie 2] Ettercap par l'exemple - Man In the Middle et SSL sniffing
- [Infratech - release] version 0.6 de Bluetooth Stack Smasher
- [IDS Snort Windows – Partie 2] Installation et configuration
- [Infratech - vulnérabilité] Nouvelle version 0.8 de Bluetooth Stack Smasher
- Mises à jour en perspective pour le système Vigik
- USBDumper 2 nouvelle version nouvelles fonctions !
- EFIPW récupère automatiquement le mot de passe BIOS EFI des Macbook Pro avec processeurs Intel
- La sécurité des clés USB mise à mal par USBDUMPER
- Une faille critique de Firefox expose les utilisateurs de Tor Browser Bundle
- Installation sécurisée d'Apache Openssl, Php4, Mysql, Mod_ssl, Mod_rewrite, Mod_perl , Mod_security

Top bi-hebdo de la revue de presse
- StackScrambler and the Tale of a Packet Parsing Bug

Top bi-hebdo de l'annuaire des videos
- DC++ Botnet. How To DDos A Hub With Fake IPs.
- Comment creer un server botnet!!!!(Réseau de pc zombies)
- Defcon 14 Hard Drive Recovery Part 3

Top bi-hebdo de la revue Twitter
- RT @secureideas: I believe that all the XSS flaws announced are fixed in CVS. Will test again tomorrow if so, release 1.4.3. #BASESnort
- Currently, we do not support 100% of the advanced PDF features found in Adobe Reader... At least that's a good idea.
- VPN (google): German Foreign Office Selects Orange Business for Terrestrial Wide: Full
- @DisK0nn3cT Not really, mostly permission issues/info leak...they've had a couple of XSS vulns but nothing direct.
- Swatting phreaker swatted and heading to jail: A 19-year-old American has been sentenced to eleven years in pris..
- RT @fjserna You are not a true hacker if the calc.exe payload is not the scientific one... infosuck.org/0x0035.png

Top des articles les plus commentés
- [Metasploit 2.x – Partie 1] Introduction et présentation
- Microsoft !Exploitable un nouvel outil gratuit pour aider les développeurs à évaluer automatiquement les risques
- Webshag, un outil d'audit de serveur web
- Les navigateurs internet, des mini-systèmes d’exploitation hors de contrôle ?
- Yellowsn0w un utilitaire de déblocage SIM pour le firmware 2.2 des Iphone 3G
- CAINE un Live[CD|USB] pour faciliter la recherche légale de preuves numériques de compromission
- Nessus 4.0 placé sous le signe de la performance, de l'unification et de la personnalisation
- [Renforcement des fonctions de sécurité du noyau Linux – Partie 1] Présentation
- [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- Origami pour forger, analyser et manipuler des fichiers PDF malicieux

Tutoriels

English version with Google Translate

[Sécurité avec Microsoft Internet Explorer – Partie 6] Prise de contrôle du filtre d'exceptions critiques

Par Krysztof Kozlowski, hakin9
Le 22/10/2007


Résumé : Cette partie aborde les exceptions et la gestion des filtres d'exceptions critiques ainsi que différentes méthodes disponibles pour les contourner et les utiliser à son propre compte. Retrouvez également l'exploit Metasploit relatif à l'exploitation et au contournement de ces filtres. - Lire l'article



A l'époque la seule manière pratique de prendre le contrôle du filtre UEF consistait à forcer les appels de kernel32!SetUnhandledExceptionFilter. Ceci résultait directement du fait que la variable globale contenait un pointeur décodé. Il était donc possible de forcer une redirection directe du code au kernel32!SetUnhandledExceptionFilter mais cette opération nécessitait d'utiliser d'autres faiblesses de l'application.

Vu ces restrictions, il fallait faire plus attention au processus chargé d'inscrire et de désinscrire les exceptions. Puisque les liaisons entre les filtres étaient faibles, il était possible de faire en sorte que la chaîne soit inutile ou inutilisable ; ce dont on pouvait alors se servir. Le processus d'inscription et de désinscription des exceptions dans le filtre du haut niveau (UEF) devait être symétrique.





Que se passait t-il s'il n'était pas symétrique ?

On inscrivait dans un premier temps Wx et Dx. Wx était désinscrit avant Dx et l'opération deviennent ainsi asymétrique. Par conséquent, UEF était paramétré sur Ux bien que d'un point de vue technique Dx devait toujours faire partie de la chaîne. Finalement, Dx se désinscrivait en paramétrant le plus haut niveau pour Wx, bien que Wx ait été désinscrit. C'était un comportement erroné mais le code lié à Dx ne savait pas que Wx avait déjà été désinscrit.

Dans le cas d'une inscription asymétrique, l'attaquant pouvait prendre le contrôle sur l'UEF de haut niveau ; remarquez que ceci se passait au moment même du chargement et de la libération des DLL ( lien ). Dans un tel cas, après la désinscription, la bibliothèque liée à un UEF donné était libérée. Cette opération laissait UEF paramétré à Wx qui indiquait un espace de mémoire erroné. Si l'exception apparaissait après une telle situation et n'était pas gérée, le filtre d'exceptions était alors appelé. Si le système était dépourvu du débogueur, on appelait UEF Wx. Et puisque Wx indiquait l'espace de mémoire, lié à aucune DLL, le processus était terminé dans le meilleur des cas.

L'attaquant n'attendait que cela pour agir, il essayait alors d'utiliser la mémoire pour stocker le code spécialement préparé. En cas de l'appel de la fonction qui se trouvait à cette place dans la mémoire, le code de l'attaquant s'exécutait. De plus, la seule chose à faire de la part de l'attaquant pour que la fonction soit appelée consistait à générer une exception. Tout cela était aisé avec Microsoft Internet Explorer, une technique consistait à forcer les bibliothèques DLL à se charger et à se libérer ; cette méthode consistait en la manipulation de la gestion d'objets COM au niveau du navigateur.

Comme pour l'exemple précédent, on utilisait ici newActiveXObject de JavaScript ou la balise HTML OBJECT ; dans tous les cas, au moment d'appeler l'objet COM, la bibliothèque DLL liée à l'objet était appelée à la seule condition de créer l'objet à l'aide de INPROC _ SERVER. Dans un pareil cas, l'objet DllMain était appelé. Si la bibliothèque DLL était dotée d'un filtre d'exceptions critiques, elle pouvait être enregistrée lors de l'initialisation CRT ; avec cette technique, un ensemble approprié UEF était également présent tant que l'objet COM était lié à la bibliothèque.

Le contrôle de l'étape de désinscription était également indispensable. Il fallait modifier la manière de libérer la DLL. On pouvait l'obtenir via ole32!CoFreeUnusedLibrarIEsEx. Elle était appelée au moment de fermer Internet Explorer grâce à DllCanUnloadNow qui était alors transmis aux bibliothèques. S'il retournait la valeur S_OK, il n'y avait alors aucune liaison en cours aux objets COM dont étaient responsables les bibliothèques.

Exemple : deux fenêtres ouvertes, chacune d'entre elles contenait les bibliothèques DLL enregistrées qui implémentaient les objets COM. La première fenêtre présente COMObject1 implémenté par DLL #1 ; lorsque la bibliothèque DLL #1 était chargée, elle inscrivait UEF Wx du plus haut niveau, une fois cette opération effectuée, la deuxième fenêtre s'ouvrait avec COMObject2 qui chargeait DLL #2 et inscrivait en même temps UEF, Dx. Une fois toutes ces opérations effectuées, DLL #1 et DLL #2 restaient toujours dans la mémoire et l'UEF du haut niveau indiquait Dx.

Afin de prendre le contrôle sur UEF, Wx et Dx, il fallait les désinscrire de manière asymétrique ; pour se faire, DLL #1 devait être libérée avant DLL #2. On pouvait obtenir cet état en fermant la fenêtre avec COMObject1 ; cette opération appelait ole32!CoFreeUnusedLibrarIEsEx et libèrait DLL #1. En suivant ce chemin, il fallait donc fermer la fenêtre COMObject2 pour libérer DLL #2. Une fois le processus terminé, Wx devenait UEF bien que sa bibliothèque ait été libérée ; si une exception apparaissait, elle appelait une fonction qui indiquait un espace de mémoire erroné.

L'attaquant pouvait alors prendre le contrôle sur le filtre UEF mais il lui fallait encore travailler à mettre le code à la place de Wx. On pouvait le faire avec la technique dite du heap spraying, bien connue dans le domaine de l'utilisation des faiblesses des navigateurs web. L'objectif de cette technique consistait à utiliser une quantité adéquate de la mémoire pour augmenter la mémoire tampon à un endroit approprié. Les données, ici le code de l'attaquant, permettaient de prendre le contrôle sur l'exécution du code ; il existait toutefois une certaine limitation liée au fait que l'emplacement des données dans la mémoire pouvait ne pas être assez proche pour l'utiliser.

A titre d'exemple, si la pile augmentait à partir de 0x00480000 et la bibliothèque contenant Wx se trouvait dans la mémoire depuis 0x7c800000, il était nécessaire de placer environ 1.988 Go de données sur la pile afin de se trouver dans ces circonstances. On savait également que la plupart des bibliothèques fournies par Microsoft étaient compilées de sorte à se placer aux niveaux supérieurs de la mémoire, ce qui rendait plus difficile le travail de l'attaquant. De nombreuses bibliothèques de fabricants externes étaient compilées pour les adresses à partir de 0x00400000, elles étaient donc parfaitement utiles dans ce cas.

Sachez également que si deux bibliothèques avaient la même adresse dans la mémoire, seule une d'entre elles y était chargée ; la seconde était quant à elle chargée à une adresse inférieure. Grâce à cette technique, il était possible de forcer les bibliothèques à se charger aux adresses inférieures ; l'initialisation des objets COM pouvait également échouer afin de forcer la bibliothèque DLL à se charger. Elle était chargée de vérifier préalablement l'objet COM pour permettre à Microsoft Internet Explorer de savoir que la classe COM pouvait être créée.

Avec cette méthode, il était facile de charger des bibliothèques supplémentaires ; l'ensemble de ces circonstances donnait des perspectives réjouissantes aux attaquants avec les systèmes d'exploitation Windows XP doté du Service Pack 2 et des versions les plus récentes de Internet Explorer, mêmes celles présentant les correctifs jusqu'au MS06-051 à date des recherches qui sont à la base de l'écriture de ce document. L'exemple nécessitait d'installer Adobe Acrobat mais il était également possible d'utiliser une autre bibliothèque d'un fabriquant externe. Le script implémentant l'exploitation de cette vulnérabilité fait partie de Metasploit Framework ( lien ), c'est le script suivant :

msf exploit (windows/browser/IE_unexpfilt_poc)
> exploit
[*] URL: lien
GAEhj cj zQWh17myEK1Exg0
[*] Serveur lancé.
[*] Exploit fonctionne en fond.
msf exploit (windows/browser/IE_unexpfilt_poc) >
[*] Envoi de données (474 octets)
[*] La session ouverte du shell 1(x.x.x.x:4444 -> y.y.y.y:1059) msf exploit(windows/browser/IE_unexpfilt_poc) > session -i 1 [*] L'interaction commence dans 1...
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\ Documents and Settings\mmiller\ Desktop>



Il était possible de développer cette technique un peu plus en avant ; même le correctif le plus récent alors n'excluait pas son utilisation. A titre d'exemple, au lieu de se baser sur les fenêtres de Microsoft Internet Explorer, on pouvait essayer de trouver un autre pointeur ole32!CoFreeUnusuedLibrarIEsEx, ce qui permettait d'appeler une désinscription asymétrique. Il était également possible de concevoir de meilleures techniques de heap spraying afin de rendre l'attaque plus efficace.

Une alternative à cet exemple avec le serveur IIS ; s'il était possible d'entrer sur les pages de chargement et de libération des bibliothèques via l'appel des objets COM, l'attaquant pouvait alors prendre le contrôle sur les filtres. De même avec le serveur Microsoft SQL qui chargeait et libèrait de nombreuses bibliothèques, il était possible d'effectuer des attaques de type SQL Injection pour prendre le contrôle sur l'UEF.


NB : Il est possible de s'abonner au magazine Hakin9 et d'acheter directement le dernier numéro ou d'anciens numéros, en cliquant sur l'image ci-dessous :

Software-Wydawnictwo



Autres ressources dans ce dossier :

[Sécurité avec Microsoft Internet Explorer – Partie 1] Introduction et rappel – lien

[Sécurité avec Microsoft Internet Explorer – Partie 2] Présentation et statistiques - lien

[Sécurité avec Microsoft Internet Explorer – Partie 3] Attaques sur l'application Google Desktop - lien

[Sécurité avec Microsoft Internet Explorer – Partie 4] Cascading Style Sheets Cross Site Scripting ou CSSXSS - lien

[Sécurité avec Microsoft Internet Explorer – Partie 5] Exploitation de Google Desktop et exécution distante de code - lien

[Sécurité avec Microsoft Internet Explorer – Partie 7] Crédits & références - lien



Les mots clés pour les articles publiés sur SecuObs : sécurité microsoft internet contrôle
Les articles de la revue de presse sur les mots clés : microsoft internet
Les videos sur SecuObs pour les mots clés : microsoft internet
Les éléments de la revue Twitter pour les mots clés : microsoft internet
Voir tous les articles de "Krysztof Kozlowski" publiés sur SecuObs (7 résultats)
Voir tous les articles publiés par l'organisme "hakin9" sur SecuObs (11 résultats)


- Article suivant : [Sécurité avec Microsoft Internet Explorer – Partie 7] Crédits & références
- Article précédent : [Sécurité avec Microsoft Internet Explorer – Partie 5] Exploitation de Google Desktop et exécution distante de code
- Article suivant dans la catégorie Tutoriels : [Sécurité avec Microsoft Internet Explorer – Partie 7] Crédits & références
- Article précédent dans la catégorie Tutoriels : [Sécurité avec Microsoft Internet Explorer – Partie 5] Exploitation de Google Desktop et exécution distante de code


Les derniers commentaires de la catégorie Tutoriels:
- UPDATE Snort 2.9.1.1 ...
- Apache Issues Patch To Stop Reverse-Proxy Bypass Attack ...
- ESRT @HackerTheDude @r0bertmart1nez @xanda @morenops - Kernel hacking the BSD way, new post ...
- ESRT @room362 - The Dirty Little Secrets They Didn't Teach You In Pentesting Class ...
- ESRT @jcran @dkarg - Metasploit Payloads VS Libemu - Alienvault Labs ...

Les derniers articles de la catégorie Tutoriels :
- PktAnon un framework pour l anonymat des traces PCAP
- [NessusWX – Partie 2] Audits et conclusion
- [NessusWX – Partie 1] Introduction, installation et configuration
- [IDS Snort Windows – Partie 4] Conclusion et webographie
- [IDS Snort Windows – Partie 3] Exemple de fichier de configuration
- [IDS Snort Windows – Partie 2] Installation et configuration
- [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- [Sécurité et PHP - Partie 5] Astuces
- [Sécurité et PHP - Partie 4] Remote PHP Vulnerabilty Scanner
- [Sécurité et PHP - Partie 3] Les failles PHP




SecuToolBox :

Mini-Tagwall des articles publiés sur SecuObs :

Mini-Tagwall de l'annuaire video :

Mini-Tagwall des articles de la revue de presse :

Mini-Tagwall des Tweets de la revue Twitter :