文章总结: 文章通过陇剑杯2021流量包演示Wireshark实操:先由Set-Cookie头确认JWT认证,再锁定黑客用admin/admin登录,whoami回显root提权成功,追踪POST/exec发现其上传1.c源码、编译成looter.so并写入/etc/pam.d/common-auth植入PAM后门,完整复现JWT伪造、权限维持与恶意文件落地流程,给出逐包定位技巧与防御要点。
综合评分: 88
文章分类: 渗透测试,漏洞分析,应急响应,安全工具,CTF
【网络取证篇】Wireshark工具使用:权限分析与恶意文件追踪
DFIR蘇小沐
2025年12月30日 23:51
江苏
编者荐语:
欢迎关注凌风作者,加油!
以下文章来源于凌风小屋
,作者凌风
凌风小屋
.
专注于电子数据取证领域创作和分享
关注公众号 一起交流进步
本文围绕陇剑杯2021竞赛中 JWT 认证相关取证检材展开,利用题目检材学习 Wireshark 分析 .PCAP 流量,详解网站 JWT 认证方式、黑客所用 JWT 的 id 与用户名、获取的 root 权限,以及上传的恶意文件 、编译文件和修改的配置文件绝对路径,为网络安全取证与 JWT 解析提供实操参考。
1.该网站使用了什么认证方式
答案:jwt
步骤:首先要登录网站,服务器才会给认证方式。
access.log是服务器的访问日志,查看文件是否包含存在疑似敏感路径的请求,但是后面回复的是404 not found说明没有。
若遇到本地设备格式化情况,例如重新安装操作系统或清理本地文件,只会删除本地捕获的包文件,而不会影响服务器端的访问日志。若要获取历史会话数据,可以查询服务器的日志文件(例如 access.log),但无法再使用本地包捕获工具来捕获已经发生的流量;
可以查看到第二次登录成功,登进去后,这是测试环境
登录成功后就可以看了,从第8行开始追踪,右击选中追踪流点击tcp包。
Date、login确定此为登录页面
Wireshark 的跟踪流功能能够提取同一数据流的所有交互内容。“登录失败”和“再次成功登录”等行为,只要它们属于同一个跟踪对象(基于连接的 TCP 流或基于四元组的 UDP 流),就会被完整地捕获并显示出来。
但是这里没有登录进去,因为没有返回cookic。
登陆成功。如果登陆失败会返回login或者直接断连或者返回一个失败的提示。
TCP 是一种面向连接的协议。当 Wireshark 对 TCP 流进行追踪时,它会根据诸如流索引、序列号和确认号等独特的字段,准确地将属于同一 TCP 连接的所有数据包关联起来,从而完整地重建“客户端请求 – 服务器响应”(包括登录失败和成功重登录的完整会话)的整个过程。
UDP 是一种无连接协议,没有诸如流索引和序列号这样的连接维护字段。在追踪 UDP 流时,Wireshark 只能根据“源 IP + 目的 IP + 源端口 + 目的端口”的四元组组合,收集属于同一端口对的数据包。它无法像 TCP 流那样按连接进行逻辑组合会话,也无法保证数据包的顺序完整性。
与规避措施相关的网络流量通常会通过类似 VPN、SSL/TLS 和 IPSec 等方法进行加密传输。尽管 Wireshark 能够捕获加密数据包,但它无法直接分析这些数据包的明文内容。要恢复流量详情,必须获取相应的解密密钥。
“Crtl+f”搜索cookie、token、也可以搜login。第七行如图所示:
Web 场景下的认证方式主流的客户端身份凭证机制为Cookie 与 Token
Cookie 机制:登录成功后,服务器会通过“Set-Cookie”响应头向客户端发送一个 Cookie(通常是一个包含会话标识符的键值对)。当客户端随后发起请求时,浏览器会自动将该 Cookie 添加到请求头中,以便服务器验证客户端的身份。
Token机制:登录成功后,服务器通常会在响应体中返回一个Token符串(例如 JWT);随后,客户端需要主动将Token添加到请求头(例如 Authorization 头)或请求参数中,服务器通过解析Token来验证身份。
相应的分析方法是捕获与“登录成功”对应的服务器响应包,检查是否存在“Set-Cookie”响应头(对应于 Cookie 认证),或者响应体中是否包含Token符串(对应Token认证),以确认服务器使用的身份凭证类型。
JWT 证书的字符串通过两个英文句点(.)被分成了三个部分:第一个部分是头部(描述加密算法等信息),第二个部分是有效载荷(存储非敏感信息,如用户标识符),第三个部分是签名(用于验证证书的完整性)。这三个部分可以通过工具 https://www.jwt.io/ 进行解析,以验证其结构和所包含的信息。
JWT(Token 的典型类型之一)可以以多种方式传输(例如在请求头中、 Cookie )。在该图中,服务器通过 Set-Cookie 响应头下发凭证,表明在这种情况下,JWT 是通过“使用 Cookie 作为载体”来传输的Token 认证凭证。响应头中的 HttpOnly 是 Cookie 的安全属性,其核心功能是“限制前端 JavaScript 读取 Cookie”,从而防止 XSS(跨站脚本攻击)窃取证书。
分析方法如下:成功登录后,服务器通过Set-Cookie发送凭证,该凭证兼具“Cookie 传输载体”的属性和“JWT(Token)认证凭证”的属性。需要结合“Set-Cookie”的内容结构(三部分格式)来确认其是否基于 Cookie 传输的 JWT 身份验证。
2.黑客绕过验证使用的JWT中,id和username是
答案:admin,admin
步骤:第一题可以得到,黑客登录时用的账户为admin,admin。
3.黑客获取webshell之后,权限是
答案:root
步骤:
Php危险函数总结
在流量的过滤中可以通过选择筛选分组字节流进行筛选流量包来判定哪些包有攻击行为的。攻击的成立需要「关键字存在 + 利用条件满足 + 恶意行为特征」三者结合,例如下图
展示了客户端向服务器请求图片资源的通信,
请求行:GET /image?file=bj.jepg HTTP/1.1:请求方法是GET,目标资源是/images/目录下的图片文件,协议版本是HTTP/1.1
请求头:Host: 192.168.137.198:8081:目标服务器的 IP 是192.168.137.198,端口是8081;
响应头:Content-Type: image/jpeg:响应内容是 JPEG 格式的图片(与请求的资源类型匹配);
Last-Modified/Date:分别是图片文件的最后修改时间、服务器响应的时间;
这类函数本身无风险正常业务也会使用危险函数,但若路径 / 文件名 / 文件内容可控,会导致文件上传漏洞、路径穿越、文件篡改、敏感文件读取(如读取/etc/passwd、config.php数据库配置),是 Web 渗透中最常见的攻击点。
下图展示Wireshark 捕获的 HTTP POST 请求及响应数据包,记录了用户尝试访问站点功能接口但因权限不足被拒绝的过程
“whoami” 是系统内置命令(Windows/Linux 系统均支持),作用是显示当前执行命令的用户身份
攻击者常用whoami获取服务器当前的执行权限,判断是否能进一步提权,比如从普通用户www-data提权到管理员root。下面着重看POST /exec包
已知该流量中存在whoami命令执行操作,结合本次抓包内的POST /exec请求包(下图图中标注的重点关注对象)及对应权限控制反馈可知:在这一攻击流程中,黑客虽通过POST /exec包发起了相关操作,但从抓包呈现的权限限制逻辑(包括前期交互中 “无权限执行该功能” 的提示)来看,其最终并未获取到管理员权限。
请求标识:POST /identity HTTP/1.1,接口/identity通常对应 “身份验证” 功能(用于密码修改、敏感操作前的身份二次确认)
但从后续权限反馈可知,黑客通过此入口调用/exec执行whoami后,仍未获取到超级管理员权限,说明站点对/exec接口也做了权限管控。
Crtl+shift+I进入如图应用为列的模式,更加直观,97号包执行了whoami,下个包就是服务器的响应。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><script language="javascript" type="text/javascript"> alert("root\n") window.location.href="\/exec";</script></body></html>
复制粘贴到txt文档下修改后缀名为html,然后弹出root。
login页面执行命令,title页面回显命令为执行的结果答案为root。
4.黑客上传的恶意文件文件名是
答案:1.c
步骤:
根据字段看更直观,下图展示97~111行内容
|
| |
| | |
| — | — |
| 操作命令 | 作用说明 |
| cat /tmp/1.c | 查看之前植入的 PAM 后门源码文件/tmp/1.c,确认源码内容无误 |
| echo [Base64字符串] | base64 -d > /tmp/Makefile | 生成编译用的Makefile文件(Makefile是 Linux 下指定编译规则的配置文件,用于make命令编译代码),为编译 PAM 后门源码提供编译规则 |
97行whoami确认当前执行操作的用户身份,其中id为10087的token跟上一个token不一样,但基本权限相同。
Echo 是显示的命令,于103行,如下图所示:本次请求是提权成功后,利用10087 Admin级Token+/exec接口 RCE 漏洞,完成 Linux 系统核心认证后门源码的落地写入, 攻击行为完全成功,服务器已被植入可编译的 PAM 密码窃取后门,处于完全失控状态。
echo 输出超长 Base64 字符串,%20显示需要url解码,| base64 -dbase64解码,> /tmp/1.c重定向写入文件,完全覆盖原有 1.c 内容,实现恶意源码落地
这部分右击复制可登录此网站https://www.toolhelper.cn/EncodeDecode/Url先url解密然后登录此网站https://www.toolhelper.cn/EncodeDecode/Base64 用base64解密。
url解密:
base64解密解码后源码内容如下:
Linux 系统 PAM 后门的完整部署流量日志,记录了从 “编译后门模块” 到 “配置生效” 的全流程操作
| | |
| — | — |
| 操作命令 | 作用说明 |
| cd /tmp;make | 进入/tmp目录,执行make编译操作(编译之前的 PAM 后门源码) |
| mv /tmp/1.c /tmp/looter.c | 将之前植入的1.c(PAM 后门源码)重命名为looter.c |
| cd /tmp;make | 再次执行编译,生成looter.so(PAM后门的可加载模块文件) |
| ls /tmp | 查看/tmp目录文件,确认looter.so编译成功 |
| cp /tmp/looter.so /lib/x86_64-linux-gnu/security/ | 将编译好的后门模块looter.so,复制到Linux系统PAM模块的默认目录(该目录是系统加载 PAM 认证模块的路径) |
| ls /lib/x86_64-linux-gnu/security/ | 查看 PAM 模块目录,验证looter.so是否成功部署 |
| echo “auth optional looter.so” >>/etc/pam.d/common-auth | 向系统 PAM 核心配置文件common-auth中添加规则,指定认证时加载looter.so后门模块 |
| cat /etc/pam.d/common-auth | 查看 PAM 配置文件,确认后门模块的加载规则已生效 |
| service ssh restart | 重启 SSH 服务,让新的 PAM 配置生效(SSH登录是 PAM 认证的核心场景之一) |
可以看到上传的恶意文件文件名是“1.c”
5 .黑客在服务器上编译的恶意so文件,文件名是
答案:looter.so
步骤:
由题4解析可以得出
6 .黑客在服务器上修改了一个配置文件,文件的绝对路径为
答案:/etc/pam.d/common-auth
步骤:由题4解析可以得出
此文如有错误欢迎沟通指正。为确保个人隐私与数据安全,使用相关工具和方法时须严格遵守法律法规及道德准则,同时亦欢迎其他相关问题和策略的探讨。
往期推荐:
[流量溯源基础知识分享:Wireshark 抓包分析技术
2025-12-25
](https://mp.weixin.qq.com/s?_biz=MzYzMTE5MDg4OA==&mid=2247484529&idx=1&sn=611f6a22afa094c241aec11a78d24261&scene=21#wechatredirect)[Docker 容器取证操作解析:从 MySQL 配置到核心命令汇总
2025-12-09
](https://mp.weixin.qq.com/s?_biz=MzYzMTE5MDg4OA==&mid=2247484438&idx=1&sn=77fb5e88294969eca25b80f5cfb003e6&scene=21#wechatredirect)[BitLocker 磁盘加解密操作指南
2025-12-01
](https://mp.weixin.qq.com/s?_biz=MzYzMTE5MDg4OA==&mid=2247484410&idx=1&sn=4d5ef1a2687c3dc47a960612cdc53249&scene=21#wechatredirect)[ImmortalWrt 软路由系统取证技术与日志分析研究
2025-11-13
](https://mp.weixin.qq.com/s?_biz=MzYzMTE5MDg4OA==&mid=2247484262&idx=1&sn=b57443e964aba67093c04abcab258849&scene=21#wechatredirect)[文件密码破解技术详解:含 Word、Excel 与压缩包(含伪加密)解密
2025-11-11
](https://mp.weixin.qq.com/s?_biz=MzYzMTE5MDg4OA==&mid=2247483948&idx=1&sn=30edc3263994b1ad5db3c7017f163d6f&scene=21#wechatredirect)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:DFIR蘇小沐 《【网络取证篇】Wireshark工具使用:权限分析与恶意文件追踪》