玄机-应急响应-webshell查杀

发布于:2025-04-08 ⋅ 阅读:(16) ⋅ 点赞:(0)

题目要求:

要求获取四个flag

webshell查杀:

常见的webshell:

PHP: eval(), system(), exec(), shell_exec(), passthru(), assert(), base64_decode()

ASP: Execute(), Eval(), CreateObject()

JSP: Runtime.getRuntime().exec()

webshell常见位置

.asp / .php / .jsp / .aspx

命令行搜索

find命令:

find [路径] [选项] [表达式]
  • 路径:指定查找的起始目录。如果不指定,默认从当前目录开始。
  • 选项:控制find的行为。
  • 表达式:定义查找的条件。

常见选项:

  • -name:按文件名查找(区分大小写)。
  • -iname:按文件名查找(不区分大小写)。
  • -type:按文件类型查找。
    • f:普通文件。
    • d:目录。
    • l:符号链接。

xargsxargs命令用于将输入数据重新格式化后作为参数传递给其他命令

find / -name "*.php" | xargs grep "eval("
xargs:xargs命令用于将输入数据重新格式化后作为参数传递给其他命令。在这个命令中,xargs将find命令
找到的文件列表作为参数传递给grep命令。

grep "eval(":grep命令用于搜索文本,并输出匹配的行。这里"eval("是grep命令的搜索模式,用于查找
包含eval(字符串的行。

使用find命令查到了三个可疑文件。

第一个使用cat抓取文本。得到flag1。

通过查看webshell内容可以发现明显为godzilla特征,将哥斯拉github地址通过md5加密获得flag2

@session_start();

@set_time_limit(0);

@error_reporting(0);

$key=‘3c6e0b8a9c15224a’;
哥斯拉常见密钥

黑客隐藏shell的完整路径

使用ls -l查找那三个可疑文件,发现只有Mysql.php是隐藏的,完整路径+md5得到flag3

寻找免杀马

免杀马说明没有特征,所以需要看看有没有什么加密,使用find查找是否有base64加密。

find / -name "*.php" | xargs grep "base64_decode" 

这个是猜测,最好用日志查看。

linux的网站日志存放在/var/log,目录里面有apache2的,打开查看,浏览之后发现可疑的phpinfo,而且还200。是在一个top.php文件中。

找到文件用cat获取,发现就是恶意文件,完整路径加md5,得到flag4。


网站公告

今日签到

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