声明:部分内容来源于网络,只是新手练习
靶场环境来自于知攻善防实验室
概述:
一、整体过程
- 初始环境设置
- 将Linux centOS 7配置为图形化界面,通过
yum groupinstall “X Window System” -y
和yum groupinstall “GNOME Desktop”
(按y
确认停顿),再执行startx
操作。
- 将Linux centOS 7配置为图形化界面,通过
- 攻击溯源分析
- 确定攻击者IP
- 通过查看本机网卡、查询管理员最近登录情况(
grep "Accepted " /var/log/secure | awk '{{print $1,$2,$3,$9,$11}}'
)等操作,确定攻击者IP为192.168.20.1
。
- 通过查看本机网卡、查询管理员最近登录情况(
- 查找管理员密码
- 查询和统计网络连接状态(
netstat -anptu
),发现启动了mysql服务,查看www
目录下access.log
,过滤黑客IP发现其访问phpmyadmin
,找到config.inc.php
配置文件获取数据库账号和加密密码,解密后得到管理员密码Network@2020
。
- 查询和统计网络连接状态(
- Webshell相关信息
- 从导出的流量包(
<<数据包1.pcapng>>
)中,通过过滤黑客IP、tcp追踪流等操作,找到第一次Webshell的连接URL为index.php?user - app - register
,Webshell连接密码为Network2020
。 - 确定攻击者后续上传的木马文件名称为
version2.php
。
- 从导出的流量包(
- 查找Flags
- 在数据包中找到藏匿的
flag1{{Network@_2020_Hack}}
,在/www/wwwroot/127.0.0.1/.api/alinotify.php
中的php
代码中找到flag{{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}}
,在histroy
命令中找到flag3{{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}}
。
- 在数据包中找到藏匿的
- 确定攻击者IP
- 攻击行为总结
- 攻击者IP为
192.168.20.1
,可能通过/index.php?user - app - register
上传webshell
,用蚁剑管理webshell
后再次上传version2.php
提权。 - 攻击者修改了
phpmyadmin
数据库管理员密码,拿到权限后关闭防火墙服务,删除提权文件version2.php
和flag1
,修改alinotify.php
文件内容,未发现留后门。
- 攻击者IP为
二、解题思路
通过查看历史命令、入侵者更改的信息、日志检索入侵痕迹,复现入侵者攻击操作流程。
Linux服务器应急响应
- 通过对系统的分析找到黑客的攻击机IP,并将它作为Flag提交
192.168.20.1
- 提交攻击者修改的管理员密码(明文)
Network@2020
- 提交第一次Webshell的连接URL
index.php?user-app-register
- 提交Webshell连接密码
Network2020
- 提交攻击者使用的后续上传的木马文件名称
version2.php
- 提交数据包的flag6(flag1)
flag1{Network@_2020_Hack}
- 提交攻击者隐藏的flag7(flag2)
flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}
- 提交攻击者隐藏的flag8(flag3)
flag3{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}
第0步,配置Linux centOS 7 变为图形化界面
1:yum groupinstall “X Window System” -y
2: yum groupinstall “GNOME Desktop”,当出现停顿时按 y
3:startx
1,查看本机网卡
2,查询管理员最近登录情况命令 grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
Flag1:192.168.20.1
3,查询和统计网络连接的状态和数据传输情况netstat -anptu
4,阅览一遍发现启动了mysql服务
5,由此就可以去找寻管理员密码。但要获取数据库密码,所以先去查看www目录的下access.log(ngnix 访问日志)
过滤黑客IP目的是看看他干了什么,发现其以GET方式访问了phpmyadmin(一款使用PHP 开发的基于B/S模式的 MySQL 客户端软件)
5,那么网站搭建数据库是使用了phpmyadmin ,直接去找它的配置文件config.inc.php
路径:/www/wwwroot/127.0.0.1/lib
6,查看配置文件config.inc.php中数据库密码
MYSQL数据库 账号:kaoshi 密码:5Sx8mK5ieyLPb84m
6,登录进入mysql
7,查看数据库中信息,查看数据库
查看表名
查看用户
得到密码【f6f6eb5ace977d7e114377cc7098b7e3】,为MD5加密
8,解密得到密码为:Network@2020
Flag2:Network@2020
<<数据包1.pcapng>>
命令行界面导出流量包
9,root用户ls看出存在数据包1.pcapng导出进行分析
过滤黑客IP
进行tcp追踪流(tcp.stream eq 19),发现经过URL编码的密文(蚁剑特征)
解码:得
<<php代码.txt>>
10,搜索PHP,在第二个追踪流中找到URL
所以提交第一次Webshell的连接URL为flag3:index.php?user-app-register
11,根据 Network2020=@ini_set("display_errors", "0"); 就可以知道这段代码基本是所有WebShell客户端链接PHP类WebShell都有的一种代码,但是有的客户端会将这段编码或者加密,而蚁剑是明文,所以较好发现。
所以提交Webshell连接密码为 flag4:Network2020
12,查看第二个数据包发现最后一行为可执行字符串
x0b6b31b98f31d=TtL3d3dy93d3dyb290LzEyNy4wLjAuMS8=
因为蚁剑会将参数进行base64编码,然后在最前面随机添加两个字母,所以想知道这个参数是什么应该对L3d3dy93d3dyb290LzEyNy4wLjAuMS8=进行base64解码,得到参数
/www/wwwroot/127.0.0.1/
13,数据库的数据也在这个目录下,那就可以得知攻击者在/www/wwwroot/127.0.0.1/目录下创建了flag1 文件并写入flag,然后写入一个新的木马,再改名为version2.php,那么后续访问version2.php的流量包应该就是后续上传的木马文件了,来追踪version2.php
是冰蝎的特征
冰蝎4.0特征分析及流量检测思路 - FreeBuf网络安全行业门户
所以攻击者使用的后续上传的木马文件名称为flag5:version2.php
14,直接搜索字符串flag1,再追踪http流
得到数据包中藏匿的flag6:flag1{Network@_2020_Hack}
15,在路径/www/wwwroot/127.0.0.1/.api/alinotify.php中的php代码中藏匿flag2
Flag7:flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}
16,histroy命令中就藏者flag8
所以flag8:flag3{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}
总结:
1.该攻击者的IP为192.168.20.1
2.攻击方式应该是通过/index.php?user-app-register上传了一个webshell,然后使用蚁剑管理webshell之后再次上传version2.php进行提权.
3.攻击者修改了phpmyadmin数据库的管理员密码
3.攻击者拿到权限之后 关闭了防火墙服务,并且删除了提权文件version2.php和flag1,并且修改了alinotify.php文件内容
4.没有发现攻击者留下后门
解题:查看历史命令——查看入侵者更改的信息——查看日志,检索入侵痕迹——复现入侵者攻击操作流程