Vous n'êtes pas identifié(e).
comment je peux detecter les interfaces des devices qui sont avec ma machine dans le meme réseau mais qui sont en mode promiscuous.
Je veux savoir comment je peux faire un script qui me permet de savoir cette information, et quel commande ubuntu m'aider à réaliser ce but.
Merci.
Hors ligne
Comme le mode promiscuité peut être utilisé à des fins malveillantes, il est intéressant de savoir détecter les machines réseau fonctionnant dans ce mode. Il y a deux méthodes pour y arriver :
Si une machine réseau est en mode promiscuité, le noyau va recevoir tout le trafic réseau, c'est-à-dire que la charge du processeur va augmenter. Ainsi la latence des réponses réseau va augmenter, ce qui peut être détecté.
En mode promiscuité, des logiciels peuvent répondre à des paquets quand bien même ils étaient destinés à une autre machine. Si on voit de telles réponses, on peut être certain que la machine qui les a envoyés est en mode promiscuité. Cependant, des utilisateurs expérimentés de logiciels d'écoute réseau peuvent parer à cela (par exemple en configurant avec attention le pare-feu). Un exemple typique est l'envoi d'un ping (ICMP echo request) avec la mauvaise adresse MAC mais la bonne adresse IP. Si le pare-feu bloque tout trafic ICMP, il n'y aura pas de réponse transmise sur le réseau.
Cf :http://fr.wikipedia.org/wiki/Promiscuous_mode
Sachant que si tu est sur un réseau avec un switch ( commutateur, adios le mode promiscuous )
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
merci @viperr pour votre réponse mais mon but est de detecter les hackers arp poison et man in the middle qui sont dans mon réseau local alors parmi mes techniques pour les detecter c'est de savoir les machines tel que ses interfaces sont en mode promiscuous.
Alors je cherche comment je peux réaliser mon but en python si possible ou des commandes à faire.
Hors ligne
Pour répondre à ta question tio je te renvoie à ce post :
http://linuxtrack.net/viewtopic.php?id=1494
et a ce tuto également :
Mess With The Bests
Die Like The Rest
Hors ligne
@ZeR0-@bSoLu j'ai vu les deux lien meme je fais un commentaire et pour Xarp il est trés intéressant mais je dois faire réliser un code python qui permet la detection des arp poison.
Il est possible de voir sa code source si il est en python.
merci.
Hors ligne
j'essaie ce code pour detecter l'existance de arp spoofing mais je pense que s'il a une requete arp tq la source de cette requete ne correspond pas à mon @ip alors il le considére comme un attaque je veux savoir si le code il detecte vraiment arp poison ou non:j'ai essayé de commenter le code
merci de me répondre, je besoin d'aide urgent
[== Indéfini ==]
#!/usr/bin/env python
import os, urllib, httplib, sys, time, smtplib
from scapy.all import *
from optparse import OptionParser
parser = OptionParser()
parser.add_option('-p', '--myip', dest='myip', default='172.16.50.36', help='Set your IP Address')
parser.add_option('-b', '--broadcast', dest='broadcast', default='172.16.255.255', help='Set broadcast IP Address')
parser.add_option('-f', '--file', dest='filename', default='igotcha.txt')
(options, args) = parser.parse_args()
global filename, requests, hws, myip, broadcast
path = os.getcwd()
myip = options.myip
filename = "%s/%s" %(path, options.filename)
broadcast = options.broadcast
requests = []
hws = []
def Search(ip, hw, dip):
now = time.strftime("%Y-%m-%d %H:%M:%S")
if dip == broadcast:
#ici comme on a trouve adress de destination est de broadcast on va verifier si hardware ressource existe dans la liste hardware ressource sion on va l'ajouter
if not hw in hws:
arq = open(filename, "a")
arq.write("[%s] ARP sent to broadcast address [%s]\n" %(now, hw))
arq.close()
hws.append(hw)
return "ARP sent to broadcast address: affichage de hardware ressource [%s]" %hw
#################on essaie de detetcer maintenant l'arp spoofing
if not ip in requests and ip != myip:
if not hw in hws:
arq = open(filename, "a")
arq.write("[%s] ARP Spoofing detect [%s]\n" %(now, hw))
arq.close()
hws.append(hw)
return "ARP Spoofing detect [%s]" %hw
else:
if ip in requests:
requests.remove(ip)
####################################################
for i in hws:
print "je suis à l'interieur pour afficher les hardwares sources "
print hws[i]
def Detect(pkt):
sip = pkt.sprintf("%ARP.psrc%")
print "source adresse is :%s"%sip
dip = pkt.sprintf("%ARP.pdst%")
print "destination adresse is :%s"%dip
shw = pkt.sprintf("%ARP.hwsrc%")
print"hardware source is %s"%shw
op = pkt.sprintf("%ARP.op%")
print "l'opération envoyé is a:%s"%op
if sip == myip
requests.append(dip)
if sip!=myip
print "je trouve que la source de la requete arp n'est pas mon @ip"
if op == 'is-at':
print "operation est chercher le hardware d'adresse ip %s
return Search(sip, shw, dip)
sniff(prn=Detect, filter="arp", store=0)
.
Dernière modification par tio (19-03-2015 16:26:50)
Hors ligne