当前位置: 首页 > news >正文

用wireshark流量分析的四个案例

目录

第一题

1

2

3

4

第二题

1

2

3.

第三题

1

2

第四题

1

2

3


第一题

题目:

1.黑客攻击的第一个受害主机的网卡IP地址

2.黑客对URL的哪一个参数实施了SQL注入

3.第一个受害主机网站数据库的表前缀(加上下划线例如abc

4.第一个受害主机网站数据库的名字

1

打开流量包,直接筛选http || tls找网络传输协议,发现192.168.1.8大量出现,所以直接筛选该Ip

找到不正常的浏览器返回500

打开一个看下请求内容:

发现了get里面有urlcode编码过的内容,拿下来解码看看:

 明显的sql注入行为,那么受害者就是192.168.1.8了

至于为什么不是202.1.1.2,原因是公网和私网的命名规则,所以192.168.1.8是私网,202.1.1.2是经过nat转换的公网地址,所以判断出202.1.1.2是攻击方

顺便可以看到攻击用的扫描器是sqlmap(User-Agent是可以修改的)

2

直接看URL得出是list这个参数

3

追踪一下tcp流可以发现存在报错注入,然后得出数据库前缀为:ajtuc_

4

这个比较麻烦,需要再稍微靠后的地方找get参数中有没有库名

前面已经知道黑客的Ip了,直接筛选(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http

然后再靠后的地方找

最后找到库名是joomla

第二题

题目:

1.黑客第一次获得的php木马的密码是什么

2.黑客第二次上传php木马是什么时间

3.第二次上传的木马通过HTTP协议中的哪个头传递数据

1

根据第一题获取的ip直接筛选(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http

同样打开一个包看下:

 这里的zzz明显是用decode解码了一个z0的base64编码,然后用eval执行的,

看下z0解码后的:

解密出了一个php代码,发现一句话后门

那么zzz这个参数就是shell的密码了

2

要找第二个木马,那就看PSOT提交方式有没有线索:

筛选:(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http.request.method == POST

发现一个文件的大小异常,有900多。直接追踪tcp流量

发现被base64加密的代码:

 把它解码:

用vscode打开看看这串代码:

 这段代码很明显是一段混淆过的代码,但是没关系,看j和N这两个变量就行了

这是利用的create_function这个函数制作的木马,现在已经找到木马,就是这个包

直接看这个包的上传时间

看到时间为17:20:44.248365

3.

再随便点开一个包看看

 发现Referer异常,而language正常,所以判断为Referer。

第三题

题目:

1.内网主机的mysql用户名和请求连接的密码hash是多少

2.php代理第一次被使用时最先连接了哪个IP地址

1

直接筛选:tcp contains "mysql" && mysql(找tcp中包含mysql且使用mysql协议的包)

发现大量login,证明是爆破行为,内网受害主机位192.168.2.20

既然破解成功了,那就肯定是最后一个包,直接看最后一个包:

得到用户名和密码的hash

 

2

根据1得到内网主机Ip,直接筛选:(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http

能看到,代理是用POST,所以我们就过滤出POST

(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && http.request.method==POST && http

打开第一个有tunnel.php的包看到代理Ip:4.2.2.2

第四题

题目:

1.黑客第一次获取到当前目录下的文件列表的漏洞利用请求发生在什么时候

2.黑客在内网主机中添加的用户名和密码是多少

3.黑客从内网服务器中下载下来的文件名

1

目录的话关键词就是dir或者ls,所以筛选器:

(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && (http contains "dir" || http contains "ls")

分别发现一条,直接追踪tcp流

 ls没有收获,dir发现了:

 这个包的时间是:18:37:38.482420

 

2

ip.addr == 192.168.2.20 && http发现一个后门sh.php

 用ip.src == 192.168.2.20 && http

在这个包看到一条net user,是windows查看、添加当前用户的命令

 现在精确筛选一下:

(ip.addr == 192.168.1.8 || ip.addr == 202.1.1.2) && (http contains "user" || http contains "Administrator")

找到用户名了

根据不存在这个用户和存在后的这段时间确定到四个post,挨个查看:

找到base64编码的值,解码得出:

所以用户名密码均为kaka

3

由于木马是POST,又是下载文件,所以直接过滤POST请求:

ip.dst == 192.168.2.20 && http.request.method==POST

直接倒最后的包看到编码:

直接解码:

 可以得出,下载的文件为lsass.exe_180208_185247.dmp

http://www.lryc.cn/news/141393.html

相关文章:

  • Oracle 时区详解
  • 仿mudou高性能高并发服务器
  • vue权限管理——菜单权限设置
  • 【LeetCode】228.汇总区间
  • Qt快速学习(二)--QMainWindow,对话框,布局管理器,常用控件
  • 群晖DSM下套件及系统网页服务器ssl证书自动更新
  • 【Flink】Flink架构及组件
  • React Navigation 开发准备
  • 前端面试:【前端安全】安全性问题与防范措施
  • [Linux]进程
  • 01-jupyter notebook的使用方法
  • pytestx容器化执行引擎
  • (动态规划) 剑指 Offer 42. 连续子数组的最大和 ——【Leetcode每日一题】
  • OLED透明屏曲面技术:创新突破引领显示行业未来
  • 视频云存储/安防监控EasyCVR视频汇聚平台分发rtsp流时,出现“用户已过期”提示该如何解决?
  • 调用paddleocr接口实现文本检测与识别,并在图像中显示识别结果
  • 如何提升winform程序性能
  • 按钮权限控制
  • 【脚本式设置环境变量】
  • 软件开发bug问题跟踪与管理
  • springboot+mp完成简单案例
  • cuml机器学习GPU库 sklearn升级版AutoDL使用
  • C语言练习题Day1
  • 使用kubeadm安装和设置Kubernetes(k8s)
  • Docker安装延迟队列插件
  • 推荐前 6 名 JavaScript 和 HTML5 游戏引擎
  • 【Django】 Task5 DefaultRouter路由组件和自定义函数
  • Git拉取分支、基于主分支创建新的开发分支、合并开发分支到主分支、回退上一次的merge操作
  • SpringBoot实现定时任务操作及cron在线生成器
  • 数据结构(Java实现)-栈和队列