Skip to content

Instantly share code, notes, and snippets.

@ujj-nuvo
Created January 8, 2016 17:34
Show Gist options
  • Save ujj-nuvo/f1fc3aaeffa5cf46e2e5 to your computer and use it in GitHub Desktop.
Save ujj-nuvo/f1fc3aaeffa5cf46e2e5 to your computer and use it in GitHub Desktop.
import pcapy
from impacket.ImpactDecoder import *
from impacket.ImpactPacket import *
# callback for received packets
def recv_pkts(hdr, data):
packet = EthDecoder().decode(data)
ip_hdr = packet.child()
op_code = ip_hdr.get_ar_op()
src_mac = ip_hdr.as_hrd(ip_hdr.get_ar_sha())
dest_ip = ip_hdr.as_pro(ip_hdr.get_ar_spa())
print "ARP Request from Device : " + str(src_mac)
if dest_ip == '0.0.0.0' and op_code == 1 and src_mac == "your dash mac here":
print "Hello from Dash"
if __name__ == "__main__":
max_bytes = 1024
promiscuous = 0 # every data packet transmitted can be received and read by a network adapter to which its connected
read_timeout = 100 # in milliseconds
pc = pcapy.open_live("en0", max_bytes, promiscuous, read_timeout)
packet_limit = 10
pc.setfilter("arp")
try:
pc.loop(packet_limit, recv_pkts) # capture packets
except KeyboardInterrupt:
pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment