MM-Manuel/StaticAnalyst

GitHub: MM-Manuel/StaticAnalyst

一款轻量级的 Windows 可执行文件静态分析工具,通过提取可疑网络连接和 DLL 加载信息并结合可扩展的行为签名库来评估文件潜在风险。

Stars: 2 | Forks: 0

# StaticAnalyst **StaticAnalyst** 是一个旨在对可执行文件执行静态分析的 Python 脚本。它会提取潜在的恶意 URL、IP 地址和 DLL 加载,同时使用内置(但可扩展/自定义)的行为评估机制(`signatures.json`)来检测高风险的 Windows API、可疑命令以及已知的威胁组合(例如勒索软件、键盘记录器或进程注入)。此外,它还会计算文件的哈希值,以便自动与 VirusTotal 的数据库进行交叉比对。你可以通过 (`TestExeFile.dll`) 来测试检测功能,它应该会触发特定的标记和可疑行为指标(该文件只是一个扩展名为 dll 的纯文本文件,无法被执行)。 ## 环境要求 要成功运行 StaticAnalyst,你需要: * **操作系统:** Windows 10 或 11。 * **Python:** 系统中需安装 3.8 或更高版本(请确保在安装过程中勾选了 **"Add Python to PATH"**)。 * **Python 库:** * `requests`(在使用 `.bat` 启动器时会自动检查并安装)。 ## 运行方式 ### 简单方式 双击运行 StaticAnalyst.bat,这个原生的 Windows 脚本会自动检查你的依赖项并运行 Python 脚本本身。 ### 手动方式 1. 确保你的系统上已安装 **Python**。 2. 克隆此仓库或下载源代码: git clone https://github.com/MM-Manuel/StaticAnalyst.git cd StaticAnalyst 3. 安装所需的依赖项: pip install requests 4. 运行脚本: python main.py ## 什么是 VirusTotal API 以及如何获取 API Key? ### 什么是 VirusTotal API? **VirusTotal** 是一项免费的在线服务,利用 70 多种防病毒引擎和域名阻止列表来分析文件和 URL 中的病毒、恶意软件和其他安全风险。 **VirusTotal API** 允许开发者以编程方式查询其庞大的威胁情报数据库。在此工具中,该 API 用于发送计算出的文件 SHA-256 哈希值,以检查它是否已被全球网络安全社区标记为恶意文件,而无需实际上传原始文件。 ### 如何获取免费的 API Key(分步指南) 获取 VirusTotal API key 完全免费,只需不到 2 分钟: 1. **创建账户:** 访问 [VirusTotal.com](https://www.virustotal.com/) 并点击右上角的 **Sign Up** 注册一个免费账户。 2. **确认你的电子邮箱:** 检查你的收件箱并验证你的电子邮件地址以激活账户。 3. **查找你的 API Key:** * 登录 VirusTotal。 * 点击右上角的**个人资料图标/用户名**。 * 从下拉菜单中选择 **API Key**。 4. **复制你的 Key:** 你会看到一长串字母数字字符串(例如 `65ea4c7c3d83j25k2...`)。复制此字符串——这就是你的个人 API key。 ### 如何在此脚本中使用它 当你运行 `main.py` 时,脚本会在控制台中提示你: ``` If you want a VirusTotal filehash analysis paste your API key and press enter. If not, leave empty and press enter. > API Key: ``` ## 致谢、限制与 VirusTotal API 使用说明 本项目集成了 **VirusTotal Public API**,用于交叉比对静态分析期间获得的哈希值 (SHA256)。使用此工具时,用户必须了解 VirusTotal 政策规定的以下条件和限制: * **非商业用途:** 此脚本仅出于教育目的和个人研究而开发。严禁将 VirusTotal Public API 用于商业目的或集成到付费产品中。 * **速率限制:** Public API 施加了严格的技术限制。目前,它允许**每分钟最多 4 次请求**和**每天 500 次请求**。如果批量分析多个文件,脚本可能会出现暂时暂停或报错 (HTTP 429) 以遵守这些限制。 * **数据隐私:** 使用此脚本查询哈希值时,搜索信息将发送到 VirusTotal 的服务器。VirusTotal 会与此全球网络安全社区共享此遥测数据和分析结果。强烈建议不要使用此工具分析专有或机密软件,或包含个人身份信息的文件。 * **知识产权:** 此脚本通过网络显示的所有有关声誉、防病毒检测和判定的信息均归 VirusTotal 及其各自的合作伙伴扫描引擎所有。 有关更多信息,请参阅 [VirusTotal 服务条款](https://docs.virustotal.com/docs/terms-of-service)。 **除了可选的 VirusTotal API 集成之外,StaticAnalyst 的所有其他内容均可 100% 免费在任何地方使用、扩展和自定义,包括用于商业、盈利或企业环境。** ## 展示你的支持! 如果你觉得 **StaticAnalyst** 有用,请考虑在 GitHub 上给它点个 **Star**!这有助于提升项目的知名度,并激励进一步的开发。 如果你发现错误或有功能需求,欢迎提交 **Issue**!
标签:Ask搜索, HTTP工具, Python, VirusTotal, 云安全监控, 威胁情报, 开发者工具, 无后门, 逆向工具, 静态分析