[scripts] Going to utf-8
This commit is contained in:
parent
c4a19a88ed
commit
a1bf0a4547
54 changed files with 676 additions and 573 deletions
|
@ -1,7 +1,7 @@
|
|||
#! /usr/bin/env python
|
||||
# -*- encoding: iso-8859-15 -*-
|
||||
# -*- encoding: utf-8 -*-
|
||||
|
||||
# Utilisation de scappy pour détecter un DHCP pirate.
|
||||
# Utilisation de scappy pour détecter un DHCP pirate.
|
||||
# $Id: dhcp-detect.py,v 1.3 2006/12/11 23:31:39 glondu Exp $
|
||||
|
||||
import sys, os
|
||||
|
@ -25,23 +25,23 @@ PIDFILE = "/var/run/dhcp-detect.pid"
|
|||
# dhcp-server attendu
|
||||
DHCPSERVER = '138.231.136.9'
|
||||
|
||||
# Interface à surveiller
|
||||
# Interface à surveiller
|
||||
INTERFACE = "crans"
|
||||
|
||||
# Adresse MAC
|
||||
mac = os.popen(r"ifconfig | grep '^%s' | awk '{print $(NF)}'" % INTERFACE).readline().strip()
|
||||
|
||||
# Paquet à envoyer pour détecter un DHCP (il a été capturé pour avoir la bonne tête)
|
||||
# Paquet à envoyer pour détecter un DHCP (il a été capturé pour avoir la bonne tête)
|
||||
tosend = Ether("\xff\xff\xff\xff\xff\xff\x00\x80\xc8\xc9\xab\x01\x08\x00E\x10\x01H\x00\x00\x00\x00@\x11y\x96\x00\x00\x00\x00\xff\xff\xff\xff\x00D\x00C\x014\x9aA\x01\x01\x06\x00\xb2\x87\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xc8\xc9\xab\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00c\x82Sc5\x01\x012\x04R\xe1'67\x07\x01\x1c\x02\x03\x0f\x06\x0c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00")
|
||||
|
||||
# On met à jour ce paquet
|
||||
# On met à jour ce paquet
|
||||
tosend.getlayer(Ether).src = mac
|
||||
tosend.getlayer(IP).chksum = None
|
||||
tosend.getlayer(UDP).chksum = None
|
||||
tosend.getlayer(BOOTP).chaddr = ''.join(map(lambda x: chr(int(x,16)),mac.split(":")+['0']*10))
|
||||
tosend = Ether(tosend.build())
|
||||
|
||||
# Tableau associatif "mac" - "mailé pour la dernière fois"
|
||||
# Tableau associatif "mac" - "mailé pour la dernière fois"
|
||||
dejavu = {}
|
||||
|
||||
|
||||
|
@ -88,7 +88,7 @@ def mail(paquet):
|
|||
print "Envoi d'un mail...",
|
||||
msg = u"""Boujour,
|
||||
|
||||
Un DHCP pirate a été découvert sur le réseau. Voici quelques renseignements mineurs à son sujet :
|
||||
Un DHCP pirate a été découvert sur le réseau. Voici quelques renseignements mineurs à son sujet :
|
||||
|
||||
Son adresse Ethernet : %s
|
||||
Son adresse IP : %s
|
||||
|
@ -99,7 +99,7 @@ Un DHCP pirate a
|
|||
msg += u"\n"
|
||||
msg += info_machine(mac_pirate)
|
||||
msg += u"""
|
||||
Merci de votre attention et à bientôt.
|
||||
Merci de votre attention et à bientôt.
|
||||
|
||||
--
|
||||
dhcp-detect.py
|
||||
|
@ -111,10 +111,10 @@ dhcp-detect.py
|
|||
print "ok"
|
||||
|
||||
|
||||
# Réception d'une réponse
|
||||
# Réception d'une réponse
|
||||
def recoit(paquet):
|
||||
# On affiche
|
||||
print "Réception de : ", paquet.summary()
|
||||
print "Réception de : ", paquet.summary()
|
||||
# On verifie que c'est bien ce qu'on attend
|
||||
if paquet.getlayer(Ether).dst.upper() == globals()['mac'] and paquet.haslayer(BOOTP) and paquet.getlayer(BOOTP).op == 2 and paquet.getlayer(IP).src != DHCPSERVER:
|
||||
# DHCP pirate ?
|
||||
|
@ -140,7 +140,7 @@ def get():
|
|||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# On quitte les éventuelles instances démonisées en cours
|
||||
# On quitte les éventuelles instances démonisées en cours
|
||||
try:
|
||||
pid = int(file(PIDFILE).read().strip())
|
||||
os.kill(pid, 15)
|
||||
|
@ -150,12 +150,12 @@ if __name__ == "__main__":
|
|||
createDaemon()
|
||||
file(PIDFILE, "w").write("%d\n" % os.getpid())
|
||||
else:
|
||||
print "Le paquet suivant va être envoyé à intervalles réguliers pour tester la présence de DHCP pirates :"
|
||||
print "Le paquet suivant va être envoyé à intervalles réguliers pour tester la présence de DHCP pirates :"
|
||||
print tosend.summary()
|
||||
|
||||
openlog("dhcp-detect", LOG_PID)
|
||||
syslog("Démarrage de dhcp-detect")
|
||||
# On démarre le thread qui envoie régulièrement le paquet...
|
||||
syslog("Démarrage de dhcp-detect")
|
||||
# On démarre le thread qui envoie régulièrement le paquet...
|
||||
Thread(target=send, name="send").start()
|
||||
# ...et celui qui sniffe régulièrement la réponse
|
||||
# ...et celui qui sniffe régulièrement la réponse
|
||||
Thread(target=get, name="get").start()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue