背景信息
1 | 小路是一名实习生,接替公司前任网管的工作,一天发现公司网络出口出现了异常的通信,现需要通过回溯出口流量对异常点位(防火墙)进行定位,并确定异常的设备。然后进行深度取证检查(需要获取root权限)。现在需要你从网络攻击数据包中找出漏洞攻击的会话,分析会话编写exp或数据包重放获取防火墙设备管理员权限,查找防火墙设备上安装的木马,然后分析木马外联地址和通信密钥以及木马启动项位置。 |
环境部署
- 使用VMware(推荐VMware17)加载zeroshell虚拟机
- 打开虚拟网络编辑器
- 选择VMnet8 Net模式网卡,选择更改配置
- 选择VMnet8 网络,修改子网IP为61.139.2.0,再点击应用和确定
- 启动虚拟机,等虚拟机启动完成后,浏览器打开http://61.139.2.100 即可访问zeroshell防火墙环境
如启动虚拟机 遇以下报错
说明虚拟机版本与VMware版本不兼容 可以直接编辑配置文件(zeroshell.vmx)
1 | 修改低于20的数值 我在这里修改为了16 继续启动虚拟机即可正常启动 |
题目
1.从数据包中找出攻击者利用漏洞开展攻击的会话(攻击者执行了一条命令),写出该会话中设置的flag, 结果提交形式:flag{xxxxxxxxx}
ip.addr == 61.139.2.100 && http
防火墙 IP 为 61.139.2.100 猜测攻击者入口为web HTTP
flag存在于tcp流243 base64解码即可得出
flag{6C2E38DA-D8E4-8D84-4A4F-E2ABD07A1F3A}
2.通过漏洞利用获取设备控制权限,然后查找设备上的flag文件,提取flag文件内容,结果提交形式:flag{xxxxxxxxxx}
由上题很明显看出攻击者执行了 ps -ef 防火墙存在RCE
1 | find / -name 'flag' |
3.找出受控机防火墙设备中驻留木马的外联域名或IP地址,结果提交形式:flag{xxxx},如flag{www.abc.com} 或 flag{16.122.33.44}
netstat -ano 查看网络信息
1 | flag{202.115.89.103} |
4.请写出木马进程执行的本体文件的名称,结果提交形式:flag{xxxxx},仅写文件名不加路径
ps
查看进程
1 | 发现进程运行隐藏文件 .nginx |
5.请提取驻留的木马本体文件,通过逆向分析找出木马样本通信使用的加密密钥,结果提交形式:flag{xxxx}
使用wget获取
cat /tmp/.nginx
页面
是一个elf执行文件
1 | 存在外联IP后面 可能就为加密密钥 |
6.请写出驻留木马的启动项,注意写出启动文件的完整路径。结果提交形式:flag{xxxx},如flag{/a/b/c}
grep -nr '.nginx' /var
在/var目录下检索所有文件内容 内容中是否包含.nginx
1 | flag{/var/register/system/startup/scripts/nat/File} |