百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

用Python做WiFi嗅探?5分钟上手黑客同款技能(附代码)

off999 2025-09-04 15:31 54 浏览 0 评论

本文是【Python网络安全】入门教学文章,建议收藏!适合安全学习者、网络审计员、Python进阶者阅读。

有没有想过,你的电脑其实可以像个“监听器”,实时捕捉周围WiFi的蛛丝马迹?
是的,哪怕你不是黑客,也能用Python把网络流量“看个通透”。

是不是已经有点坐不住了?直接开干!


1. 工具清单:配置前的准备动作

想嗅探网络数据,装备不能少:

  • Python 3.8+(基本操作)
  • Scapy库(网络数据包界的瑞士军刀)
  • 无线网卡支持“监听模式”(monitor mode),推荐Alfa AWUS036NH
  • Linux系统 + root权限
  • 合法授权的网络环境(别乱来哈,违法成本高)

小提醒:开启监听模式会让WiFi断网,建议准备第二条网络线或者热点兜底。

在开始写代码之前,先把下面这些包装好:

确保你用的是 Python 3.8 及以上:

python3 --version

如果你还没安装 Python,可以去官网 https://www.python.org 下载对应系统的安装包。


安装核心依赖:Scapy + HTTP & TLS 支持包

pip install scapy

如果你还想解析 HTTP 或 TLS 流量,还可以安装以下模块(可选但推荐):

pip install scapy[http]
pip install scapy-ssl_tls

系统工具支持(必须配置监听模式)

Scapy 默认只支持 Linux / macOS 下使用无线网卡的监听模式(monitor mode)。在 Linux 下:

  • 切换网卡为监听模式(使用 airmon-ng 工具):
sudo apt install aircrack-ng
sudo airmon-ng start wlan0

这会把你的无线网卡变成 wlan0mon 模式,方便 Scapy 抓包。


2. 捕获WiFi 802.11帧:窥探网络从这里开始

from scapy.all import sniff, Dot11

def show_packet(pkt):
    if pkt.haslayer(Dot11):
        print(f"[{pkt.time:.2f}] {pkt.addr2} → {pkt.addr1} type={pkt.type} subtype={pkt.subtype}")

sniff(iface="wlan0mon", prn=show_packet, store=False)

这个脚本会打印所有WiFi帧的信息(源地址、目标地址、类型等),几乎就是“网络监听实况转播”。

想只看“管理帧”?来点精细过滤:

sniff(iface="wlan0mon", prn=show_packet,
      lfilter=lambda p: p.haslayer(Dot11) and p.type == 0,
      store=False)

3. 抓包HTTP请求 + SNI字段,监听网页访问

Scapy也能“监听”网站访问请求,尤其是明文的HTTP,还有TLS握手中的SNI(域名指示)字段:

from scapy.all import sniff
from scapy.layers.http import HTTPRequest
from scapy.layers.ssl_tls import TLSClientHello

def http_tls_sniff(pkt):
    if pkt.haslayer(HTTPRequest):
        req = pkt[HTTPRequest]
        print(f"[HTTP] {req.Method.decode()} {req.Host.decode()}{req.Path.decode()}")
    elif pkt.haslayer(TLSClientHello):
        sni = pkt[TLSClientHello].extensions.get('server_name')
        if sni:
            print(f"[TLS] SNI: {sni}")

sniff(iface="wlan0mon", prn=http_tls_sniff, store=False)

统计显示:超90%的网站已启用HTTPS,SNI就是我们仅存的明文入口


4. 追踪设备活动:MAC地址+频率统计

还可以做个小“侦探”,看看有哪些设备在周围发出探测请求(probe request),还可以统计它们出现的频率:

from scapy.all import sniff, Dot11ProbeReq
from collections import Counter

probe_counts = Counter()

def count_probes(pkt):
    if pkt.haslayer(Dot11ProbeReq):
        probe_counts[pkt.addr2] += 1

sniff(iface="wlan0mon", prn=count_probes, store=False, timeout=60)

print("Top 5 活跃设备:")
for mac, count in probe_counts.most_common(5):
    print(f" - {mac}: {count} 次")

后续还可以导出为CSV,用pandas+matplotlib画图,搞个“热点设备活跃图”都不是梦。


5. 关键提醒:安全红线不能碰!

别玩嗨了忘了底线,这些你必须知道:

  • 必须得到网络所有者书面授权
  • 明确告知会记录什么内容
  • 只收集必要信息,用完及时清除
  • 遵守所在地法律

记住这句话:“技术是中立的,用它的人才决定善恶。”


6. 应用场景举个例:

用途

收益

WiFi网络审计

检查加密设置、发现未知AP

教学演示/安全培训

学生实战演练抓包分析

性能优化

查看丢包率、重传情况

信号覆盖评估

分析不同区域设备活跃程度


写在最后:

WiFi嗅探并不是“黑科技”,而是一项非常重要的网络安全技能。只要你掌握了基础工具,理解协议逻辑,你也可以像网络侦探一样,看清无线世界的流动轨迹。

相关推荐

加密u盘如何格式化(加密u盘如何格式化手机)

1,点击系统与安全进入电脑的控制面板界面,点击上方的系统与安全的选项,在系统界面找到最下方的管理工具功能组。2,选中u盘选择管理工具下面的创建并格式化硬盘分区,点击弹出磁盘管理的界面,在这个里面选中你...

万能显卡驱动离线版pc(万能显卡驱动离线版)

万用驱动是综合各电脑硬件的性能而制做的软件,对于大多数的电脑硬件驱动都好用,但对于少数品牌电脑驱动要求严格的,就不灵了。有的硬件用万能驱动后,使用效果不佳,就是因为没有完全驱动好。所以,知名品牌电脑硬...

如何让电脑一键还原(电脑怎样才能一键还原)
  • 如何让电脑一键还原(电脑怎样才能一键还原)
  • 如何让电脑一键还原(电脑怎样才能一键还原)
  • 如何让电脑一键还原(电脑怎样才能一键还原)
  • 如何让电脑一键还原(电脑怎样才能一键还原)
笔记本windows8系统下载(笔记本电脑系统win8)

在电脑上面就可以下载,打开浏览器搜索windous8系统会出现一些下拉选择,选择第一条或者选择有官网字样的,就直接有下载按钮,然后点击下载就可以了win8可以支持现在可以见到的所有Photosho...

win 11(win 11 25h2)

 Windows11是由微软公司(Microsoft)开发的操作系统,应用于计算机和平板电脑等设备。于2021年6月24日发布,2021年10月5日发行。Windows11提供了许多创新...

手机视频恢复软件免费版下载

手机视频删了怎么恢复  一、安卓手机视频恢复  1.打开电脑,移动鼠标,进入互盾安卓恢复大师官网,下载并安装该软件。手机连接至电脑。手机视频删了怎么恢复  2.打开运行互盾安卓恢复大师,在软件界面看到...

diy电脑装机教程(diy电脑组装步骤)

1,看价格。根据自己的预算价格,选择适合该价格的电脑。注意不要以过高的价格买到配置过低的电脑;2,看性能。根据自己需要的电脑性能,以合理的价格购买。注意不要以过高的价格买到配置过低的电脑。电脑的配置如...

u盘莫名其妙要格式化(u盘总是要格式化什么意思)

如果您在使用U盘时突然收到提示需要格式化的消息,这可能是由于以下原因之一引起的:U盘感染病毒:U盘中可能存在恶意病毒,这些病毒可能会导致U盘无法正常使用。当您尝试打开U盘时,系统会提示您进行格式化操作...

win7家庭版原版(win7家庭版价格)

你的win7旗舰版应该是个盗版软件,在你使用的过程中你可能触碰到了后台升级,升级完以后就变成了家庭版了,在你不知不觉中被改变的,厄这个软件属于盗版的,厄升级完以后没什么大区别,这个旗舰版家庭版在家里面...

win10自动更新失败怎么办(win10自动升级失败)

安装更新失败有许多原因。WindowsUpdate需要能够扫描您的计算机以了解需要哪些更新,并能够下载和安装这些更新。如果某个阶段遇到问题,则可能阻止某个更新安装到计算机中。有关错误或失败的详细信...

截图的几种方法(截图的几种方法有哪些)

 第一种截图方式:按printScreen键。按一下键盘上的printScreen键以后,整个屏幕会被截取下来,截图会默认保存在剪贴板中。第二种截图方式:使用微信截图。进入聊天界面,我们会发...

电脑装了两个系统怎么切换(电脑安装2个系统怎么更换启动)

1.点击运行打开电脑点击左下角的开始菜单栏选项,右击鼠标在序列栏中选择运行打开。2.输入msconfig接着在运行的输入框中输入msconfig点击确定即可打开系统配置。3.点击引导打开系统配置的页面...

linux系统哪个版本好用(最好linux系统版本)

个人比较推荐Debian这个发行版本。DebianGNU/Linux于1993年首次公布,至今已经有近30年历史了。当然其他版本比如openSUSE,Slackware,ArchLinux,Ubu...

win10激活在哪里查看(win10激活时间在哪里看)

在Windows10中,您可以通过以下方法查看激活状态:方法1:使用“设置”应用1.点击屏幕左下角的“开始”按钮,然后点击“设置”(齿轮图标)。2.在设置窗口中,点击“系统”图标。3.在“系统...

官方win10dll文件修复工具(官方win7dll文件修复工具)

当电脑丢失dll文件时,可以采用以下几种方法进行一键修复:从回收站还原:如果是不小心误删了一些计算机文件,导致电脑出现异常的情况时,首先就可以去回收站找回dll文件,如果文件还在,就可以通过还原操作来...

取消回复欢迎 发表评论: