实验时间:10.20
目录
MS-DOS命令行小技巧(可用于PowerShell)
实验准备
1.如何开始开始抓包,同时发起http请求?
2. 如何解析http数据包,所有http响应(response)数据?
参考手册
分析数据包,查看dns请求的信息
统计访问该网页所需要的TCP包的数量
TCP包的长度
统计包含cloud computing字符串的数量
Alt + Enter MS-DOS下,切换窗口和全屏
Alt + . MS-DOS下,上一个命令
方向键上/下 切换上或者下一条命令
复制内容后,鼠标右键,直接复制粘贴到命令行
更多Windows快捷键可以看笔者这篇文章:(11条消息) Windows 10快捷键入门(会更新)_总之就是非常稳健的博客-CSDN博客
虚拟机登录
sudo su提权
查询tshark使用手册
man tshark
查看对外网卡,ip地址
tshark -D
ifconfig
开启两个终端,A终端打开tshark抓包程序,B终端使用curl进行请求。
先使用tshark监听网卡,在curl网址.
记得替换packet.pcap为自己抓包的包名
tshark -i ens16 -w packet.pcap
curl http://cloud.siat.ac.cn/cloud/176/178/275.html
Ctrl + C结束抓包,包的内容保存在packet.pcap 文件钟。
使用命令读取数据包,-V表示包括读取包的内容
tshark -2 -r packet.pcap -V -R "http.request.line || http.file_data || http.response.line" -T fields -e http.request.line -e http.file_data -e http.response.line
过滤器的具体用法:Wireshark · Display Filter Reference: Index
tshark官方文档:https://www.wireshark.org/docs/man-pages/tshark.html
wireshark wiki:https://wiki.wireshark.org/
捕获过滤器 https://wiki.wireshark.org/CaptureFilters
显示过滤器,用于display过滤的字段可以通过https://wiki.wireshark.org/DisplayFilters
在给定的实验机器上访问网页并开启第二个shell过滤采集网页数据:
记得替换packet.pcap为自己抓包的包名
第一个shell
tshark -i ens16 -w packet.pcap
第二个shell
curl http://cloud.siat.ac.cn/
tshark -r packet.pcap -T fields -e frame.time -e ip.src -e ip.dst -e dns.qry.name
注意,如果没有出现dns.qry.name的字段,请使用sudo systemd-resolve --flush-caches 清空本地dns缓存再次进行实验
可以看到,请求的远程IP地址是 210.75.252.104,之后就可以根据这个IP过滤数据包
tshark -r packet.pcap -Y "ip.addr==210.75.252.104" -z conv,tcp
tshark -r packet.pcap -Y "ip.addr==210.75.252.104" -T fields -e tcp.len
tshark -r packet.pcap -Y "ip.addr==210.75.252.104" -T fields -e http.file_data|grep -o "cloud computing"|wc -l
tshark参考:Wireshark命令行工具tshark详解(含例子)-01 - 随风浪子的博客 - 博客园 (cnblogs.com)