dk3yyyy/VirusTotal-Telegram-Bot
GitHub: dk3yyyy/VirusTotal-Telegram-Bot
一个基于 Pyrogram 和 VirusTotal API 的高性能 Telegram 机器人,支持大文件扫描、URL与哈希检测及交互式报告。
Stars: 0 | Forks: 0
# VirusTotal Telegram Bot
一个由 **Pyrogram** (MTProto) 和 **VirusTotal v3 API** 驱动的高性能 Telegram 机器人。该机器人旨在处理大型文件,通过无缝查询 VirusTotal,直接在 Telegram 中为您提供丰富、交互式的威胁分析报告。
## 功能
- **超大文件支持 (2GB)**:突破了标准 20MB 的机器人限制。由于使用了 Pyrogram 和 MTProto,您可以上传最大为 **2GB** 的文件(VirusTotal 原生支持最大 650MB 的文件)。
- **交互式分析**:报告带有内联按钮(`🧪 Detections`、`💉 Signatures`),可立即调出每个杀毒引擎发现的详细结果列表,而不会触及速率限制。
- **URL 和哈希扫描**:发送任何 `http(s)://` URL 或文件哈希(MD5/SHA1/SHA256)即可获取即时报告。
- **智能上传**:自动处理针对 32MB 以上文件的 VirusTotal `upload_url` 流程。
- **本地哈希计算**:在本地计算 SHA-256 哈希值,以检查文件是否已被 VirusTotal 分析过,从而避免不必要的带宽消耗和 `409 ConflictErrors`。
## 先决条件
- Python 3.7+
- **Telegram Bot Token**:从 [@BotFather](https://t.me/BotFather) 获取。
- **Telegram API ID & Hash**:Pyrogram 使用 MTProto 所必需。可在 [my.telegram.org](https://my.telegram.org) 免费获取。
- **VirusTotal API Key**:从 [VirusTotal 网站](https://www.virustotal.com/) 获取免费的 API 密钥。
## 安装
1. **克隆仓库:**
git clone https://github.com/yourusername/virusscan-bot.git
cd virusscan-bot
2. **设置 Python 虚拟环境:**
python3 -m venv .venv
source .venv/bin/activate
3. **安装依赖项:**
pip install -r requirements.txt
## 配置
在根目录中创建一个 `.env` 文件:
```
touch .env
```
将您的凭据添加到 `.env` 文件中:
```
TELEGRAM_BOT_TOKEN="YOUR_BOT_TOKEN_HERE"
VIRUSTOTAL_API_KEY="YOUR_VIRUSTOTAL_API_KEY_HERE"
TELEGRAM_API_ID="YOUR_API_ID"
TELEGRAM_API_HASH="YOUR_API_HASH"
```
## 使用方法
1. **运行机器人:**
python bot.py
2. **在 Telegram 中交互:**
- 找到您的机器人并发送 `/start`。
- **扫描文件**:发送任何文档、照片、视频或音频文件。
- **扫描 URL**:粘贴任何 URL。
- **查询哈希**:发送 MD5、SHA1 或 SHA256 字符串。
- 使用生成报告上的内联按钮来查看详细的威胁签名。
标签:API集成, Ask搜索, Inline键盘, MTProto, Pyrogram, Python, SHA-256, Telegram机器人, URL扫描, VirusTotal, 可观测性, 哈希扫描, 大文件传输, 威胁分析, 文件扫描, 无后门, 本地缓存, 病毒扫描, 网络安全, 网络调试, 自动化, 自动化侦查工具, 逆向工具, 防病毒引擎, 隐私保护