MitoNacho/sentinel-cli

GitHub: MitoNacho/sentinel-cli

Sentinel 是一款用 Python 开发的终端威胁情报工具,帮助 SOC 分析师便捷地调查 IP 等失陷指标。

Stars: 0 | Forks: 0

# Sentinel Sentinel 是一个使用 Python 开发的个人项目,旨在方便从终端调查失陷指标 (IOC)。 目前它处于开发的初始阶段,旨在版本迭代中成为一款对 SOC 分析师日常工作真正有用的工具,同时始终保持简洁、模块化且易于扩展的架构。 ╭────────────────────────────── Sentinel • v0.1.2 ──────────────────────────────╮ ``` ███████╗███████╗███╗ ██╗████████╗██╗███╗ ██╗███████╗██╗ ██╔════╝██╔════╝████╗ ██║╚══██╔══╝██║████╗ ██║██╔════╝██║ ███████╗█████╗ ██╔██╗ ██║ ██║ ██║██╔██╗ ██║█████╗ ██║ ╚════██║██╔══╝ ██║╚██╗██║ ██║ ██║██║╚██╗██║██╔══╝ ██║ ███████║███████╗██║ ╚████║ ██║ ██║██║ ╚████║███████╗███████╗ ╚══════╝╚══════╝╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═══╝╚══════╝╚══════╝ Threat Intelligence CLI for SOC Analysts Created by Nacho Naves ``` ╰───────────────────────────────────────────────────────────────────────────────╯ ## 项目状态 **当前版本:** `0.1.2` 这第一个版本包含了项目的基础和架构,未来的功能将在此之上构建。 其目标不是与现有的专业工具竞争,而是开发一个自己的实用工具,随着新功能的增加而逐步演进,既可以作为学习工具,也可以用于实际使用。 # 当前功能 - 调查 IPv4 地址。 - 集成: - VirusTotal - AbuseIPDB - AlienVault OTX - 通过 Rich 在终端中提供丰富的输出。 - 用于自动化的 JSON 格式输出。 - 通过 `.env` 文件进行配置。 - 为扩展做好准备的模块化架构。 - 兼容 Windows 和 Kali Linux。 # 安装 ## 要求 - Python **3.11** 或更高版本。 - Git。 - 互联网连接。 - 受支持服务的 API 密钥(可选,但推荐)。 # 在 Windows 上安装 克隆仓库: ``` git clone https://github.com/TU-USUARIO/sentinel-cli.git cd sentinel-cli ``` 创建虚拟环境: ``` python -m venv .venv ``` 激活它: **PowerShell** ``` .\.venv\Scripts\Activate.ps1 ``` 安装 Sentinel: ``` pip install -e . ``` 检查安装: ``` sentinel --version ``` 预期输出: ``` sentinel 0.1.2 ``` # 在 Kali Linux 上安装 克隆仓库: ``` git clone https://github.com/TU-USUARIO/sentinel-cli.git cd sentinel-cli ``` 创建虚拟环境: ``` python3 -m venv .venv ``` 激活它: ``` source .venv/bin/activate ``` 安装 Sentinel: ``` pip install -e . ``` 验证安装: ``` sentinel --version ``` # 配置 Sentinel 会自动从 `.env` 文件加载 API 密钥。 从示例创建文件: ``` cp .env.example .env ``` 文件内容: ``` SENTINEL_VIRUSTOTAL_KEY=tu_api_key SENTINEL_ABUSEIPDB_KEY=tu_api_key SENTINEL_OTX_KEY=tu_api_key ``` 无需修改任何其他配置文件。 如果操作系统中定义了环境变量,它们将优先于 `.env` 文件中定义的变量。 # 用法 调查 IP 地址: ``` sentinel ip 8.8.8.8 ``` JSON 格式输出: ``` sentinel ip --json 8.8.8.8 ``` 将报告保存到文件中: ``` sentinel ip -o informe.txt 8.8.8.8 ``` 严格模式: ``` sentinel ip --strict 8.8.8.8 ``` 显示帮助: ``` sentinel --help ``` # 项目结构 ``` src/ └── sentinel/ ├── core/ ├── formatters/ ├── models/ ├── modules/ ├── services/ └── utils/ ``` 该架构遵循模块化的理念,每个组件都有单一的职责,从而简化了维护和新功能的引入。 # 未来的功能 目标是继续以渐进式的方式开发 Sentinel。 未来版本中计划实现的一些功能包括: - 域名调查。 - 哈希 (MD5, SHA1, SHA256) 调查。 - WHOIS 丰富化。 - IOC 列表处理。 - Linux 日志监控。 - 分析 `/var/log/auth.log`。 - 新的 Threat Intelligence 提供商。 - 更完善的报告导出。 # 为什么选择 Sentinel? 这个项目的诞生有着双重目的。 一方面,通过应用良好的架构、模块化和可维护性实践,深化软件开发。 另一方面,构建一款对 SOC 分析师日常工作可能有所帮助的工具,并随着新功能的加入而不断发展。 Sentinel 不会从一开始就开发一个庞大的应用程序,而是会一步步成长,始终保持坚实且易于维护的基础。 # 许可证 该项目在 **MIT** 许可证下分发。 # 作者 **Nacho Naves** Python 开发者和网络安全学生。 Sentinel 是一个持续开发的项目,欢迎任何建议或贡献。
标签:DInvoke, IOC调查, Python, SOC分析, 威胁情报, 实时处理, 开发者工具, 无后门, 逆向工具