yassinmohamed1111/rodork
GitHub: yassinmohamed1111/rodork
RoDork 是一款基于 Shodan 的交互式 CLI 工具,用于自动化发现和评估互联网上暴露的机器人系统与工业控制设备的安全风险。
Stars: 3 | Forks: 0
# RoDork - 黑客真实机器人 !!!
RoDork 用于在互联网上搜索暴露的机器人系统。它内置了 50 多个现成可用的 dorks,并提供了一个交互式 shell,用于过滤、导出和扩展 dork 库。
## 为什么开发此工具
机器人技术的应用正在爆炸式增长,但安全防护却未能跟上。生产级机器人控制器、机械臂和仓库自动化系统正暴露在公共互联网上——无需身份验证、使用默认凭据、甚至提供实时摄像头画面。手动执行 Shodan 查询不仅速度慢,还会遗漏关键的暴露风险。RoDork 使这项研究变得更加系统化、可重复且具有可操作性。
## 功能
- 交互式命令行界面
- 按 dork ID、类别或原始查询进行批量搜索
- 强大的过滤功能(国家、风险、机器人类型、技术、端口)
- 风险评估启发式算法(严重/高/中/低)
- 以表格(彩色)、JSON 或 CSV 格式输出
- 本地缓存以避免重复 API 调用
- 用户自定义 dork 添加及持久化存储
- 支持脚本自动化的非交互模式
### 截图
## 安装说明 (Debian 11+ / Ubuntu 20.04+)
### 1. 克隆仓库
```
git clone https://github.com/yourusername/rodork.git
cd rodork
```
### 2. 创建并激活虚拟环境
```
python3 -m venv venv
source venv/bin/activate
```
### 3. 安装依赖
```
pip install -r requirements.txt
```
### 4. 设置你的 Shodan API key
复制示例环境文件并进行编辑:
```
cp .env.example .env
nano .env
```
### 基本用法
```
python rodork.py
```
然后输入命令:
- `search category:manufacturer` – 所有机器人制造商 dorks
- `search d001` – 通过 ID 搜索单个 dork
- `search raw:"KUKA robot"` – 自定义查询
- `search all – run every dork`(注意:会产生大量 API 调用)
- `show` – 以表格形式显示当前结果
- `show format=json limit=10`
- `filter country=DE risk=critical` – 过滤结果
- `export csv report.csv`
### 非交互模式(脚本自动化):
```
python rodork.py -s category:manufacturer --country US --risk high -o table
python rodork.py -s raw:"ROS2 DDS" -o json > ros2.json
```
### 帮助:
```
python rodork.py -h
```
在 shell 中,输入 `help` 查看可用命令。
### 过滤逻辑
- 默认使用 AND 逻辑:必须匹配所有条件。
- 在 filter 命令中使用 logic=OR 可匹配任意条件。
- 风险级别是根据 banner 内容推断的(启发式)。
- 机器人类型是根据组织/产品名称猜测的。
### 导出示例
- `export json robots.json`
- `export csv robots.csv`
### 负责任的使用
此工具仅供授权的安全研究使用。未经许可,请勿扫描或与您不拥有的系统进行交互。
### 故障排除
- “SHODAN_API_KEY not found”:确保存在包含正确 key 的 `.env` 文件。
- “Rate limit hit”:免费的 API key 允许约 1 次请求/秒;工具会自动等待。
- 无结果:尝试扩大查询范围或检查 Shodan 的覆盖范围。
### 贡献
请参阅 CONTRIBUTING.md
# 安全与法律声明
RoDork 是一款侦察工具,旨在用于授权的安全评估和研究。未经授权扫描或与连接互联网的系统进行交互可能违反法律。在针对您不拥有的系统进行操作之前,请务必获得明确的许可。
## 安装说明 (Debian 11+ / Ubuntu 20.04+)
### 1. 克隆仓库
```
git clone https://github.com/yourusername/rodork.git
cd rodork
```
### 2. 创建并激活虚拟环境
```
python3 -m venv venv
source venv/bin/activate
```
### 3. 安装依赖
```
pip install -r requirements.txt
```
### 4. 设置你的 Shodan API key
复制示例环境文件并进行编辑:
```
cp .env.example .env
nano .env
```
### 基本用法
```
python rodork.py
```
然后输入命令:
- `search category:manufacturer` – 所有机器人制造商 dorks
- `search d001` – 通过 ID 搜索单个 dork
- `search raw:"KUKA robot"` – 自定义查询
- `search all – run every dork`(注意:会产生大量 API 调用)
- `show` – 以表格形式显示当前结果
- `show format=json limit=10`
- `filter country=DE risk=critical` – 过滤结果
- `export csv report.csv`
### 非交互模式(脚本自动化):
```
python rodork.py -s category:manufacturer --country US --risk high -o table
python rodork.py -s raw:"ROS2 DDS" -o json > ros2.json
```
### 帮助:
```
python rodork.py -h
```
在 shell 中,输入 `help` 查看可用命令。
### 过滤逻辑
- 默认使用 AND 逻辑:必须匹配所有条件。
- 在 filter 命令中使用 logic=OR 可匹配任意条件。
- 风险级别是根据 banner 内容推断的(启发式)。
- 机器人类型是根据组织/产品名称猜测的。
### 导出示例
- `export json robots.json`
- `export csv robots.csv`
### 负责任的使用
此工具仅供授权的安全研究使用。未经许可,请勿扫描或与您不拥有的系统进行交互。
### 故障排除
- “SHODAN_API_KEY not found”:确保存在包含正确 key 的 `.env` 文件。
- “Rate limit hit”:免费的 API key 允许约 1 次请求/秒;工具会自动等待。
- 无结果:尝试扩大查询范围或检查 Shodan 的覆盖范围。
### 贡献
请参阅 CONTRIBUTING.md
# 安全与法律声明
RoDork 是一款侦察工具,旨在用于授权的安全评估和研究。未经授权扫描或与连接互联网的系统进行交互可能违反法律。在针对您不拥有的系统进行操作之前,请务必获得明确的许可。标签:ICS安全, 威胁情报, 实时处理, 密码管理, 开发者工具, 搜索引擎, 文档结构分析, 资产测绘, 逆向工具