Téléverser les fichiers vers "/"

This commit is contained in:
2025-01-04 07:46:04 +01:00
parent e81878d79e
commit 0536f52616

55
scan_ip.py Normal file
View File

@@ -0,0 +1,55 @@
import socket
import ipaddress
import sys
import time
# Fonction pour tester si un port est ouvert sur une IP donnée
def check_port(ip, port):
try:
# Créer une connexion à l'IP et au port spécifié
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.settimeout(0.03) # Timeout après 1 seconde
result = s.connect_ex((str(ip), port)) # connect_ex retourne 0 si connecté
return result == 0 # Si la connexion est réussie, le port est ouvert
except socket.error:
return False
# Fonction principale pour scanner la plage d'IP et vérifier le port
def scan_ip_range(ip_range, port):
open_ips = []
count = 0 # Compteur d'IP avec le port ouvert
# Générer toutes les adresses IP de la plage
network = ipaddress.IPv4Network(ip_range)
for ip in network.hosts():
# Afficher l'IP en cours d'analyse sur une seule ligne
sys.stdout.write(f"Analyse de l'IP {ip}...\r")
sys.stdout.flush() # Forcer l'affichage immédiat
if check_port(ip, port):
print(f"Port {port} ouvert sur {ip}")
open_ips.append(str(ip))
count += 1 # Incrémenter le compteur si le port est ouvert
else:
pass # Rien à afficher si le port est fermé
# Petit délai pour éviter une surcharge de mise à jour de la ligne
time.sleep(0.02)
return open_ips, count
# Paramètres de l'application
ip_range = '10.0.0.0/22' # Plage d'IP à scanner
port = 80 # Port à vérifier
# Lancer le scan
open_ips, total_open = scan_ip_range(ip_range, port)
# Afficher les résultats
if open_ips:
print(f"\nLes IPs avec le port {port} ouvert sont :")
for ip in open_ips:
print(ip)
print(f"\nTotal des IPs avec le port {port} ouvert : {total_open}")
else:
print(f"\nAucune IP avec le port {port} ouvert dans la plage {ip_range}.")