jslagrew/cowrieprocessor

GitHub: jslagrew/cowrieprocessor

一个用于处理和汇总 Cowrie 蜜罐日志的 Python 工具,通过集成多源威胁情报自动生成攻击摘要与异常行为报告。

Stars: 16 | Forks: 4

# cowrieprocessor 该项目仍在维护中,但不再开发新功能。请查看以下仓库,获取包含更多功能的下一代工具: https://github.com/datagen24/cowrieprocessor 此应用程序的最初目的是帮助简化来自 DShield Honeypots (https://github.com/DShield-ISC/dshield) 的命令输入和文件下载数据。此 Python 应用程序旨在处理和汇总 Cowrie 日志 (https://github.com/cowrie/cowrie)。 ![Snag_1690ca6](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/084c7e4e99140454.png) **前置条件** 该脚本要求安装 Dropbox python 模块,即使不使用它也需要安装。要安装必要的模块: ``` sudo apt-get install python3-dropbox ``` **使用脚本 - 参数** 默认情况下,脚本将在 /srv/cowrie/var/log/cowrie 路径中查找任何 Cowrie JSON 日志(如果启用在本地存储这些文件的设置,这是 DShield honeypot 的当前默认路径)。至少需要一个搜索相关数据的参数,所有其他参数都是可选的,但可能允许进行额外的数据充实。 - 必需的搜索项(需要一个) - --download 下载或以其他方式由 honeypot 创建的文件的哈希值(与 /srv/cowrie/var/lib/cowrie/downloads 中的文件下载名称匹配) - --ttyfile --> /srv/cowrie/var/lib/cowrie/tty/ 中 tty 文件的文件名 - --session --> 将会话的 cowrie 日志关联在一起的会话编号(可在日志中找到) - --summarizedays --> 概述所有攻击并汇总指定天数内的攻击。例如,值为 '1' 将仅审查当天的攻击。 - 这将在目标文件夹中创建两个不同的报告文本文件。一个将是该时间段内所有已知攻击的摘要。另一个文件将仅包含看起来更独特的攻击(恶意软件的 VirusTotal 检出次数低或为零,或者在攻击期间执行的命令数量相同但攻击实例少于 5 次)。 - 可选的搜索项 - --vtapi --> 用于使用 VT 充实数据的 VirusTotal API Key(还将在工作路径中下载包含完整 JSON 输出的本地副本) - --email --> 您的电子邮件地址,在查询额外的 IP 地址数据时将用于向 DShield 注册查询 - --logpath --> 输入可能存储 cowrie 日志的备用路径 - --dbxapi --> 如果包含此项,摘要数据文本报告将上传到 Dropbox 帐户内的 'cowriesummaries' 文件夹中 - --dbx_key --> Dropbox 帐户的短期 API 访问密钥 - --dbx_secret --> 与关联的短期 API 访问密钥一起使用的密钥 - --dbx_refreshtoken --> 用于获取新的短期 API 访问密钥的 refresh token - --spurapi --> 如果包含此项,IP 地址数据将使用 SPUR.us 数据进行充实,用于摘要、上传和下载数据 **本地创建的文件** (脚本工作路径)/cowrieprocessor.sqlite - 包含已处理攻击摘要数据的 SQLite 数据库 (脚本工作路径)/\_\_report.txt - 请求时间范围内所有攻击的摘要 (脚本工作路径)/\\_abnormal\_\_report.txt - 请求时间范围内异常攻击的摘要 (脚本工作路径)/\/(filehash) - JSON 格式的 filehash VirusTotal 结果(通过文件哈希搜索) (脚本工作路径)/\/uh_(ipaddress) - JSON 格式的本地缓存 URLhaus 查找结果(通过 IP 搜索) (脚本工作路径)/\/files_(filehash) - 上传到 VirusTotal 的文件的 VirusTotal 响应 ![Snag_29dea69c](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/c814c795df140512.png) 这些数据目前存储用于故障排除和未来的潜在分析。并非所有从 URLHaus 或 VirusTotal 接收到的数据都会出现在汇总数据中,可以查看这些原始 JSON 数据以获取更多上下文信息。 **异常/不寻常的攻击报告** 在对数据进行摘要审查时,脚本还将尝试汇总攻击并突出显示任何满足以下条件的攻击会话 - 不寻常的命令数量(与摘要时间段内的其他攻击相比) - 提交的恶意软件是近期添加到 VirusTotal 的 ![Snag_1684520](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/0bde5f61fc140525.png) **Dropbox 上传** 上传到 Dropbox 需要创建一个与帐户关联的 Dropbox 应用。有关如何执行此操作的更多信息,可以在 [Dropbox 文档](https://www.dropbox.com/developers/reference/getting-started#app%20console) 中找到。 ![Snag_29f91fd4](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/2e0d77d34c140539.png) # 命令示例 ``` python3 process_cowrie.py --email --vtapi --summarizedays 2 ``` _将输出过去两天(今天和昨天)攻击的摘要。_ ``` python3 process_cowrie.py --email --vtapi --downloadfile a8460f446be540410004b1a8db4083773fa46f7fe76fa84219c93daa1669f8f2 ``` _将输出包含给定文件哈希值的已知攻击。_ ``` python3 process_cowrie.py --email --vtapi --dbxapi --summarizedays 2 ``` _将处理过去两天的 cowrie 数据,使用 URLHaus 和 VirusTotal 数据进行充实,并使用 Access Token(用于测试的短期 API)上传到 Dropbox。_ ``` python3 process_cowrie.py --email --vtapi --dbxkey --dbxsecret --dbxrefreshtoken --summarizedays 2 ``` _将处理过去两天的 cowrie 数据,使用 URLHaus 和 VirusTotal 数据进行充实,并使用 OAuth 工作流和 Refresh Token 上传到 Dropbox 以实现完全自动化。_
标签:Ask搜索, Dropbox, DShield, IP 地址批量处理, Python, SSH蜜罐, tty回放, VirusTotal, 会话分析, 命令解析, 哈希分析, 威胁情报, 安全数据分析, 开发者工具, 攻击溯源, 数据摘要, 文件下载提取, 无后门, 日志处理, 网络信息收集, 网络安全, 自动化报告, 蜜罐, 证书利用, 轻量级蜜罐, 进程注入, 逆向工具, 隐私保护