应急响应——知攻善防蓝队溯源靶机Linux-2详细流程

今天继续给大家带来一篇Linux的应急响应文章;本篇文章与Linux-1的主要区别就是加上了一点流量的分析;

文章目录


靶场介绍

背景

前景需要:看监控的时候发现webshell告警,领导让你上机检查你可以救救安服仔吗!!

  1. 提交攻击者IP
  2. 提交攻击者修改的管理员密码(明文)
  3. 提交第一次Webshell的连接URL(http://xxx.xxx.xxx.xx/abcdefg?abcdefg只需要提交abcdefg?abcdefg)
  4. 提交Webshell连接密码
  5. 提交数据包的flag1
  6. 提交攻击者使用的后续上传的木马文件名称
  7. 提交攻击者隐藏的flag2
  8. 提交攻击者隐藏的flag3

关于靶机启动

关于靶机启动解压后双击ovf导入虚拟机打开即可。

相关账户密码

root/Inch@957821.

关于解题

root下,运行"./wp"即可

附:靶场为知防善攻实验室搭建如想查看更多靶场可移步至知防善攻实验室公众号!

(本次靶机我还是不会按照上述的顺序去寻找,这样有利于更加接近真实情况,话不多说,我们直接开始。)


应急过程

提交攻击者IP

首先我们打开靶机,输入账号密码,显示页面如下:

随后我们发现了一个流量包,所以我们将其下载到本地并进行查看:

不熟悉的师傅可以先看这篇文章:Wireshark流量分析案例篇(手把手教学基础篇)

我们打开流量包,首先查看"统计" ------> "IPv4" ------> "All address":

随后发现了有两个IP数量十分异常:192.168.20.1 和192.168.20.144

(这个时候我们就要去分辨哪个才是真正的攻击IP

输入过滤命令:http

可以发现大多数是92.168.20.1 向192.168.20.144发送POST请求,而192.168.20.144则是响应请求;

所以攻击者IP很有可能就是192.168.20.1

第一次Webshell的连接URL和连接密码

接下来我们继续查看流量包还有什么可利用的信息:

  • 查找攻击者是否留有攻击路径流量
  • 进行了什么类型的攻击
bash 复制代码
http and ip.src==192.168.20.1

我们得到了所有攻击者IP发送的请求:

所以我们分别点击进去查看,也是发现了一些线索:

看了几个流量包,我们很容易得到信息:

(1)首先攻击者使用的是蚁剑对受害主机进行的Webshell连接,并且密码是Network2020

(2)Web服务器存在漏洞路径为:/index.php?user-app-register

所以URL:index.php?user-app-register

连接密码:Network2020


补充知识:如果蚁剑的请求中包含了多个参数,那个该参数的值为前两位为混淆字符,需要删除前两位才能进行base64解码

(1)攻击路径

(2)上传连接shell文件名字

(3)上传一个version2.php文件


提交数据包的flag1

随后我们往下看,也是发现了flag1字样:

很容易得到结果:

得到结果

flag1{Network@_2020_Hack}

攻击者使用的后续上传的木马文件名称

接着往下,我们发现攻击者尝试访问几个文件:version.phpversion2.php

(version.php不存在)

随后都是清一色的version2.php文件了:

点进去查看,发现流量都是经过编码加密的:


结合之前的分析,我们几乎可以确定version2.php就是攻击者进行横向的Webshell文件

shell.php文件则是用来连接蚁剑的一句话木马)


之后我也去靶机相关目录查询了一下,并没有发现相应的文件(可能是被攻击者进行痕迹清除了)

bash 复制代码
find / -name 'shell.*' 2>/dev/null

所以攻击者的木马文件名称:version2.php

提交攻击者隐藏的flag3

之后又花了点时间在流量包里寻找,并没有发现任何有用的东西,所以只能回归靶机进行查找了;

于是我就先对机器的历史命令history排查:

意外发现了一个flag以及可能存在的后门程序;

flag{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}

提交攻击者隐藏的flag2

通过history命令,发现攻击者在环境变量中写入了第三个flag,并且攻击者在/www/wwwroot/127.0.0.1/中创建了文件夹.api隐藏文件,然后复制了api下的文件,并修改了其中的alinotify.php文件。查看一下这个文件,看看攻击者干了什么。

查看两个文件存放位置:

bash 复制代码
find / -name mpnotify.* 2>/dev/null
find / -name alinotify.* 2>/dev/null


注意:进入的是.api目录,不是api

返回结果,分别查看两个文件的内容:

alinotify.php文件的最后一行发现了flag2,而 mpnotify.php无发现;

flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}

至此,所有flag均已找到;


重点------提交攻击者修改的管理员密码(明文)

之后我又去Web服务器的日志目录进行排查,发现机器安装了Apache和Nginx两个中间件,所以我们对其一一进行排查:

不熟悉的师傅可以看这篇文章:Apache和Linux日志分析

  • 排查攻击IP次数:awk '{print $1}' access.log |uniq -c |sort -n
  • 扫描器 / 目录爆破行为(404 特别多):awk '$9==404 {print $7}' access.log | sort | uniq -c | sort -nr | head

  • Web 攻击 payload 排查(核心) :grep -Ei 'union|select|insert|update|delete|drop|--|#|/etc/passwd|cmd=|exec=|system\(|\.\./' access.log

发现攻击者曾经对phpmyadmin进行过访问(服务可能存在数据库!


接下来我们可以观察进程以及开启了哪些端口服务

输入命令:netstat -antlp

进行分析:

端口 协议 进程 服务 关键信息 / 安全意义
80 TCP nginx Web 服务 对外 HTTP,重点审计 access.log / WAF
888 TCP nginx Web 管理/二站 非常敏感,常见为管理后台
12485 TCP python3 自定义 Python 服务 异常端口,需重点关注
21 TCP pure-ftpd FTP 服务 明文协议,易被爆破
22 TCP sshd SSH root 正在登录
25 TCP postfix(master) SMTP 本地邮件服务
3306 TCP6 mysqld MySQL 对外监听(:::)

(1)发现开着3306服务,尝试登陆:mysql -u root -p

(尝试登陆失败)

(2)888端口,禁止访问

(3)12485 端口:宝塔页面

  • 访问192.168.44.171:12485页面

成功发现宝塔页面,不知道账号密码?

bash 复制代码
# 靶机里进入宝塔页面
bt

# 修改密码


成功进入:

得到账号密码后,点击"管理"进入数据库:

  • 账号:kaoshi
  • 密码:5Sx8mK5ieyLPb84m

进入数据库后搜索user相关的表:

可以x2_user_group看到id=1为管理员权限,而x2_user表中只有peadmin为管理员:

bash 复制代码
密码为:f6f6eb5ace977d7e114377cc7098b7e3

放到网上在线解密,可得到结果:Network@2020

明文密码:Network@2020

总结

执行wp脚本,提交题解:

bash 复制代码
[root@web-server ~]# ./wp
提交攻击者IP?
192.168.20.1
回答正确!
提交攻击者修改的管理员密码(明文)
Network@2020
回答正确!
提交第一次Webshell的连接URL(http://xxx.xxx.xxx.xx/abcdefg?abcdefg只需要提交abcdefg?abcdefg)
index.php?user-app-register
回答正确!
提交Webshell连接密码
Network2020
回答正确!
提交数据包的flag1
flag1{Network@_2020_Hack}
回答正确!
提交攻击者使用的后续上传的木马文件名称
version2.php
回答正确!
提交攻击者隐藏的flag2
flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}
回答正确!
提交攻击者隐藏的flag3
flag{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}
回答正确!
[root@web-server ~]# 

相对于上一篇Linux-1靶场,难度稍微提升,但整体排查应急的思路是差不多的,只不过添加了一点Web服务流量分析;

攻击路径还原

攻击手法猜测应该是从PHPEMS框架 利用peadmin:peadmin弱口令登录后,上传了蚁剑webshell:

(上传的路径)

期待下次再见;

相关推荐
谷哥的小弟2 小时前
File System MCP服务器安装以及客户端连接配置
服务器·人工智能·大模型·file system·mcp·ai项目
fiveym2 小时前
浪潮服务器BIOS性能优化全方案解析:多场景适配与配置详解
运维·服务器·性能优化
oMcLin2 小时前
如何在Ubuntu 22.04上通过调优Nginx和PHP‑FPM,提升高并发WordPress网站的负载均衡与缓存性能?
nginx·ubuntu·php
gaize12132 小时前
服务器日常维护,需要做些什么?服务器维护做什么-
服务器
散人10242 小时前
Linux(Ubuntu)RIME 中文输入法-朙月拼音
linux·ubuntu·rime
云霄IT2 小时前
centos7安装防火墙为项目开放服务器端口
服务器·网络·windows
草莓熊Lotso2 小时前
Linux 2.6 内核 O(1) 调度队列深度解析:为什么它能实现常数时间调度?
linux·运维·服务器·数据结构·人工智能·哈希算法·散列表
能年玲奈喝榴莲牛奶2 小时前
安全服务-渗透测试服务
安全·web安全·网络安全服务
饺子大魔王的男人2 小时前
远程调试总碰壁?局域网成 “绊脚石”?Remote JVM Debug与cpolar的合作让效率飙升
网络·jvm