【AWD专栏】AWD流量分析

  • A+
所属分类:移动安全

简介

AWD比赛中我们会进行流量监控,通过linux中的tcpdump进行流量记录,我们记录了流量之后可以对他们的攻击进行流量分析,我们通过wireshark查看流量包对我们哪里进行了攻击并且可以对其溯源,然后防御并且编写脚本得分。

工具

Wireshark:
是一个网络封包分析软件。网络封包分析软件的功能是网络封包,并尽可能显示出最为详细的网络封包资料。wireshark使用winpcap作为借口,直接与网卡进行数据报文交换.

tcpdump:
linux作为网络服务器,特别是作为路由器和网关时,数据的采集和分析是不可少的。tcpdump时linux中强大的网络数据采集分析工具之一。
用简单的化来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。

Wireshark分析

TCP三次握手协议

第一次握手:客户端的应用程序主动打开,并向服务端发出请求报文段。其首部中SYN=1,seq=x。
第二次握手:服务器应用被动打开。若同意客户端的请求,则发回确认报文。其首部中:SYN=1,ACK=1,ack=x+1,seq=y。
第三次握手:客户端收到确认报文之后,通知上层应用进程已建立,并向服务器发出确认报文。其首部ACK=1,ack=y+1。
【AWD专栏】AWD流量分析

Comparing operators(比较运算符):

英文写法 C语言写法 含义
eq == 等于
ne != 不等于
gt > 大于
lt < 小于
ge >= 大于等于
le <= 小于等于

Logical expressions(逻辑运算符):

英文写法 C语言写法 含义
and && 逻辑与
or | *2(表格打不了两个啊难受) 逻辑或
xor ^^ 逻辑异或
not 逻辑非

过滤规则

过滤IP地址

(1) ip.addr == 192.168.1.1 //只显示源/目的IP为192.168.1.1的数据包
(2) not ip.src == 1.1.1.1 //不显示源IP为1.1.1.1的数据包
(3 ip.src == 1.1.1.1 or ip.dst == 1.1.1.2 //只显示源IP为1.1.1.1或目的IP为1.1.1.2的数据包

过滤端口

(1) tcp.port eq 80 #不管端口是来源还是目的都显示80端口
(2) tcp.port == 80
(3) tcp.port eq 2722
(4) tcp.port eq 80 or udp.port eq 80
(5) tcp.dstport == 80 #只显示tcp协议的目标端口80
(6) tcp.srcport == 80 #只显示tcp协议的来源端口80
(7) udp.port eq 15000
(8) tcp.port >= 1 and tcp.port <= 80 #过滤端口范围

过滤MAC地址

(1) eth.dst == MAC地址 #过滤目标MAC
(2) eth.src eq MAC地址 #过滤来源MAC
(3)eth.addr eq MAC地址 #过滤来源MAC和目标MAC都等于MAC地址的

http请求方式过滤

(1) http.request.method == “GET”
(2) http.request.method == “POST”
(3) http.host mathes “www.baidu.com|baidu.cn” #matches可以写多个域名
(4) http.host contains “www.baidu.com” #contain只能写一个域名
(5) http contains “GET”
例如:
http.request.method ==“GET” && http contains "Host: "
http.request.method == “GET” && http contains "User-Agent: "
http.request.method ==“POST” && http contains "Host: "
http.request.method == “POST” && http contains "User-Agent: "
http contains “HTTP/1.1 200 OK” && http contains "Content-Type: "
http contains “HTTP/1.0 200 OK” && http contains "Content-Type: "

TCPdump分析

tcpdump采用命令行方式,它的命令格式为:tcpdump [-adeflnNOpqStvx0] [-c 数量]
[-F 文件名] [-i 网络接口]
[-r 文件名] [-s snaplen]
[-T 类型] [-w 文件名] [表达式]

基本界面

【AWD专栏】AWD流量分析

详细参数:

抓包选项: 作用
-c: 指定要抓取的包数量。
-i interface: 指定tcpdump需要监听的接口。默认会抓取第一个网络接口
-n :对地址以数字方式显式,否则显式为主机名,也就是说-n选项不做主机名解析。
-nn: 除了-n的作用外,还把端口显示为数值,否则显示端口服务名。
-P: 指定要抓取的包是流入还是流出的包。可以给定的值为"in"、“out"和"inout”,默认为"inout"。
-s len: 设置tcpdump的数据包抓取长度为len,如果不设置默认将会是65535字节。对于要抓取的数据包较大时,长度设置不够可能会产生包截断,若出现包截断,输出行中会出现"[proto]"的标志(proto实际会显示为协议名)。但是抓取len越长,包的处理时间越长,并且会减少tcpdump可缓存的数据包的数量,从而会导致数据包的丢失,所以在能抓取我们想要的包的前提下,抓取长度越小越好。
输出选项: 作用
-e: 输出的每行中都将包括数据链路层头部信息,例如源MAC和目标MAC。
-q: 快速打印输出。即打印很少的协议相关信息,从而输出行都比较简短。
-X: 输出包的头部数据,会以16进制和ASCII两种方式同时输出。
-XX: 输出包的头部数据,会以16进制和ASCII两种方式同时输出,更详细。
-v: 当分析和打印的时候,产生详细的输出。
-vv: 产生比-v更详细的输出。
-vvv: 产生比-vv更详细的输出。
其他功能性选项: 作用
-D: 列出可用于抓包的接口。将会列出接口的数值编号和接口名,它们都可以用于"-i"后。
-F: 从文件中读取抓包的表达式。若使用该选项,则命令行中给定的其他表达式都将失效。
-w: 将抓包数据输出到文件中而不是标准输出。可以同时配合"-G
time 选项使得输出文件每time秒就自动切换到另一个文件。可通过"-r"选项载入这些文件以进行分析和打印。
-r: 从给定的数据包文件中读取数据。使用"-"表示从标准输入中读取。

端口过滤

抓取所有经过ens33,目的或源端口22的网络数据:
tcpdump -i ens33 port 22
指定源端口:tcpdump -i ens33 sec port 22
指定目的端口: tcpdump -i ens33 dst port 22
  • 1

  • 2

  • 3

  • 4

网络过滤

tcpdump -i ens33 net 192.168.1.1
tcpdump -i ens33 src net 192.168.1.1 #源端口
tcpdump -i ens33 dst net 192.168.1.1 #目的端口
  • 1

  • 2

  • 3

协议过滤

tcpdump -i ens33 arp
tcpdump -i ens33 ip
tcpdump -i ens33 tcp
tcpdump -i ens33 udp
tcpdump -i ens33 icmp
  • 1

  • 2

  • 3

  • 4

  • 5

tcpdump -w 1.pcap #抓所有包保存到1.pcap中然后使用wireshark分析 
  • 1


本文到此也就结束了,如有疑问,可以私信笔者,笔者很乐意解答,由于水平有限,定有所纰漏,还请读者斧正,写作不易,还望支持。

原文链接:https://zhuanlan.zhihu.com/p/113396299

一如既往的学习,一如既往的整理,一如即往的分享。感谢支持【AWD专栏】AWD流量分析

【好书推荐】

【AWD专栏】AWD流量分析

【AWD专栏】AWD流量分析

2020hw系列文章整理(中秋快乐、国庆快乐、双节快乐)

HW中如何检测和阻止DNS隧道

ctf系列文章整理

日志安全系列-安全日志

【干货】流量分析系列文章整理

【干货】超全的 渗透测试系列文章整理

【干货】持续性更新-内网渗透测试系列文章

【干货】android安全系列文章整理



扫描关注LemonSec

【AWD专栏】AWD流量分析

【AWD专栏】AWD流量分析


本文始发于微信公众号(LemonSec):【AWD专栏】AWD流量分析

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: