CollapseLoader/CollapseScanner

GitHub: CollapseLoader/CollapseScanner

CollapseScanner 是一款基于 Rust 的高效 Java 逆向分析工具,专门用于扫描 JAR 和 Class 文件中的可疑网络连接、恶意代码模式及混淆特征。

Stars: 12 | Forks: 0

# CollapseScanner ### 一款先进的 JAR/class 文件逆向工程和分析工具,旨在检测 Java 应用程序、模组和插件中的可疑模式。 ### ✨ 优势 - **扫描多种检测类别** 🔍: - **Network**: 检测潜在的恶意 IPv4/IPv6 地址和 URL - **Malicious**: 识别可疑的代码模式(后门、漏洞利用等) - **Obfuscation**: 检测混淆代码和可疑的命名模式 - **功能** ⚙️: - **Resource extraction**: 从 JAR 文件中提取所有资源 - **String analysis**: 从 class 文件中提取并分析所有字符串 - **性能优化** 🚀: - **Multi-threading**: 并行处理文件以加快扫描速度 - **Path filtering**: 包含或排除匹配模式的路径 - **Custom ignore lists**: 跳过指定的可疑关键词 ## ⚙️ 安装 ### 从源码安装 ``` git clone https://github.com/CollapseLoader/CollapseScanner.git ``` ``` cargo build --release ``` 二进制文件将位于 target/release/collapsescanner ### 从 Release 安装 从 [releases page](https://github.com/CollapseLoader/CollapseScanner/releases) 下载最新的 release。 ## 📝 用法 ``` # JAR 文件的基本扫描 collapsescanner file.jar # 扫描目录中的所有 JAR 和 class 文件 collapsescanner directory # 不同的检测模式 collapsescanner file.jar --mode network collapsescanner file.jar --mode obfuscation # 从 JAR 中提取所有资源 collapsescanner file.jar --extract # 从 class 文件中提取所有字符串 collapsescanner file.jar --strings # 指定输出目录 collapsescanner file.jar --extract --output output/dir # 使用 8 个处理线程运行 collapsescanner file.jar --threads 8 # 路径过滤 collapsescanner file.jar --exclude "assets/**" --exclude "*.log" --find "com/example/*" # 跳过特定关键字 collapsescanner file.jar --ignore_keywords ignore_keywords.txt ``` ## 🔍 命令行选项 | Option | Description | | ------------------- | ----------------------------------------------------------------------------------- | | `path` | 要扫描的 JAR 文件、class 文件或目录的路径 | | `--mode` | 检测模式:`network`、`malicious`、`obfuscation` 或 `all`(默认) | | `--extract` | 从 JAR 文件中提取所有资源 | | `--strings` | 从 class 文件中提取所有字符串 | | `--output` | 指定输出目录(默认:./extracted) | | `--json` | 以 JSON 格式导出结果 | | `-v, --verbose` | 启用详细输出(显示大小等) | | `--threads` | 用于并行处理的线程数(0 = 根据 CPU 核心数自动确定) | | `--exclude` | 排除匹配通配符模式的路径(可多次使用) | | `--find` | 仅扫描匹配通配符模式的路径(可多次使用) | | `--ignore_keywords` | 指向包含要忽略关键词的 .txt 文件的路径(每行一个) | ## 🛡️ 检测能力 CollapseScanner 分析 Java class 文件以发现: - **网络指标**: - IP 地址(IPv4 和 IPv6) - URL 和域名 - 网络相关字符串 - **加密指标**: - 加密算法(AES, DES, RSA) - 哈希函数(MD5, SHA) - 密钥管理和密码处理 - **混淆指标**: - 可疑的字符序列 - 标识符中的 Unicode 字符 - 自定义 JVM 字节码检测(异常的魔数字节) ## 🛠️ 工具
Remapper **Remapper** - 一个用于修复使用“尾部斜杠”(trailing slash)技术进行混淆的 JAR 文件的工具,这可能会导致 class 反编译和分析出现问题。 ### 用法 ``` # 如果从源目录运行 cargo run --bin remapper input.jar output.jar ``` #### 示例输出: ``` 🔍 Remapper for "trailing slash" technique 📥 Input JAR: .\obfuscated.jar 📤 Output JAR: output.jar 🔧 Building fixed JAR file... [00:00:10] [========================================] 18540/18540 entries ✅ Successfully fixed JAR -> output.jar ```
## 展示
📋 示例输出 ``` ╔══════════════════════════════════════════════════════════════════════════════╗ ║ FINDINGS REPORT ║ ╚══════════════════════════════════════════════════════════════════════════════╝ 📄 File: suspicious.jar/com/example/malicious/Payload.class 🌐 IPv4 Address: 192.168.1.100 🔗 URL: http://malicious-domain.com/c2 🤖 Discord Webhook: https://discord.com/api/webhooks/12345/abcdef ❗ Suspicious Keyword: 'payload' in "Executing payload" ╔══════════════════════════════════════════════════════════════════════════════╗ ║ SCAN SUMMARY ║ ╚══════════════════════════════════════════════════════════════════════════════╝ 📊 Total Findings: 5 | Files with Findings: 1 | Risk Level: HIGH RISK (9/10) ⏱️ Scan Time: 1.23s | Total Files Scanned: 12 | Processing Rate: 9.8 files/sec 🔍 Findings Breakdown: 🌐 IPv4 Address (1) • 192.168.1.100 🔗 URL (1) • http://malicious-domain.com/c2 🤖 Discord Webhook (1) • https://discord.com/api/webhooks/12345/abcdef ❗ Suspicious Keyword (1) • 'payload' in "Executing payload" 👻 Custom JVM Warning: Files with unusual magic bytes detected. These may require a custom ClassLoader. ```
标签:JAR分析, Minecraft模组检测, Rust, URL提取, 云安全监控, 云资产清单, 反编译, 可视化界面, 后门检测, 字符串提取, 安全扫描, 审计, 工具, 开源安全工具, 恶意活动检测, 提示词模板, 时序注入, 混淆检测, 网络安全, 网络流量审计, 资源提取, 逆向工程, 逆向工程平台, 通知系统, 隐私保护, 静态分析