Mise en pratique
1. Cas 1 : Scan de ports
Énoncé
Prérequis : socket.
But : savoir programmer un socket en Python.
Énoncé :
Vous allez créer un script Python qui scanne les ports d’un hôte distant dont vous connaissez l’adresse IP.
Les ports scannés seront les ports 21, 22, 25, 53, 80, 139, 443, 1080, 3128, 8080, 8081.
Vous afficherez à l’écran la liste des ports ouverts et la liste des ports fermés.
L’adresse IP à scanner sera demandée à l’utilisateur.
Correction
chap2_tp1.py
#!/usr/bin/env python
#--*--coding:UTF-8--*--
# On importe les modules
import socket
import errno
# Creation de 3 listes : pour l'ensemble des ports a scanner, une
# autre pour pouvoir mettre les ports ouverts et une autre pour les
# ports fermes
ports=[21,22,25,53,80,139,443,1080,3128,8080,8081]
portouvert=[]
portferme=[]
# saisie de l'adresse IP a scanner par l'utilisateur
print "Adresse IP a scanner?"
ip = raw_input()
i = 0
j = 0
while i < 10:
# On cree le socket
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
retourscan = s.connect_ex((ip,ports[i]))
# Pour la connexion reussie
...