玄机靶场 | blueteam的小心思

前言

玄机靶场日常刷题记录,练练手

索引

玄机题目

步骤#1

攻击者通过什么密码成功登录了网站的后台?提交密码字符串的小写md5值,格式flag{md5}。

在根目录发现wireshark.pcap文件,可以用wireshark进行流量分析

将文件通过SFTP传到本地,过滤出http流量

一个一个分析,发现可疑流量,直接得到账号密码

md5加密得

1
flag{d63edb0e9df4cf411398e3658c0237e0}

步骤#2

攻击者在哪个PHP页面中成功上传了后门文件?例如upload.php页面,上传字符串”upload.php”的小写md5值,格式flag{md5}。

继续往下分析,发现可疑流量

发现这里上传了一个zip压缩包,追踪TCP流

发现一句话木马,确定攻击者是通过该页面上传木马文件,加密pluginmgr.php字符得到

1
flag{b05c0be368ffa72e6cb2df7e1e1b27be}

步骤#3

找到攻击者上传的webshell文件,提交该文件的小写md5值,格式flag{md5}。

直接查找关键字

1
grep -r --include="*.php" 'eval($_POST' /

加密文件得到flag

1
flag{a097b773ced57bb7d51c6719fe8fe5f5}

步骤#4

攻击者后续又下载了一个可执行的后门程序,提交该文件的小写md5值,格式flag{md5}。

继续分析流量,发现可疑流量

发现这个木马文件在尝试下载一个文件,直接搜索这个文件

1
find / -name "is.world"

这里有个坑,不能直接加密文件,要用引号括起来再加密,不然中间的空格会分隔指令

1
md5sum "/var/www/html/plugins/.       /is.world"

得到flag

1
flag{ee279c39bf3dcb225093bdbafeb9a439}

步骤#5

攻击者创建了后门用户的名称是?例如attack恶意用户,上传字符串”attack”的小写md5值,格式flag{md5}。

查看用户列表

1
cat /etc/passwd

发现有个用户的用户ID和组ID都为0,权限很高,一般情况下只有管理员的UID和GID为0,说明这个是后门用户,直接加密得到flag

1
flag{4cda3461543c9a770a3349760594facd}

步骤#6

攻击者创建了一个持久化的配置项,导致任意用户登录就会触发后门的连接。提交该配置项对应配置文件的小写md5值,格式flag{md5}。

一般这种情况是修改了shell配置文件,常见的配置文件包括

1
2
3
4
5
6
7
8
9
10
11
12
用户级别
1、"~/.bashrc" 用于配置非登录 Shell 的环境(例如桌面终端), 每次启动新的非登录 Shell 时加载
2、"~/.bash_profile" 用于配置 登录 Shell 的环境, 每次登录(例如通过 SSH 或控制台登录系统)
3、"~/.profile" 用于配置 登录 Shell 环境变量, 在用户登录时执行
4、"~/.zshrc" 每次启动 Z Shell 的非登录会话时加载
5、"~/.bash_logout" 在用户退出登录 Shell 时执行

系统级别
1、"/etc/profile" 用于设置所有用户的登录 Shell 环境变量, 所有用户登录时加载
2、"/etc/bash.bashrc" 提供全局的非登录 Shell 配置, 每次启动新的非登录 Shell 时加载
3、"/etc/profile.d/*.sh" 当 /etc/profile 加载时, 会依次加载 /etc/profile.d 中的所有脚本文件(通常是 .sh 文件)
4、"/etc/environment" 用于配置系统范围的环境变量, 在用户登录前加载,影响所有用户和守护进程

一般情况执行顺序,可以用作参考

1
2
3
4
5
6
7
8
9
10
11
1.登录 Shell
系统级配置文件:
/etc/profile
/etc/profile.d/*.sh
用户级配置文件:
~/.bash_profile(如果不存在,则加载 ~/.profile)
2.非登录 Shell
系统级配置文件:
/etc/bash.bashrc(如果系统支持)
用户级配置文件:
~/.bashrc

这里一个一个尝试即可,发现/etc/profile有问题

直接md5sum加密得到flag

1
2
md5sum /etc/profile
#flag{65bf3e4a9ac90d75ec28be0317775618}

步骤#7

攻击者创建了一个持久化的配置项,导致只有root用户登录才会触发后门的连接。提交该配置项对应配置文件的小写md5值,格式flag{md5}。

搜索后门触发命令,这里搜索的是用户目录下的可疑配置文件

1
grep -r -E '(nc|curl|wget|bash|python|eval|base64)' ~/

发现有个配置文件尝试外联恶意网址

直接加密得到flag

1
flag{4acc9c465eeeb139c194893ec0a8bcbc}

步骤#8

攻击者加密了哪个数据库?提交数据库的文件夹名,例如user数据库对应存放位置为user文件夹,上传字符串”user”的小写md5值,格式flag{md5}。

确定数据库类型

1
systemctl list-units --type=service | grep -E '(mysql|mariadb|postgresql|mongodb|redis)'

查看数据库的登录信息,一般放在配置文件“config.inc.php”里面

1
find / -name config.inc.php

得到数据库账号密码,用 Premium连接,一个一个尝试,发现有个数据库无法查看,说明被加密了,这里用的大佬的图

查找对应文件,可以得到文件所在路径

1
find / -name JPMorgan@0020Chase

加密文件夹名得到flag

1
flag{0928a5424aa6126e5923980ca103560e}

步骤#9

解密数据库,提交Harper用户对应Areer的值。提交Areer值的小写md5值,格式flag{md5}。

查看mysql文件夹,发现有个可疑文件

直接抓取内容看看,发现是个加密脚本

这里要写一个逆推脚本,参考网上的文章

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php  
$currentDate = date("Y-m-d");
$key = md5('2023-11-18');
$iv = substr(hash('sha256', "DeepMountainsGD"), 0, 16);
$filePath = "/var/lib/mysql/JPMorgan@0020Chase";
$files = scandir($filePath);
foreach ($files as $file) {
if ($file != "." && $file != "..") {
$fullPath = $filePath . '/' . $file;
$encryptedContent = file_get_contents($fullPath);
$decryptedContent = openssl_decrypt($encryptedContent, 'aes-256-cbc', $key, 0, $iv);
file_put_contents($fullPath, $decryptedContent);
}
}
?>

这里的时间是JPMorgan@0020Chase的创建时间

1
stat JPMorgan@0020Chase	#查看详细信息

把脚本写进/var/www/mysql/目录

1
vim 1.php

先按i插入代码,然后按一下Esc,再按住shift + :,然后输入wq保存

运行代码

1
php 1.php

重启数据库

1
systemctl restart mysql

这时再返回Premium,可以发现数据库解密了,Harper用户对应Areer为Chef,加密即可

1
flag{8fd82b8864d71ed7fa12b59e6e34cd1c}

步骤#10

因为什么文件中的漏洞配置,导致了攻击者成功执行命令并提权。提交该文件的小写md5值,格式flag{md5}。

这里攻击者用到提权,可以查找以 root 用户身份拥有并设置了 SUID(Set User ID)权限的文件。

1
find / -user root -perm -4000 2>/dev/null	#4000 代表文件权限中的 SUID 位。

当一个文件被设置了 SUID 位,并且用户执行该文件时,该程序会以文件拥有者(通常是 root)的权限运行,而不是以当前用户的权限运行

发现/usr/bin/sudo,sudo 被广泛用于权限提升,估计攻击者通过这个提权,/etc/sudoers 包含了系统上 sudo 的配置和权限设置,这里抓取内容看一下

1
cat /etc/sudoers

www-data用户被赋予了root权限,而且不需要输入密码,到这里已经可以确认漏洞配置了,就是/etc/sudoers ,加密文件得到flag

1
flag{6585817513b0ea96707ebb0d04d6aeff}

参考

特别鸣谢

Peterpan.exe:https://blog.csdn.net/administratorlws/article/details/140471298

作者

WayneJoon.H

发布于

2025-01-25

许可协议