Python

Python pour le piratage, créez un scanner de ports

Python pour le piratage, créez un scanner de ports

Python pour le piratage : créez un scanner de ports en 13 lignes avec Python

Devenir un testeur d'intrusion, ce n'est pas simplement être capable d'exploiter certaines cibles instantanément.  L'utilisation des outils de pentest d'autres personnes ne fera pas de quelqu'un un excellent hacker. En fait, ceux qui ont la dépendance de s'appuyer sur des outils sont généralement marqués comme des script kiddies. Chaque domaine d'expertise doit avoir des niveaux, on l'appelle aussi un processus, dont le domaine du piratage n'est pas le moindre. Comme le dit la citation populaire suivante : « Aucune légende n'est née, les légendes sont faites ». Il ne s'agit pas de son talent, mais de l'ensemble des compétences.

Dans l'article suivant, nous allons découvrir la mise en œuvre d'un langage de programmation dans le domaine du hacking. Qui ne connaît pas le langage de programmation Python? Oui, bien sûr, vous savez déjà. Python est créé à des fins générales, telles que le développement d'applications de bureau avec son interface graphique, le développement Web, y compris le piratage ou les tests d'intrusion. Python a une communauté active (dont certains sont fous, un.k.un fanatique) et python a également de riches modules de bibliothèque.

Python est également devenu mon langage de programmation préféré depuis que je connaissais le domaine des tests d'intrusion. Je ne l'aime pas juste pour acquis. Cependant, pour une raison quelconque, python est essentiellement un langage de programmation moins complexe et plus efficace. Ce que je veux dire par là, c'est que c'est presque proche du langage humain, n'est-ce pas? D'un point de vue novice comme le mien, le taux de lisibilité Python est fou.

Ok, assez pour exagérer python. Maintenant je vais expliquer le but de cet article. Ici, nous allons apprendre à créer un scanner de ports simple avec verbosité avec seulement 13 lignes. (j'aime 13). Ici, nous n'allons pas battre le "port scanner king" NMap, au contraire, le but de ceci est de comprendre comment fonctionne un outil de manière à produire ce que nous voulons, dans ce cas pour voir si les ports sur une cible sont ouverts ou pas. D'un autre côté, il y a d'autres avantages, je.e. quand, à un moment donné, nous sommes confrontés à une condition où lorsque nous voulons effectuer une analyse des ports du routeur qui ne peut pas se connecter à Internet et que nous n'avons aucun outil. Ce sera bien sûr plus facile si nous pouvons fabriquer nous-mêmes le scanner de ports. Citation de la citation ci-dessus. J'ai ajouté: "Les pirates n'utilisent pas d'outils, ils créent des outils"

Faisons-le avec la pratique, ouvrez votre éditeur de texte préféré. Ne perdez pas votre temps à utiliser un IDE de haute qualité pour faire des scripts simples. Soyez juste efficace. Je préfère Gedit, plutôt que l'éditeur de texte Kali Linux préconstruit, Leafpad. Pour une raison, Gedit prend en charge la mise en évidence des couleurs pour divers langages de programmation. Tapez le texte suivant dans votre éditeur de texte.

socket d'importation
chaussette = douille.prise (prise.AF_INET, prise.SOCK_STREAM)

Dans la ligne 1, nous devons importer le module socket afin d'utiliser la fonction socket(). À la ligne 2, nous créons un objet socket avec la syntaxe :

prise.socket (socket_family, socket_kind)

Socket_family pourrait être: AF_INET, AF_INET6, AF_UNIX, AF_NETLINK, AF_TIPC, AF_BLUETOOTH et AF_ALG.

Socket_kind les options sont CHAUSSETTE_STREAM, SOCK_DGRAM, SOCK_RAW, SOCK_RDM, etc. Nous utilisons CHAUSSETTE_STREAM parce que nous communiquerons via le protocole TCP.

Pour en savoir plus sur le module socket, veuillez visiter la documentation officielle de socket sur https://docs.python.org/3/library/socket.html

Continuons le programme avec les lignes suivantes :
https://analytique.Google.com/analytics/web/#realtime/rt-content/a2559550w156331077p157923904/

target = input("[+] Entrez l'IP cible : ")

Nous demandons à l'utilisateur de saisir une adresse IP cible, car nous utilisons AF_INET créer une prise.

def scanner (port):
essayer:
chaussette.connecter((cible, port))
retourner vrai
sauf:
retourner Faux

Dans les lignes suivantes ci-dessus, nous définissons scanner() une fonction. Dans scanner() nous utilisons essayer syntaxe pour s'assurer que nous ne lançons aucune erreur en cas de problème. Nous essayons d'établir une connexion à l'IP cible et à son port. La variable de port est transmise à la fonction comme indiqué ci-dessous.

pour le numéro de port dans la plage (1 100) :
print("Port de numérisation", numéro de port)
si scanner (numéro de port) :
print('[*] Port', numéro de port, '/tcp','est ouvert')

Cette boucle for ci-dessus consiste à parcourir une série de ports que nous allons analyser. La syntaxe de intervalle() la fonction est, range (commencer à partir de x, s'arrêter avant x). Donc, à la ligne 10, nous analyserons 100 ports, c'est-à-dire les ports 1 à 99. Nous utilisons un appel de méthode d'impression pour indiquer quel port est actuellement analysé. Ensuite, nous retournons le type booléen, True ou False. Il appelle notre scanner() fonction qui essaie d'établir une connexion avec le port fourni ; si c'est le retour Faux (la tentative de connexion a échoué).  S'il revient Vrai (connexion réussie) puis passez à la ligne suivante. Qui affiche un message indiquant que ce certain port est Ouvert. Cette boucle s'arrêtera une fois que nous aurons scanné le port 99.

Donc, pour conclure, notre scanner de code de port de 13 lignes devrait ressembler à ceci :

Bon maintenant il est temps de le tester, voyons comment cela fonctionne. Enregistrez-le sous scanner.py. Au cas où nous allons rechercher les ports ouverts de notre propre routeur dans une plage comprise entre 1 et 99. Croyez-moi, ce ne sera pas compliqué par rapport à NMap, concentrez-vous simplement sur notre objectif que j'ai mentionné ci-dessus.

Adresse IP cible : 192.168.1.1

La syntaxe à appeler scanner.py est:

~# analyseur python3.py

Parce que nous n'avons pas défini notre environnement de script dans la première ligne, nous devons donc appeler l'interpréteur Python, j'ai utilisé python3 plutôt que sa version inférieure.

Et la sortie non fantaisiste devrait ressembler à ceci :

EN CONCLUSION

Oui, nous réussissons à créer un simple scanner de ports à partir de zéro en utilisant python en seulement 13 lignes. Nous réussissons à atteindre notre objectif, et maintenant nous savons comment les choses fonctionnent,?. Même si je ne vous ai pas dit s'il y a un gars qui a fait le module NMap-python, vous ne seriez pas surpris. Ce module est essentiellement capable d'exécuter la commande NMap en utilisant le langage de programmation python.

Oh ouais, si vous vous demandez où est la partie piratage avec juste une analyse de port? Hmm… Eh bien, qu'est-ce qu'un pirate informatique cible alors s'il n'a aucune idée de la cible elle-même. Vous souvenez-vous des phases ou cycles de test de pénétration? Sinon, vous devrez peut-être lire l'article ici :

https://linuxhint.com/kali-linux-tutorial/

Vulkan pour les utilisateurs Linux
Avec chaque nouvelle génération de cartes graphiques, nous voyons les développeurs de jeux repousser les limites de la fidélité graphique et se rappro...
OpenTTD contre Simutrans
Créer votre propre simulation de transport peut être amusant, relaxant et extrêmement attrayant. C'est pourquoi vous devez vous assurer que vous essay...
Tutoriel OpenTTD
OpenTTD est l'un des jeux de simulation d'entreprise les plus populaires. Dans ce jeu, vous devez créer une merveilleuse entreprise de transport. Cepe...