vsxsentry/vsxsentry.github.io
GitHub: vsxsentry/vsxsentry.github.io
VSXSentry 是一个社区驱动的 VS Code 扩展威胁情报平台,提供恶意和高风险扩展的结构化 feed、分析工具及企业级扩展管控策略生成能力。
Stars: 11 | Forks: 0
# VSXSentry - VS Code Extension 威胁情报
[](https://github.com/vsxsentry/vsxsentry.github.io/actions/workflows/sync_feed.yml)
**[vsxsentry.github.io](https://vsxsentry.github.io)**
针对 Visual Studio Code 扩展的社区驱动型威胁情报。追踪来自 VS Marketplace 的恶意、已移除及可疑扩展。
## 什么是 VSXSentry?
VS Code 扩展以原生 Node.js 进程执行,拥有对文件系统、终端、环境变量、SSH 密钥和源代码的完全访问权限——**没有沙箱,也没有权限模型**。VSXSentry 为安全团队提供结构化、机器可读的 feed 和工具,以检测、拦截和响应恶意扩展。
## 功能特性
### Feed 浏览器
- **合并 feed** - 包含所有记录(恶意 + 高风险),支持跨所有字段的全文搜索
- **恶意 feed** - 因恶意软件、抢注(typo-squatting)、冒充、垃圾信息而被移除的扩展
- **高风险 feed** - 合法但具有双刃剑性质的扩展(远程访问、隧道、凭证库、AI 代码 agent、文件传输、云访问、数据库客户端)
- 可排序的列(Extension ID、发布者、严重程度、类别、评论、来源、移除日期)
- 每个视图都通过 hash 路由拥有唯一的可共享 URL
### Feed 下载
所有 feed 均在服务端生成并作为静态文件提供——右键点击任意下载链接可复制 URL,以便进行远程调用(Microsoft XDR、Splunk 等):
- **合并/恶意/高风险** feed,提供 JSON 和 CSV 格式
- **IOC 列表** - extension ID、高风险 ID、发布者黑名单(每行一个)
- **Splunk** 查找 CSV
- **Microsoft Sentinel** 关注列表 CSV
- 用于 TAXII / OpenCTI / MISP 的 **STIX 2.1** bundle
- **MISP** event 和 warning list
- 带有评分和置信度的 **OpenCTI** CSV
- 用于 Mandiant 风格 endpoint 扫描的 **OpenIOC**
### 脚本生成器
生成特定平台的脚本,以检测、拦截或移除来自 VSXSentry feed 的扩展:
- **平台**: Windows (PowerShell)、Linux (Bash)、macOS (Bash)
- **操作**: 检测、移除、拦截 (policy)
- **Feed 范围**: 仅恶意、仅高风险、全部
- **VS Code 变体**: code、code-insiders、codium、cursor
- **选项**: 严重程度过滤器、dry-run 模式、跳过确认
- 快速预设,支持一键使用
- 脚本在 runtime 获取 feed,因此始终使用最新数据
- CLI 自动发现及 fallback 路径,获取 feed 时带有备用 URL,每一步都有完善的错误处理
- Block 操作直接将 `extensions.allowed` 合并到 `settings.json` 中并创建备份
### VSIX 分析器
上传 `.vsix` 包进行客户端分析(数据不会离开您的浏览器):
- **归档 SHA-256** hash
- 包中每个文件的**单文件 SHA-256** hash(支持全部复制)
- **Manifest 解析** - extension ID、发布者、版本、activation events、capabilities
- **Feed 匹配** - 精确的 extension ID 匹配和发布者级别的匹配
- **风险信号扫描** - child_process、文件系统访问、网络调用、机密/凭证访问、终端创建、minified bundle
- **原生二进制文件检测**,包含 PE 签名者提取(已签名/未签名、签名者 CN)
- **IP 地址提取** - 硬编码的 IPv4 地址(已过滤私有地址段)
- **域名提取** - 代码中发现的外部域名(已过滤常见的误报)
- **URL 提取** - 包中找到的所有 HTTP/HTTPS URL
- **依赖项列表** - runtime 和 dev 依赖项,并检测可疑名称
- **文件列表** - 按大小排序的最大文件,按类型进行颜色编码(二进制文件、脚本、其他)
- **Marketplace 下载 URL** - 自动生成的 API URL,用于重新下载确切分析过的版本
- **Block policy 片段** - 可直接用于所分析扩展的 `extensions.blocked` JSON
- 包含 Marketplace API URL 模板的 VSIX 下载说明
### Policy 生成器
生成 `extensions.allowed` 企业 policy:
- **Feed 范围**: 仅恶意、仅高风险、全部
- **黑名单模式** - `"*": true`,特定扩展设为 `false`
- **白名单模式** - `"*": false`,带有明确的允许列表(Microsoft/GitHub 默认配置)
- 两种模式均支持自定义扩展条目
- 特定平台的部署指南:
- **Windows** - 带有 GPO 指南的 ADMX/ADML Group Policy
- **macOS** - 用于 MDM 的 `.mobileconfig` 配置文件(Jamf、Intune、Mosyle、Kandji)
- **Linux** - `/etc/vscode/policy.json` 及 Ansible 示例
### 调查指南
- **取证痕迹** - 针对 extension、设置、日志、缓存、持久化位置、进程 artifacts 和网络指标(Windows、macOS、Linux)的特定操作系统路径
- **修复 Playbook** - 4 步事件响应:隔离并移除、搜寻持久化(Settings Sync、工作区建议、devcontainer.json、计划任务)、凭证轮换优先级列表、企业强化清单
### 资产清点工具
位于 `tools/` 目录下的 PowerShell、Python 和 Bash 脚本,用于扫描工作站上已安装的扩展。
## Feed
规范的 feed 维护在:
```
https://raw.githubusercontent.com/mthcht/awesome-lists/refs/heads/main/Lists/VSCODE%20Extensions/feeds/vsxsentry_feed.json
```
GitHub Action 每 6 小时同步一次本地副本,并运行 `generate_feeds.py` 将所有 feed 格式生成为 `feeds/` 下的静态文件。
### 本仓库提供的 Feed 文件
| 文件 | 描述 |
|---|---|
| `vsxsentry_feed.json` / `.csv` | 合并 feed(恶意 + 高风险) |
| `vsxsentry_malicious_feed.json` / `.csv` | 仅恶意扩展 |
| `vsxsentry_risky_feed.json` / `.csv` | 仅高风险扩展 |
| `ioc_all_extension_ids.txt` | 所有恶意 extension ID |
| `ioc_high_risk_extension_ids.txt` | 严重/高危险级别的恶意 ID |
| `ioc_block_publishers.txt` | 包含高危恶意扩展的发布者 |
| `risky_extension_ids.txt` | 所有高风险 extension ID |
| `vsxsentry_splunk_lookup.csv` | Splunk 查找表 |
| `vsxsentry_sentinel_watchlist.csv` | Microsoft Sentinel 关注列表 |
| `vsxsentry_stix2_bundle.json` | STIX 2.1 bundle |
| `vsxsentry_misp_event.json` | MISP event |
| `vsxsentry_misp_warninglist.json` | MISP warning list |
| `vsxsentry_opencti_import.csv` | OpenCTI 导入 CSV |
| `vsxsentry_openioc.ioc` | OpenIOC 格式 |
| `stats.json` | Feed 统计信息 |
### 高风险扩展类别
这些是代表企业风险的合法扩展——并非恶意,而是具有双刃剑性质:
| 类别 | 示例 |
|---|---|
| `risky-remote-access` | Remote SSH、Remote Tunnels、RDP、Codespaces、Gitpod、Coder |
| `risky-tunnel` | ngrok、Cloudflare Tunnel、Tailscale、LocalTunnel |
| `risky-credential-access` | 1Password、Keeper、HashiCorp Vault、Doppler、Infisical |
| `risky-ai-code-access` | Copilot、Cline、Roo Code、Continue、Tabnine、Codeium、Supermaven、Cody |
| `risky-cloud-access` | AWS Toolkit、Azure Resources、Cloud Code、Kubernetes、Docker |
| `risky-database-access` | SQLTools、Database Client、MongoDB、Redis、MSSQL、Oracle、CosmosDB |
| `risky-file-transfer` | SFTP sync、ftp-simple、Deploy Reloaded、PRO Deployer |
| `risky-code-execution` | Code Runner、Jupyter、PowerShell、Live Server |
| `risky-api-client` | Thunder Client、Postman、REST Client |
| `risky-collaboration` | Live Share |
| `risky-infrastructure` | Terraform、Pulumi、Tilt |
| `risky-git-access` | GitLens、GitHub Pull Requests |
## 数据来源
- [Microsoft VS Marketplace RemovedPackages.md](https://github.com/microsoft/vsmarketplace/blob/main/RemovedPackages.md) - 官方已移除扩展列表
- [mthcht/awesome-lists](https://github.com/mthcht/awesome-lists) - 精选的威胁情报列表
- 社区提交和安全研究
## 相关项目
- [ExtSentry](https://extsentry.github.io) - 浏览器扩展威胁情报
## 许可证
MIT
标签:AI合规, SIEM集成, 后端开发, 多模态安全, 威胁情报, 应用安全, 开发者工具, 数据可视化, 逆向工具