CHIENGA ARNAULD © 2010
 

ATTENTION : Ce travail montre certaines techniques de base pouvant être utilisés pour commettre des actes illégaux. Ceci est jugé utile dans le cadre du cours pour permettre de mieux connaître les attaques pouvant être faites sur les systèmes qu'on tente de protéger. Un système de sécurité basé sur l'ignorance des gens n'est pas un bon système, donc le fait de montrer les techniques de hacking ne réduit pas la sécurité. J'encourage les gens à tester ces attaques sur des systèmes qu'ils possèdent, pour la formation, et non de manière illégale. BUT Le but de ce TP est de vous familiariser avec les m thodes d’exploitation des failles logicielles ainsi qu’avec les m canismes d’identification d’usager par mots de passe utilis s par les syst mes d’exploitation. Il vise aussi à souligner, via l’entremise de la Question 5, le type de sc nario de s curit affaibli que l’utilisation incorrecte de ce type de m canisme pourrait engendrer. DoTAILS PRoLIMINAIRES Scénario de base (Questions 3, 4 & 5). Vous êtes un hacker et comme par hasard en vous promenant sur l’Internet vous tes tomb sur le r seau corporatif de Omnisoft, une compagnie lavalloise qui se sp cialise dans le domaine du multimédia interactif (traduction= ils font des jeux vidéos). Ceci est une prise de taille, car si vous mettez la main sur le code source de leur tout dernier jeu, vous pourriez gagner gros en vendant des copies pirates avant la date de lancée. ہ première vue, il semblerait que les serveurs d’Omnisoft soit tous nomm s apr s des villes canadiennes. En regardant leurs entrées DNS, vous avez la présence des serveurs suivants : Montreal, Ottawa, Quebec et Toronto. VMWARE. Pour ce labo toutes ces machines seront simulées par des machines virtuelles avec le programme VmWare. Pour commencer, ouvrez le programme VmWare Workstation. Une fois ouverte vous pouvez choisir l'image de la machine Montreal, pour procéder à la question 3. Ensuite, appuyez sur le bouton Play vert, ce qui repartira la machine à l’ tat où elle a t sauvegard e ( snapshot ). Si vous avez des problèmes, vous pouvez redémarrer la machine virtuelle en allant dans Power et cliquez sur Power On. AIDE Comme vous êtes en mode console sur la machine virtuelle Montreal, voici quelques commandes utiles : ∗ ةditer un fichier $ vim Nom_Fichier ∗Quitter un fichier ouvert avec vim sans sauvegarder les changements: :q! ∗ Quitter et sauvegarder un fichier après changements : :wq! Faire un Copy/Paste dans vim : Positionner le curseur au début du texte à copier. Appuyer sur la lettre v. Bouger le curseur jusqu’à la fin de la partie choisie puis appuyer sur y. Aller à l’endroit ou voulez mettre le texte puis appuyer sur p. S’il y a un surplus de texte à effacer, appuyer autant de fois que nécessaire sur x. Question 1 [/1.5] : Hacking "facile" Vous devez trouver comment entrer dans le système suivant, sans trouver les noms d'usagers et mots de passes (qui sont évident dans ce cas-ci, puisqu'ils sont en texte clair dans le programme). Il faut utiliser une attaque basée sur un problème de sécurité dans le programme. Vous devez vous baser uniquement sur ce code et non supposer qu'il y a des trous de sécurité dans d'autres composantes du système. Votre seule manière d'interagir avec le système est donc d'envoyer et de recevoir des caractères au programme. Si votre attaque est un succès, vous n'aurait entré aucun des mots de passe de la liste puis le programme écrira "Bienvenu sur ce systeme..." et terminera correctement (il ne doit pas y avoir de faute système). Le fichier exécutable Windows et le code source en C sont disponibles sur le site web du cours http://www.cours.polymtl.ca/inf8420/TP/hack1.zip (Utilisez le fichier exécutable fournis, pas une version que vous avez compilée). a) Donnez le fichier contenant la séquence exacte de caractères à entrer (pour qu'on puisse utiliser une redirection pour vérifier le hack, avec la commande "hack1 < monhack1.txt"). Expliquez brièvement comment votre "hack" fonctionne. b) Que faudrait-il changer dans le programme pour enlever ce problème de sécurité? Question 2 [/2.5] : Hacking "difficile" C'est le même problème que le numéro 1.a) mais avec un programme différent. Malgré que le programme soit légèrement différent, il est beaucoup moins facile à "hacker" correctement (si vous êtes débutants dans ce genre de chose). Le fichier exécutable Windows et le code source en C sont disponibles sur le site web du cours http://www.cours.polymtl.ca/inf8420/TP/hack2.zip (Utilisez le fichier exécutable fournis, pas une version que vous avez compilée). a) Donnez le fichier contenant la séquence exacte de caractères à entrer (pour qu'on puisse utiliser une redirection pour vérifier le hack, avec la commande "hack2 < monhack2.txt"). Expliquez brièvement comment votre "hack" fonctionne. b) Que faudrait-il changer dans le programme pour enlever ce problème de sécurité? Question 3 [/1.5] : Organisation des mots de passe en UNIX/LINUX Vous avez réussi à obtenir les privilèges de root sur la machine Montreal. Le mot de passe de root est Af6Thg+9. Le but de cette question est de vous familiariser avec les mécanismes de protection de mot de passe en Linux. a) Examinez le fichier /etc/passwd. Contient-il des mots de passe ? Pourquoi? Quelles sont ses permissions d’acc s? Pourquoi ? b) Ajouter un utilisateur avec la commande: $ useradd -gusers -s/bin/bash -d/home/NOM -m NOM avec NOM= le nom de l'utilisateur que vous ajoutez Donnez un password à l'utilisateur que vous avez crée avec la commande: $ passwd NOM Observez ce qui se passe dans les fichiers passwd et shadow qui se trouvent sous le répertoire /etc Lequel de ces deux fichiers est modifié ? c) Changer le mot de passe de l'utilisateur que vous venez de créer avec la commande $ passwd NOM Qu'est ce que vous remarquez dans les fichiers passwd et shadow? Lequel de ces deux fichiers change? Pourquoi ? Où se trouve donc l’information du mot de passe? Quelles sont les permissions du fichier shadow et pourquoi ? d) Changer à nouveau le mot de passe du même utilisateur et donnez lui le *même* mot de passe. Est-ce que les informations du mot de passe ont changé? Pourquoi? e) Cr ez un deuxi me utilisateur en suivant l’ tape b). Ensuite diter le fichier shadow et en remplacer la valeur par défaut (!!) du champ de mot de passe de l'utilisateur que vous venez de créer par la valeur du m me champ pour l’utilisateur vous avez cr e en premier. Sauvegarder le fichier et d logguer vous. Essayer de vous connecter sur le compte du deuxième utilisateur mais avec le mot de passe que vous venez de copier. Est ce que ceci est possible? Expliquez pourquoi. Quel est le problème ? f) Effacer cet utilisateur avec la commande $ userdel NOM Qu'est ce qui se passe dans passwd et shadow ? Question 4 [/0.5] : Contrôle de qualité de choix de mot de passe Dans cette question vous allez vous familiariser avec l’outil John The Ripper qui permet de trouver des mots de passe. Le principe de base est très simple : en regardant les entrées dans un fichier /etc/passwd, « John » essaie des mots dans un dictionnaire de mot de passe courant et génère des hash avec les « salt » retrouvés et les comparent avec les hash de mot de passe dans ce fichier. Il utilise des fichiers /etc/passwd à l’ancienne (qui contiennent aussi le hash de mot de passe). Cependant il est possible de reconstruire ce type de fichier à partir du /etc/passwd et du /etc/shadow en utilisant la commande « unshadow » qui vient avec John The Ripper. Le programme John se trouve sous /home/inf4420/JohnTheRipper/ Pour cette question ceci a déjà été fait pour vous, et vous disposez donc, de 2 fichiers «passwordM» et «passwordT» provenant respectivement des machines Montréal et Toronto, ils sont dans les répertoires home/inf4420/Question4/. a) Loguez-vous sur la machine Montreal en utilisant le compte root et le mot de passe Af6Thg+9. John est utilisé en lançant le script « john » avec un fichier du type /etc/passwd ancien. $ ./john Nom_Fichier (avec Nom_Fichier le nom de fichier de mots de passe, n’oubliez pas d’indiquer le chemin complet) Familiarisez vous avec l’outil et essayer de trouver le plus de mots de passe possibles sur les fichiers passwordM (machine Montreal) et passwordT (machine Toronto). Vous pouvez à tout moment voir ce que John est en train de faire en pesant la barre d’espace. Les r sultats de John sont r pertori s dans le fichier john.pot. En examinant ce fichier (ou en regardant les résultats sur la console) décrivez quels mots de passe vous avez trouvé ainsi que sur quelle des deux machines (Montreal et Toronto) et à quels usagers ils correspondent. Ne vous attardez pas trop, car certains mots de passe peuvent prendre beaucoup de temps et demanderaient l’utilisation de John au niveau 3. Un quart d’heure est largement suffisant pour détecter les mots de passe des niveaux 1 et 2. Question 5 [/2] : Exploitation des vulnérabilités Dans cet exercice, vous aurez la possibilit de vous familiarisez avec trois outils d’exploitation de vulnérabilité des logiciels et des syst mes d’exploitation. Ces outils sont le scanneur de port Nmap , l’ couteur de connexion Netcat et l’arsenal des exploits MetaSploit . Vous êtes en présence des machines virtuelles Montréal, Québec et Ottawa se trouvant sur un même sous réseau et ayant les adresses IP suivantes : Montréal : 195.34.45.2, Québec : 195.34.45.7, Ottawa : 195.34.45.25, Sherbrooke : 195.34.45.30 ہ l’aide de la machine hôte ou plutôt attaquante Montreal vous serez appelés à scanner les machines cibles Quebec, Ottawa et Sherbrooke avec l’outil Nmap , à d terminer les vuln rabilit s pr sentes sur chacune d’elles et à les exploiter avec le logiciel MetaSploit . Afin de simuler plusieurs services ouverts sur des différents ports, nous avons installé sur les machines cibles l’outil Netcat . Tous ces outils sont disponibles aux endroits suivants : - Nmap : outils install par d faut par Linux et disponible de sous n’importe quel endroit sur Montreal - Metasploit : disponible à partir du répertoir metasploit sous /home/inf4420/ a) Utilisation de « Nmap » : Sur la machine Montréal, l'utilitaire « Nmap » est installé. Vous pouvez trouver plus de documentation sur son utilisation en tapant la commande $ man nmap. Cet outil est utile pour faire un balayage réseau et trouver les ports qui sont ouverts sur les hôtes du réseau, ce même rôle peut aussi être joué par le logiciel « Netcat ». Essayer de faire un balayage réseau sur la plage <195.34.45.*> en utilisant la commande suivante : $ nmap -sT –P0 195.34.45.* 1. Expliquer la commande citée ci haut. 2. Quels sont les résultats obtenus? 3. Expliquer ces résultats. b) Balayer maintenant les machines Québec, Ottawa et Sherbrooke séparément. - Que remarquez-vous ? Expliquer ? c) Sur la machine Quebec, vous devez lancer la commande « Netcat » avec les options suivantes : C:Netcat> nc -l -p 1337 Relancez le balayage de port nmap avec les mêmes options sur Quebec 1. Est-ce que le résultat a changé? 2. Si oui, expliquez la différence. d) Exploitation de failles de sécurité connues : 1. Comme vous le savez, le système d'exploitation windows 2000 est relativement vieux. Plusieurs failles de sécurité ont été découvertes dans ce système d'exploitation. Dans le cas du système installé sur les machines de ce TP, nous avons remarqu que sur une d’elle le syst me rpc dcom écoute par défaut sur le port 135. A l’aide du "framework" de s curit informatique Metasploit , nous vous demandons d’utiliser cette faille pour l’exploiter par d bordement de tampon du service rpc dcom. Vous devrez bien sur identifier la machine vulnérable à partir de vos résultats de scan avec « Nmap » exécuté précédemment. Le module de Metasploit à utiliser est : msrpc_dcom_ms03_026. ہ l'aide de Metasploit, vous devez ajouter un utilisateur "h4x0r" avec le mot de passe "toto" sur cet hôte. Vous devez ensuite changer le "payload" dans Metasploit pour exécuter une invite de commande et créer un répertoire "owned" sur le bureau de l'utilisateur inf44201 (C:Documents and Settingsinf44201Bureau). Vous devez donner un listing des commandes et des payloads que vous avez utilisez et une explication de votre démarche. 2. Une autre faille a été aussi détectée sur la même machine, cette faille concerne le service WarFTPD et elle exploite le débordement de tampon dans la commande PASS de la version 1.65 de cette application. Afin de l’exploiter vous devez essayer de trouver le module n cessaire en listant les exploits de Metasploit ». Comme vous le savez, WarFTPD est un serveur FTP roulant par défaut sur le port 21. Une fois ce module trouvé, vous devrez exécuter une invite de commande et créer un répertoire sur la machine hôte. Donnez le nom du module utilisé ainsi que les différentes commandes que vous avez exploité. 3. RPC (Remote Procedure Call) est un protocole permettant de faire des appels de procédures sur un ordinateur distant à l'aide d'un serveur d'application. Ce protocole est utilisé dans le modèle client-serveur et permet de gérer les différents messages entre ces entités. Sur la machine que vous jugez vulnérable, vous aller arrêter le service rpc dcom. Pour cela, suivez les instructions suivantes : Clique droit sur Poste de Travail -> Gérer -> Services et applications -> Services Ensuite, dans les propriétés du service « Appel de procédure distante (RCP) » choisissez le type de démarrage « Désactivé ». Redémarrez la machine. 4. Une version mis à jour de l’application WarFTPD est disponible sur le serveur Sherbrooke de vos amis de PolyVideo, a l’adresse http://195.34.45.30/update. D marrez l’installation, et choisissez Upgrade from 1.6* or previous version » au moment où le setup de le propose. L’installation pr sente sur la machine se trouve dans le répertoire C :warftpd. 5. Relancez le balayage de port nmap avec les mêmes options sur la machine que vous venez de manipuler. Est-ce que le résultat a changé depuis la dernière exécution ? Si oui, expliquez la différence. 6. Ressayez les attaques effectues aux points 1 et 2 sur la même machine. Est-ce que le résultat a changé? Si oui, expliquez la différence. 7. Essayer de refaire ces deux exploits sur la machine que vous juger plus sécuritaire. Que remarquez-vous? Donnez une br ve explication ainsi qu’un petit r capitulatif de ce que vous avez appris durant cet exercice. Question 6 [/ 2] : Site web php vulnérable L’association PolyVideo loue des DVD aux tudiants de Poly à un tarif r duit. Pour se faire mieux connaître l’association a mis en place un site web qui permet aux membres de g rer leurs informations personnelles et de voir la liste des films qui sont disponibles. Les étudiants qui ont construit le site sont partis sur le principe : d’abord la fonctionnalit et ensuite la s curit . Le site est maintenant en ligne mais la s curit n’a jamais t mise en balance. Pour voir le site de PolyVideo qui est hébergé sur la machine Sherbrooke, ouvrez un navigateur dans la machine Quebec et naviguez vers l’adresse suivante : http://195.34.45.30 . a) Injection de SQL Vous soup onnez que le site de PolyVideo est vuln rable à une attaque d’injection de SQL. En faisant du social engineering avec l’administrateur du site web, vous avez r ussi de r cup rer le bout de code qui authentifie les utilisateurs. Il a suffit de dire à l’admin que vous voulez d velopper un site qui impl mente une authentification et il vous a gentiment donné le code de la page login2.php du site de PolyVideo. · 1 extract($_POST); · 2 $req = "select mem_code from MEMBRES where mem_login = '$login' and mem_pwd = '$pass'"; · 3 $result = mysql_query($req) or · 4 die ("Error : the SQL request

".$req."

is not valid: ".mysql_error()); · 5 list($mem_code) = mysql_fetch_array($result); · 6 if (empty($mem_code)) { //verifier que la requette a retourne une reponse positive 1. Proposez une façon de vous loguer sur le site web avec le compte : gigi 2. Proposez une façon passer à travers de la partie identification du site en supposant que vous ne connaissez aucun nom de compte. 3. Quelles failles dans le code avez-vous utilises pour l’attaque 1 ? Et pour l’attaque 2 ? 4. Corrigez les failles dans le code que l’admin de PolyVideo vous a envoyé. b) Injection de HTML En allant plus loin avec les attaques d’injection SQL, vous avez réussi de copier votre propre page web sur le site. La page est disponible à l’adresse http://195.34.45.30/hacked.html. Pour montrer à vos amis que vous avez réussi de pirater le site de PolyVideo, vous allez faire en sorte que tout utilisateur qui se connecte sur le site de PolyVideo est redirigé automatiquement vers la page de hacked.html. Une manière de rediriger un navigateur vers une autre page dans html est la suivante : 1. Comment avez-vous effectu l’attaque ? 2. Quelles ont été les failles que vous avez utilisez ? Comment les corriger ? RةFةRENCES : - Nmap : http://www.insecure.org/nmap/ - protocol RCP: http://en.wikipedia.org/wiki/Rpc - Vulnerabilité RPCDCom : http://www.osvdb.org/displayvuln.php?osvdb_id=2100&Lookup=Lookup - Metasploit framework : www.metasploit.com - Le tutorial de Métasploit disponible sur le site du cours. Top Algerien topalgerie top algerie Ajouter aux Favoris Ajouter aux votre page Acceuil | Forum| Contactez-Nous | Annace |Chat| Music |Radios|Sockets |Protocoles|Windows NT Langage C |Langage C++ | Assembleur | Java | Perl |Pascal/delphi | Visual basic|MERISE | SQL| JDBC| ODBC ASP|CGI |HTML |DHTML |XML|Javascript |JSP |PHP|Servlets |VBScript |WAP |UNIX |Linux |MacOS|Windows 9x Assemblage-PC |Modèle relationnel|Histoire-PC|Fonctionnement-PC|photo pour rire|MS-Dos|Architecture-PC Flash MX |Word-2003|Power Point|Excel|Langage C|Langage Java|Visual Basic|La base XP | programming Physique Arabic partie I|Programation en arabe|Physique Français|Internet| Sécurité Informatique HTML |Agebre en Français|Math Français partie I|Physique Arabic partie II| الطرق العددية Electricité| Math Français partie II|Math en Arabic|Agebre en Arabic| الأعداد العقدية Tous les cours informatiques en vidéos |Droit Informatique |logiciels Tous les cours physiques en vidéos |Microsoft office Cours math en vidéos | Msn en ligne TV Live Autoformations les cours informatiques en vidéos gratuitement :: Copyright © 2008 http://www.autoformations.co.cc All rights reserved ::

naviguer ici
envoyer des SMS gratuit partout dans le monde ici
envoyez des short message a vos proches partout dans le monde


Aujourd'hui sont déjà 1 visiteurs (6 hits) Ici!
=> Veux-tu aussi créer une site gratuit ? Alors clique ici ! <=
MON MONDE A MOI