Comment hacker un système informatique: 12 étapes

Comment hacker un système informatique

2 méthodes:Avant de commencerS'introduire dans un système

Au « bon vieux temps » de l’informatique, le piratage était utilisé afin d’obtenir des informations au sujet des systèmes et des techniques utilisées sur Internet. Plus récemment, et à cause de quelques délinquants, le terme de piratage informatique a pris une connotation plus négative. En revanche aujourd’hui, de nombreuses entreprises emploient d’anciens pirates informatiques pour tester leurs propres systèmes et en découvrir les forces et les faiblesses. Ces anciens pirates sont maintenant devenus des « hackers », qui connaissent et respectent les limites légales à ne pas dépasser, et la confiance qu’ils inspirent à leurs employeurs leur permet de gagner des salaires élevés. Si vous vous sentez prêt à plonger dans l’univers des hackers et à entrer dans l’apprentissage de cet art, voici quelques instructions pour vous aider à débuter.

1
Avant de commencer

  1. 1
    Apprenez un langage de programmation. Vous ne devrez pas vous limiter à un langage en particulier, et voici quelques conseils à ce sujet.
    • Le langage C est un puissant langage de compilation avec lequel le système d’exploitation UNIX a été généré. Ce langage vous apprendra (conjointement au langage Assembleur) quelque chose de vital : le fonctionnement de la mémoire d’un ordinateur.
    • Les langages Python ou Ruby qui sont de puissants interpréteurs de haut niveau utilisables pour l’automatisation de tâches variées.
    • Le langage Perl est également un choix raisonnable dans ce domaine, tandis que l’apprentissage du langage PHP sera intéressant, car il est utilisé dans la majorité des applications de bases de données tournant sur le web.
    • La connaissance du script BASH est également indispensable, car elle vous permettra de manipuler facilement le comportement des systèmes d’exploitation UNIX/LINUX. Ce type de programmation consiste en l’écriture de fichiers scripts qui feront la plupart du travail pour vous.
    • Vous devrez absolument connaître le langage Assembleur sur le bout des doigts. C’est le langage de « bas niveau » du processeur de votre machine. On en compte plusieurs variantes (une par famille de microprocesseur). Au final, tous les programmes exécutés sont traduits en instructions Assembleur. Vous ne pourrez jamais vraiment modifier un programme si vous ne connaissez pas l’Assembleur.
  2. 2
    Connaissez précisément votre système cible. L’obtention d'informations au sujet des composants matériels et logiciels de ce système est appelée « énumération ». Plus vous en saurez à l'avance sur votre cible, moins vous aurez de surprises par la suite.

2
S'introduire dans un système

  1. 1
    Utilisez un terminal Unix/Linux pour entrer vos commandes. Au cas où vous travaillez sous Windows, Cygwin vous aidera à émuler un terminal Unix/Linux. Le programme Nmap utilise en particulier WinPCap et n’a pas besoin de CygWin pour tourner sous Windows. Vous devez toutefois savoir que Nmap fonctionne plutôt mal sur les systèmes Windows car il lui manque quelques sockets de base. Vous devriez penser à utiliser également les systèmes Linux ou BSD qui offrent plus de sécurité, flexibilité et fiabilité. Beaucoup d’outils très utiles sont préinstallés sur la plupart des distributions Linux.
  2. 2
    Sécurisez votre machine en premier lieu. Assurez-vous d'avoir bien compris les techniques communément utilisées pour vous protéger vous-même. Commencez par le basique : avez-vous trouvé un serveur hébergeant un site proposant des activités potentiellement malsaines ou illégales ? Essayez de le pirater par tous les moyens à votre disposition. Ne le modifiez pas mais appropriez-vous seulement ce site.
  3. 3
    Testez l'activité du système cible. Pouvez-vous atteindre le système distant ? Pour autant que vous puissiez utiliser l'utilitaire ping (inclus dans la plupart des systèmes d'exploitation) afin de vérifier l'état d'activité de la cible, vous ne pourrez cependant pas toujours vous fier aux résultats obtenus parce que son fonctionnement repose sur le protocole ICMP qui peut être facilement bloqué par des administrateurs système un tant soit peu paranoïaques.
  4. 4
    Déterminez le système d'exploitation (OS) utilisé. Un balayage des ports d'Entrée-Sortie effectué au moyen des utilitaires pOf ou Nmap vous donnera un rapport sur les ports ouverts, le système d'exploitation distant utilisé et peut même vous informer sur le type de pare-feu ou de routeur utilisés afin que vous puissiez planifier le cours de votre action. Avec Nmap vous pourrez détecter le type de système d'exploitation distant utilisé en positionnant le commutateur « -O » dans votre ligne de commande.
  5. 5
    Trouvez un chemin ou port ouvert dans le système distant. Les ports les plus classiques tels que FTP (port 21) ou HTTP (port 80) sont souvent les mieux protégés et peuvent être vulnérables à des moyens d’attaque restant toutefois à découvrir.
    • Essayez d’autres ports TCP et UDP qui pourraient avoir été oubliés, tels que Telnet ou encore d’autres ports UDP laissés ouvert pour utilisation en réseau local.
    • Un port 22 ouvert représente généralement l’évidence d’un service SSH (Secure Shell) fonctionnant sur la cible et qui peut parfois être cassé.
  6. 6
    Craquez le mot de passe ou la procédure d’authentification. Il existe plusieurs méthodes pour craquer un mot de passe, inclus le forçage. Forcer un mot de passe consiste à essayer chaque combinaison possible contenue dans un dictionnaire prédéfini d’un logiciel de forçage.
    • Les utilisateurs sont souvent encouragés à utiliser un mot de passe complexe de manière à ce qu’une éventuelle tentative de forçage prenne le plus de temps possible. Toutefois les techniques de forçage par logiciel continuent de s’améliorer considérablement en termes de vitesse et d'efficacité.
    • La plupart des algorithmes de hachage sont faibles, et il est possible d’augmenter significativement la rapidité du craquage en exploitant ces faiblesses (comme on pourrait réduire de 25 % l’algorithme de calcul MD5, ce qui aurait pour effet de l’accélérer considérablement)
    • Les techniques les plus récentes utilisent le processeur de la carte graphique comme processeur auxiliaire, ce qui accélère considérablement le forçage de mots de passe.
    • Vous pouvez essayer d’utiliser les tables Rainbow pour rendre le craquage le plus rapide possible. Notez toutefois que craquer un mot de passe est valable seulement si vous en connaissez le hachage.
    • N'essayez pas tous les mots de passe possibles en vous connectant à la machine distante. Vous pourriez contaminer les rapports systèmes, être repéré par les systèmes de détection d’intrusion, et il vous faudrait des années pour y arriver.
    • Il est possible d'utiliser une tablette rootée, installer un scanneur de TCP. Vous pouvez ainsi voir le mot de passe apparaitre sur votre proxy lorsque l'adresse IP va s'ouvrir.
    • Il est souvent plus facile de trouver une autre manière de pénétrer un système que de craquer son mot de passe.
  7. 7
    Obtenez le niveau de privilèges de « Super-Utilisateur ». Essayez d'obtenir les privilèges « racine (root)» si vous ciblez une machine Unix/Linux, ou bien les privilèges de l'administrateur si vous arrivez sur un système Windows.
    • La majeure partie de l'information présentant un intérêt vital est protégée et vous aurez besoin d'un certain niveau d'authentification pour l'obtenir. Pour pouvoir visualiser tous les fichiers présents sur un ordinateur vous aurez besoin du niveau de privilège « Super-Utilisateur », qui est un compte d'utilisateur correspondant au niveau de l'utilisateur « racine (root) » sur les systèmes d'exploitation Linux et BSD.
    • Cela correspond souvent au compte baptisé par défaut « admin » sur les routeurs (à moins qu’il n’ait été modifié auparavant) ; sur les systèmes Windows il s’agit du compte « Administrateur ».
    • Obtenir l'accès à une connexion ne signifie pas pour autant que vous pourrez accéder à tout le système. Seul le Super-Utilisateur, le compte Administrateur où l'utilisateur de niveau « racine (root) », selon le système d'exploitation, peut accéder à la totalité de son système.
  8. 8
    Employez des tactiques diverses. Souvent, pour obtenir le statut de Super-Utilisateur vous devrez avoir recours à des tactiques comme celle de causer un « débordement de tampon mémoire (buffer overflow) », qui aura pour effet de vider la mémoire (memory dump) et vous permettra ainsi d'injecter du code ou d'effectuer une tâche à un niveau supérieur à celui auquel vous êtes normalement autorisé.
    • C’est ce qui se passera dans les systèmes de type Unix si le bit « SetUid » (bit d’identification d’utilisateur) du programme bogué est positionné, et ce programme sera exécuté comme si vous étiez un utilisateur différent (Super-Utilisateur, par exemple).
    • Seul le fait d’écrire ou de trouver un programme non sécurisé exécutable sur la machine cible vous permettra de le faire.
  9. 9
    Créez un accès caché de retour (backdoor). C'est une bonne idée que vous aurez de vous assurer de votre possibilité de retour sur ce système une fois que vous en aurez pris le contrôle. Ceci peut être fait en modifiant à cette fin un service important du système cible, tel que son serveur SSH. Vous devez savoir toutefois que cet accès de retour pourrait être effacé lors d’une prochaine mise à niveau du système cible. Un hacker vraiment expérimenté modifierait plutôt le compilateur (ou plus exactement une de ses bibliothèques), de telle sorte que chaque programme une fois mis à niveau devienne un accès potentiel de retour (backdoor) dans le système cible.
  10. 10
    Effacez vos traces. Ne permettez pas à l'administrateur de se rendre compte que son système a été l'objet d'une intrusion. Ne modifiez pas le site web (si c'est le cas) et ne créez pas plus de fichiers que ceux qui vous sont indispensables. N'ajoutez aucun utilisateur au système. Agissez aussi rapidement que possible. Si vous devez patcher un serveur tel que le SSHD, assurez-vous que votre mot de passe y soit intégré de telle sorte que si quelqu'un tentait de se connecter au moyen de ce mot de passe, le serveur le laisse accéder, mais ne puisse délivrer aucune information cruciale.

Conseils

  • Gardez à l'esprit que si votre système cible ne fait pas de son mieux pour vous interdire l'accès, vous ne deviendrez jamais bon. Bien entendu, ne devenez pas trop sûr de vous et ne croyez surtout pas que vous êtes le meilleur. Vous devez faire en sorte d’accroître vos capacités de jour en jour. Considérez chaque jour ou vous n'en apprenez pas un peu plus comme une journée perdue. Vous devez être tout ce qui compte et devenir le meilleur, à tout prix. Il ne peut y avoir de demi-mesure, vous devez donner le meilleur de vous-même. Comme le dirait le grand-maître Yoda, « Il faut faire ou ne pas faire. Il ne peut y avoir d’essai. »
  • Il existe une différence majeure entre un hacker et un pirate informatique. Un pirate est motivé par des raisons néfastes (à savoir : pour de l’argent), tandis qu'un hacker explore un système pour essayer d'obtenir des informations et acquérir des connaissances – (en passant au travers des sécurités), a tout prix et de n'importe quelle manière, ce qui peut ne pas être toujours légal.
  • À moins que vous ne soyez un expert ou un hacker professionnel, utiliser ces tactiques sur un ordinateur appartenant à une entreprise ou un gouvernement ne peut que vous apporter des ennuis. Gardez à l’esprit qu'il existe toujours des personnes ayant un peu plus de connaissances que vous et dont c'est le métier d'assurer la protection de ces systèmes. Lorsqu'elles ont détecté un intrus, il arrive qu'elles le surveillent jusqu'à ce que son niveau d'implication soit tel qu'il leur soit alors possible de recourir à une action légale. Ceci signifie que même si vous pensez avoir un accès libre sur leur système, vous êtes en fait observé sans le savoir et pouvez être interrompu à tout moment.
  • Lisez des livres et documentations portant sur les réseaux TCP/IP
  • Souvenez-vous que hacker ne consiste pas à s’introduire dans un système, obtenir un travail bien payé, vendre des moyens d’attaque sur le marché noir ni aider quelqu’un à pirater des systèmes sécurisés. Vous n’êtes pas là non plus pour aider l'administrateur système à faire son travail. Vous êtes là pour devenir « le meilleur ».
  • Ce sont les hackers qui ont construit Internet, conçu le système Linux et travaillent sur les programmes libres (Open Source). Il est conseillé de considérer le piratage avec respect et comme requérant beaucoup de connaissances professionnelles pour faire quelque chose de sérieux en environnement réel.
  • Bien que beaucoup de choses restent heureusement légales, et que ceci reste un terrain sur et disponible à tous, le problème reste que vous n'atteindrez pas même un niveau médiocre si vous ne commettez pas d’actes potentiellement illégaux. Vous ne pourrez devenir quelqu’un que si vous mettez à jour de vrais problèmes sur de vrais systèmes, avec de vrais risques.

Avertissements

  • Au lieu d’effacer entièrement les fichiers de rapport (log files), effacez seulement les entrées du rapport ou les lignes qui vous incriminent dans ces fichiers. Une autre question subsiste : reste-t-il un fichier de sauvegarde ? Qu’arrivera-t-il si on recherche les différences entre fichiers et qu'on découvre précisément ce que vous avez effacé ? Pensez toujours à ce que vous faites. La meilleure solution consiste à effacer de manière aléatoire quelques lignes du fichier de rapport en plus de celles qui vous concernent.
  • Bien que vous ayez pu entendre le contraire, n’aidez personne à patcher ses programmes ou systèmes. C’est très mal considéré et vous vous feriez bien vite bannir de la plupart des communautés de hackers. Et si vous divulguiez un moyen d'attaque découvert par un autre hacker, celui-ci pourrait vous devenir hostile, et vous devrez envisager qu'il peut être meilleur hacker que vous ne l'êtes.
  • Soyez extrêmement vigilant si vous pensez avoir trouvé une faille de sécurité trop évidente ou une erreur grossière dans la gestion de sécurité d'un système. Un professionnel de la sécurité chargé de la protection de ce système pourrait fort bien essayer de vous tromper ou de vous attirer dans un honeypot.
  • Pirater un système appartenant à une tierce personne ou entité peut être illégal, donc ne vous aventurez pas à moins de vous être assuré de la permission de son propriétaire, ou bien d’être vraiment certain que cela en vaille la peine « ET » que vous ne vous ferez pas attraper.
  • Une utilisation à des fins détournées de ces informations peut constituer un délit grave au niveau national ou international. Cet article a uniquement pour but de vous informer et ne doit être utilisé qu'à des fins éthiques – donc légales.
  • Ne faites rien pour le simple plaisir. Souvenez-vous que le piratage d’un réseau donne un pouvoir qui pourrait changer le monde, ce n’est pas un jeu. Ne perdez pas votre temps dans des actes enfantins.
  • Si vous n’êtes pas absolument certain de vos compétences, évitez de vous introduire sur des réseaux d’entreprise, gouvernementaux ou militaires. Même si leur sécurité informatique peut être faible, ces entités disposent de suffisamment de moyens pour vous rechercher et vous causer de gros problèmes. Si vous découvrez une faille dans un tel réseau, il est préférable de passer l’affaire à un hacker plus expérimenté dont vous avez la certitude qu’il pourra intervenir à bon escient sur ces systèmes.

Éléments Nécessaires

  • Un PC de bureau ou portable (rapide)
  • Un serveur Proxy (optionnel)
  • Un utilitaire de balayage d’adresses IP
  • Beaucoup d’astuce
  • Des gigaoctets d’aide.

Sources et citations