Python 嗅探到的 mac 地址的假名化

Python pseudonymisation of sniffed mac adresses

我有一个任务,我必须假名每个 mac 地址的最后 3 个字节,作为探测请求返回。我的意思是每次我嗅探时都将打印的 mac 地址格式化为 ce:63:be:f5:04:00ce:63:be:aa:aa:a1。如何在我的 python 脚本中执行此操作?

from scapy.all import *

def PacketHandler(pkt) :
    if pkt.haslayer(Dot11) :
        if pkt.type == 0 and pkt.subtype == 4 :
            print("Client with Mac: %s probing for SSID: %s" % (pkt.addr2, pkt.info))

sniff(iface="wlan1mon", prn = PacketHandler)

你可以使用 Scapy 的 RandMAC()

>>> a = "aa:bb:cc:00:11:22"
>>> a[:9] + str(RandMAC())[:8]
'aa:bb:cc:c5:ab:23'

或者自己设计随机化。 如果您不知道 Python 中的字符串切片,请查找:https://docs.python.org/3/tutorial/introduction.html#strings