如何使用wireshark做数据赛
序章
首先来推荐一本书,《Wireshark数据包分析实战(第二版)》,里面详细讲解了网络基础、wireshark的使用分析方法,并以常见的DHCP、TCP、ARP等协议为样例进行分析讲解。这次主要是说一下大致流程,以及一些做题中可能用到的一些小技巧。
显示过滤器
简单协议说明
在做题中,一般都是有http协议,其余常见协议有ssh、telnet、ftp、mysql、snmp、smtp、https、redis等。这其中http、telnet、ftp、redis是明文传输的;smtp是经过base64编码后传输,相当于明文传输;snmp 2.0及以下都是明文传输,3.0以上才是加密传输;mysql登录时密码是密文,其余均是明文;ssh及https是加密传输,https需要有密钥才能得到明文。
渗透套路说明
通常情况下,是从内网抓包,抓到黑客通过某个服务(一般是web)拿到某台服务器的shell,经过一系列操作,扫描内网并拿到内网其他机器的权限。
常见问题
- 黑客执行的第X条命令是啥
- 黑客拿到XX权限的时间
- XXX的账号密码/密码哈希
- 服务器或黑客的IP/主机名/MAC地址
- 路由器IP地址/MAC地址
- 黑客爆破次数
- XX文件内容
- 黑客所使用的工具
- CMS名称及版本
- shell地址/密码
- ………………
- 下次出题可以问TCP序号、确认号、客户端连接端口、会话ID,将路由器放在一个不常见IP上,问路由器IP及MAC地址。感觉网络相关的东西还是蛮重要的,顺便略微提升一下难度。
常见坑
- 由于服务器有内网地址和外网地址之说,所以提交答案时两个都尝试一次
- 若是询问到登录时间等与时间有关的问题时,要注意时间有两个时间,一个是请求包时间,一个是响应包时间,两个也可以都提交一次
- 提交答案时左右两侧不要有空格
- 前面的问题或答案有可能与后面问题有关,要收集整理
- 看清楚问题,例:端口分为公认端口、注册端口、动态/私有端口,范围不同
做题技巧
简单的介绍一些显示过滤器的使用
- 过滤url中包含ctf的请求
|
|
CMS及其版本号
1http contains "Powered by"寻找菜刀包
1http.request.method==POST寻找菜刀返回结果
1http contains "->|"寻找redis传输内容
1tcp.port eq 6379寻找反弹shell的传输内容,例:弹回6666端口
1tcp.port eq 6666mysql进行管理员相关查询
1mysql matches "select.*?user|admin"其余的小技巧请自行发掘
做题思路
首先需要找到题目入口,即找到黑客IP、服务器IP、常见服务等。可以从wireshark的统计中查找大流量,也可以从日志中寻找攻击相关行为。
找到上面信息之后,可以使用如下显示过滤器来只显示黑客相关数据分组
|
|
个人认为应以题目答案为导向,但还需要探寻黑客攻击轨迹,进行要点记录,当后面遇到相关题目时,可以从要点中寻找。
前面有说明渗透套路,基本可以按照该顺序寻找黑客攻击线索。