human
Comment hacker un système informatique ?
gpt
Dans l'opinion publique, les hackeurs ont souvent été représentés comme de dangereux « pirates » informatiques guidés par de mauvaises intentions pour forcer l'accès aux systèmes et aux réseaux bancaires. Tous les hackeurs, blancs et noirs ont au départ ceci en commun d'avoir acquis des connaissances très étendues en informatique, mais ce qui les différenciera est l'utilisation qu'ils feront de leurs compétences. Pour devenir un hackeur, le chemin est long et souvent pavé d'embuches et vous devrez avoir une patience et une persévérance à toute épreuve. Vous devrez apprendre à connaitre à fond le fonctionnement d'un système, acquérir plusieurs langages de programmation et vous confronter à plusieurs concepts de systèmes de sécurité. Il ne tiendra qu'à vous de décider de ce que vous voudrez faire de vos connaissances.

1. Comprenez ce en quoi consiste l'activité d'un hackeur.

Dans l'acceptation la plus large du terme, cela consiste à mettre en œuvre les techniques permettant d'accéder à un système numérique ou de le compromettre, que ce soit un ordinateur, un téléphone cellulaire, une tablette ou un réseau entier. Ces actions requièrent des compétences techniques très étendues dans le domaine technique ou des aptitudes portant sur des effets de nature plus psychologique. Il existe plusieurs genres de hackeurs qui se différencient par leurs motivations.

2. Comprenez l'éthique du hackeur.

Malgré la façon dont ils sont dépeints dans la culture populaire, les hackeurs ne sont au départ ni bons ni mauvais et leurs actions peuvent être légitimes ou totalement illégitimes. La plupart du temps, les hackeurs utilisent leurs compétences pour apporter des solutions à des problèmes de sécurité, mais ils pourraient aussi bien les utiliser pour causer des problèmes sérieux et entrer dans des activités totalement illégales.

 s'introduire dans un système pour lequel vous n'avez pas d'autorisation d'accès est parfaitement illégal. Si vous choisissez d'utiliser vos compétences dans un tel but, vous devez savoir que d'autres personnes utilisent les leurs avec de bonnes intentions. Ce sont les hackeurs blancs. Certains d'entre eux, très compétents, sont même grassement payés pour protéger des systèmes, dépister les pirates ou hackeurs noirs et les faire trainer en justice. S'ils vous repèrent alors que vous tentez de faire quelque chose d'illégal, ils vous identifieront et vous risquez d'avoir à affronter des démêlés avec la Justice.

3. Apprenez à utiliser Internet et le langage HTML.

Si vous voulez apprendre à pénétrer des systèmes, vous devrez d'abord savoir comment utiliser Internet. Savoir simplement utiliser un navigateur web ne sera pas suffisant et vous devrez apprendre aussi comment fonctionnent les techniques de recherche avancée. Vous devrez aussi apprendre à créer du contenu pour Internet au moyen de pages HTML. L'exercice de ce langage vous apportera de bonnes habitudes de gymnastique mentale pour apprendre la programmation.

4. Apprenez à programmer.

Cela prendra beaucoup de temps et vous devrez vous armer de patience. Concentrez-vous plutôt sur la façon de penser comme un programmeur que sur l'apprentissage même d'un langage particulier. Lorsque vous arriverez à dominer votre premier langage informatique, concentrez-vous sur les concepts particuliers des langages que vous voudrez acquérir ensuite.

Le C et le C++ sont des langages compilés dits de niveau moyen avec lesquels ont été construits Linux et Windows. Ils vous apporteront, ainsi que l'assembleur, la connaissance d'un concept extrêmement important qui est la gestion de la mémoire d'un ordinateur lors de l'exécution d'un programme écrit dans un de ces langages. Un langage est souvent qualifié par un niveau bas, moyen ou haut selon le niveau d'abstraction qu'il procure par rapport au matériel d'un ordinateur.

Python et Ruby sont des langages interprétés dits de haut niveau qui vous permettront d'écrire de puissants scripts d'automatisation de tâches. Ils ont l'avantage d'être relativement faciles à apprendre et sont extensibles grâce à une quantité impressionnante de bibliothèques touchant à presque tous les domaines de l'informatique.
Le PHP est un langage web de haut niveau qui est intéressant à apprendre dans la mesure où la plupart des applications web l'utilisent. Perl et JavaScript sont aussi des choix raisonnables dans ce champ d'applications.
Il est indispensable pour un futur hackeur d'apprendre le langage Bash pour concevoir des scripts de manipulation des systèmes Linux et Unix. Vous pourrez l'utiliser pour écrire des scripts qui feront une grande partie du travail répétitif à votre place.
Vous devrez apprendre le langage Assembleur. C'est le langage de plus bas niveau qui soit parce qu'il est compris par le microprocesseur de la machine sur laquelle vous devez programmer. Il est souvent très décrié parce qu'il donne beaucoup de travail à comprendre et à coder, mais vous ne pourrez vraiment exploiter de failles logicielles que si vous le connaissez bien. Il existe un langage assembleur par type de microprocesseur.

5. Apprenez à utiliser un système d'exploitation open source.

La grande majorité des serveurs Internet sont conçus à partir des systèmes d'exploitation basés sur les principes d'Unix, comme Linux ou FreeBSD, dont la grande majorité des distributions sont gratuitement disponibles en ligne. C'est la raison pour laquelle vous devrez apprendre à utiliser ces systèmes. Les licences de ces systèmes d'exploitation vous permettent de lire et de modifier le code source des programmes qui les composent pour les modifier selon vos besoins.
Vous trouverez une grande variété de distributions Linux en ligne. Les plus connues sont Ubuntu, Debian ou Fedora. Vous pourrez installer Linux en tant que système d'exploitation principal sur votre ordinateur, le mettre en œuvre dans une machine virtuelle ou encore l'installer en mode de double démarrage en parallèle avec Windows.

6. Sécurisez d'abord votre machine.

Vous devrez exercer vos nouvelles compétences pour devenir un hackeur. Veillez à obtenir les permissions nécessaires pour attaquer votre cible. Vous pouvez vous exercer à attaquer votre propre réseau, solliciter les autorisations écrites auprès du propriétaire d'un autre réseau ou encore mettre votre propre laboratoire en œuvre avec des machines virtuelles sur des ordinateurs vous appartenant. Il est parfaitement illégal d'attaquer un réseau ou un système, peu importe son contenu, sans la permission explicite de son propriétaire. Cela ne fera que vous apporter des ennuis si vous passez outre à cette précaution.
Boot2root présente des systèmes conçus spécifiquement pour être piratés. Vous pourrez faire votre choix et parmi ceux qui vous sont proposés sur le site de Boot2Root et les télécharger pour les installer ensuite sur votre PC au moyen d'un logiciel de création d'une machine virtuelle. Vous pourrez mettre vos compétences en pratique sur ces systèmes. Chacun des systèmes proposés sur le site répond à un niveau de difficulté variable.

7. Apprenez à connaitre votre cible.

On appelle énumération la phase de travail consistant à obtenir des informations sur un système à pénétrer. Le but consiste à établir une connexion avec le système cible et à y trouver les vulnérabilités pouvant être utilisées pour le pénétrer. Il existe quelques outils et techniques qui vous aideront lors du processus d'énumération qui peut se faire sur les protocoles Internet comme NetBIOS, SNMP, NTP, LDAP, SMTP, DNS, aussi bien sous Windows que Linux. Voici une liste des informations que vous devrez énumérer  :

identifiants de connexion et de groupes des utilisateurs ;
identifiant du système hôte ;
modes de partage des réseaux et services ;
tables d'adresses IP et matrices de routage ;
paramètres des services et configuration des vérifications ;
applications et messages internes ;
détails sur les protocoles SNMP et DNS utilisés.

8. Testez le système cible.

Essayez d'atteindre le système distant. Vous pourrez utiliser la commande ping, qui est intégrée dans la plupart des systèmes d'exploitation, pour vérifier si votre cible est active. Ne vous fiez pas trop aux résultats qu'elle donnera, parce que cette commande est basée sur le protocole ICMP qui peut être désactivé par les administrateurs les plus vigilants. Certains outils pourront aussi vous aider à déterminer vérifier quels serveurs de courriel sont mis en œuvre par le système cible.
Vous pourrez trouver les outils nécessaires pour accéder à vos cibles en consultant les [web] et les forums dédiés aux hackeurs.

9. Faites une recherche des ports ouverts.

Vous pourrez utiliser un logiciel scanneur de réseaux pour effectuer un balayage des ports de votre cible. Vous pourrez ainsi déterminer quels ports sont ouverts sur la machine, le système d'exploitation et le type de pare-feu ou de routeur utilisé par la machine distante. Cela vous permettra d'en déduire une stratégie de pénétration du système cible.

10. Trouvez une voie d'accès ou un port ouvert sur votre cible.

Les ports courants tels que ceux utilisés par le protocole FTP (port 21) ou HTTP (port 80) sont souvent bien protégés et la manière de les attaquer est encore à découvrir. Essayez d'autres ports utilisés par les protocoles UDP, comme ceux utilisés par les jeux en réseau ou TCP tels que Telnet que vous pourriez avoir omis.
Un port 22 resté ouvert est souvent l'évidence de l'activation d'un environnement sécurisé (SSH) sur le système cible. Vous pourrez peut-être tenter d'accéder à ce type de port en le cassant.

11. Cassez un mot de passe ou une procédure d'authentification.

Plusieurs méthodes dont nous vous donnons un aperçu ci-après peuvent être utilisées pour cela.

 le forçage consiste à essayer de deviner le mot de passe d'un utilisateur. C'est utile pour obtenir l'accès à des mots de passe qui peuvent être facilement devinés comme 123456. Les hackeurs mettent souvent en œuvre des outils utilisant un dictionnaire dans lequel sont inscrits les mots de passe les plus classiques, permettant de deviner rapidement un mot de passe. Pour vous protéger d'une attaque par forçage, il vous faudra éviter d'utiliser des mots de passe trop simples. Utilisez plutôt des combinaisons de chiffres, de lettres et de caractères spéciaux.

 cette technique consiste à contacter l'utilisateur d'un réseau et à l'amener à donner de lui-même ses identifiants et mots de passe. Un hackeur peut prétendre faire partie du département informatique d'une entreprise et avoir un problème à résoudre sur un serveur et nécessitant un mot de passe pour agir en urgence, il demandera à un utilisateur de lui communiquer le sien. Cela donnera au hackeur un moyen d'entrer dans la corbeille du système pour y rechercher les informations auxquelles il veut accéder ou tenter de s'introduire dans un dossier sécurisé. C'est la raison pour laquelle vous ne devez jamais communiquer votre mot de passe à personne, peu importe la fonction ou la position qu'elle prétend avoir dans l'entreprise. Ne déplacez pas les informations sensibles vers la corbeille de votre système, mais écrasez systématiquement les documents contenant vos informations personnelles.

 cette technique consiste à envoyer à un utilisateur un courriel paraissant provenir de l'adresse d'une entreprise ou d'une personne en laquelle il pourra avoir confiance. Ce courriel pourra être accompagné d'un fichier joint chargé d'installer un logiciel espion ou un enregistreur de frappe sur le système de l'utilisateur. Il pourra aussi contenir un lien vers un faux site web d'entreprise qui aura été réalisé par le hackeur et semblera vraiment authentique à l'utilisateur. Ce dernier s'y verra demander des informations personnelles qui seront exploitées par le hackeur. Pour éviter d'être victime d'escroqueries de cette nature, n'ouvrez pas un courriel qui vous semble douteux, vérifiez que le site est sécurisé et son URL commence bien par HTTPS. Si vous devez vous connecter au site web d'une entreprise, faites-le directement sans passer par des liens envoyés par des tiers.

 cette technique consiste pour le hackeur à utiliser une application installée sur un smartphone pour en faire un faux point d'accès Wi-Fi auquel tous les utilisateurs situés dans un lieu public peuvent se connecter librement. Le hackeur lui donnera un nom à peu près similaire à celui de l'établissement où il se trouve. Les utilisateurs s'y connectent en pensant qu'il s'agit vraiment d'un point d'accès Wi-Fi public. L'application installée sur le smartphone enregistrera toutes les données transmises sur Internet par les utilisateurs qui lui sont connectés. Si un utilisateur se connecte à des sites web pour lesquels il est nécessaire d'entrer un identifiant et un mot de passe, l'application les enregistrera et les mettra à disposition du hackeur qui les exploitera. Pour éviter d'être victime d'un tel vol de données, évitez d'utiliser les points d'accès Wi-Fi sans vous assurer qu'ils sont légitimes. Si vous éprouvez vraiment le besoin de vous connecter à Internet, la meilleure sécurité consistera à demander le nom de son point d'accès Wi-Fi public au propriétaire des lieux. Vous pouvez aussi utiliser un VPN.

12. Obtenez les privilèges de super utilisateur.

La plupart de l'information vitale est toujours protégée et vous aurez besoin d'un niveau élevé de privilèges pour pouvoir y accéder. Vous devrez obtenir ceux qui sont conférés par le compte du super utilisateur, qui équivaut à celui de root sur des systèmes comme Unix, Linux ou BSD. Il s'agira du compte nommé par défaut admin sur les routeurs, si cet identifiant n'a pas été modifié lors de la mise en œuvre du système et sous Windows, il s'agira du compte administrateur. Nous vous soumettons ci-après quelques astuces qui vous permettront d'obtenir les privilèges de super utilisateur.

Provoquer une erreur de  : cette erreur est plus connue sous le nom de Buffer Overflow. Si vous connaissez l'agencement de la mémoire utilisée sur un système, vous pouvez introduire des données que le tampon d'accès à la mémoire n'arrivera pas mémoriser. Vous pourrez alors écraser le code stocké en mémoire et le remplacer par du code qui vous permettra de prendre le contrôle du système.
Sur les systèmes dérivés d'Unix, ceci se produira si le programme infecté positionne le drapeau « SetUID » pour modifier les autorisations d'accès aux fichiers. Le programme pourra alors être exécuté avec les permissions d'un autre utilisateur, comme le super utilisateur.

13. Créez une porte d'accès dérobée.

Lorsque vous aurez obtenu le contrôle total d'un ordinateur, il est recommandé de vous assurer que vous puissiez y accéder de nouveau. Pour créer une porte dérobée, vous devrez installer un maliciel agissant sur un service important comme le serveur SSH. Cela vous permettra de contourner le système d'identification standard du système. Tenez cependant compte du fait que votre porte dérobée pourra se voir éliminée lors d'une prochaine mise à jour de sécurité du système.
Un hackeur vraiment très expérimenté penserait à créer une porte dérobée dans le compilateur du système. Tous les programmes compilés par la suite sur ce système auraient ainsi une voie d'accès possible pour le pénétrer de nouveau.

14. Ne laissez aucune trace de vos visites.

Ne laissez pas l'administrateur se rendre compte de la compromission de son système. Ne modifiez rien sur le site web, ne créez pas plus de fichiers que ceux qui vous seront nécessaires et ne créez pas de nouveaux utilisateurs. Agissez aussi rapidement que possible. Si vous avez patché un serveur comme le SSHD, vérifiez que votre mot de passe secret est intégré dans le code et prenez soin de ne laisser aucune trace pouvant laisser à penser que le système a pu être visité. Si quelqu'un essaie de s'introduire en se connectant avec ce mot de passe, faites en sorte que le serveur le laisse entrer.