
一、下载并安装Wireshark
Wireshark依赖底层网络驱动(如Npcap)捕获原始数据包,因此必须先完成软件及其驱动的完整安装。未正确安装驱动将导致所有网卡显示为灰色不可选状态。
1、访问Wireshark官方下载页面https://www.wireshark.org/download/,根据系统位数选择对应安装包(推荐Windows 64-bit Installer)。
2、双击运行下载的.exe文件,点击“Next”进入安装向导。
3、在许可协议页点击“Noted”继续。
4、在组件选择页,确保勾选“Npcap”(关键驱动,替代旧版WinPcap)、“USBPcap”(如需抓USB通信)及“Desktop icon”(桌面快捷方式)。
5、在快捷方式页,全部默认勾选;安装路径建议使用纯英文无空格路径,避免中文路径引发解析异常。
6、点击“Install”开始安装,过程中若提示UAC权限,点击“是”;Npcap安装时弹出窗口,勾选“Install Npcap in WinPcap API-compatible Mode”以兼容旧脚本。
7、安装完成后点击“Finish”,首次启动建议右键选择“以管理员身份运行”,防止权限不足无法监听网卡。
二、选择接口并启动基础抓包
Wireshark通过监听物理或虚拟网卡获取流量,必须明确当前通信所经接口,否则无法捕获目标数据。
1、启动Wireshark后,在主界面列表中识别活动网卡:名称含“Ethernet”“WLAN”“vEthernet”等,右侧“#”列显示实时数据包速率,数值非零即为活跃接口。
2、若不确定,可打开命令提示符执行ipconfig,比对IPv4地址与接口名称(例如无线IP 192.168.1.100对应“WLAN”)。
3、双击目标接口(如“WLAN”),或选中后点击左上角蓝色鲨鱼图标“Start capturing packets”。
4、此时数据包列表开始滚动,代表抓包已生效;观察顶部状态栏显示“Capturing on ‘WLAN’”,确认监听中。
5、执行待分析操作(如浏览器访问网页、cmd中ping某域名、启动某客户端),确保目标流量经过所选接口。
6、点击红色方形按钮“Stop capturing packets”终止抓包。
三、应用捕获过滤器缩小抓包范围
捕获过滤器在数据包进入Wireshark前即进行筛选,可大幅降低内存占用与干扰包数量,仅保留符合条件的数据包被记录。
1、在主界面顶部工具栏找到“Capture Filter”输入框(位于网卡列表下方,标有漏斗图标)。
2、输入语法示例:host 192.168.1.100(捕获与该IP双向通信的所有包)。
3>其他常用语法:tcp port 443(仅HTTPS流量)、icmp(仅Ping包)、src host 10.0.0.5 and dst port 80(源IP为10.0.0.5且目标端口80的包)。
4、输入后直接点击右侧“Apply”,再点击蓝色鲨鱼图标启动抓包,过滤器即时生效。
5、注意:语法区分大小写,ip.addr属于显示过滤器语法,不可用于此处;此处仅支持BPF(Berkeley Packet Filter)语法。
四、使用显示过滤器精确定位数据包
显示过滤器在抓包完成后对已捕获数据包进行动态筛选,不改变原始捕获内容,适合交互式分析与快速定位。
1、抓包停止后,在主界面中部上方找到“Filter”输入框(位于菜单栏下方,标有放大镜图标)。
2、输入语法示例:ip.addr == 119.75.217.26(显示源或目的IP为此值的所有包)。
3、更精确限定:tcp.flags.syn == 1 and tcp.flags.ack == 0(筛选TCP三次握手首包SYN)。
4、协议过滤:http.request.method == “GET”(筛选HTTP GET请求)。
5、输入后按回车或点击右侧“Apply”,列表立即刷新仅显示匹配项。
6、误输语法时,输入框变红,此时可点击右侧“Expression…”按钮调出语法助手,选择协议、字段、关系运算符自动生成合法表达式。
五、分析单个数据包的协议层级结构
Wireshark将每个数据包按OSI模型分层展开,逐级查看各层头部字段与载荷,是诊断协议异常、验证通信逻辑的核心操作。
1、在数据包列表中单击任一目标包,下方区域自动分为三部分:顶部为分组列表,中部为协议树形结构,底部为十六进制与ASCII对照视图。
2、展开中部“Frame”节点,查看捕获时间、帧长度、接口索引等物理层信息。
3、展开“Ethernet II”,核对Source/Destination MAC地址是否符合预期(如网关MAC是否匹配arp -a结果)。
4、展开“Internet Protocol Version 4”,检查Source/Destination IP、TTL值、协议号(6=TCP,17=UDP)。
5、展开“Transmission Control Protocol”或“User Datagram Protocol”,确认端口号、标志位(SYN/ACK/FIN)、序列号、确认号等关键字段。
6、若为HTTP/HTTPS,继续展开应用层协议,查看请求行、响应状态码、Header字段(如Host、User-Agent)或TLS握手参数(Client Hello中的SNI)。

评论(0)