TempeHS/Secure_Architecture_Sandbox_Testing_Environment
GitHub: TempeHS/Secure_Architecture_Sandbox_Testing_Environment
一套集成SAST/DAST/渗透测试工具的Docker沙箱环境,专为网络安全教育设计,帮助学生在隔离环境中实践Web应用漏洞检测与修复。
Stars: 0 | Forks: 21
# 安全架构沙箱测试环境
## 🎯 概述
本代码库包含一个全面的基于 Docker 的沙箱环境,用于向高中生教授安全架构概念。该平台在一个安全、受控的环境中,使用真实应用程序提供安全分析、漏洞检测和修复技术的实践经验。
## 沙箱架构
本沙箱采用**多层隔离和容器化架构**,利用 Codespaces 和 Docker 模拟现实世界的网络安全实践。

## 📊 快速启动报告
使用以下命令获取教育专用的安全报告。这些报告会分析 Unsecure PWA,以便您立即查看真实结果。
```
# Static Application Security Testing (SAST) - 分析源代码
python src/analyser/analyse_cli.py samples/unsecure-pwa --tools all --educational --output detailed_sast_unsecure_pwa.pdf --format pdf
# Dynamic Application Security Testing (DAST) - 测试运行中的应用程序
python src/analyser/dast_cli.py http://localhost:5000 --deep-scan --educational --output detailed_dast_unsecure_pwa.pdf --format pdf
# Penetration Testing - 模拟真实世界的攻击场景
python src/analyser/penetration_analyser.py http://localhost:5000 --deep --output detailed_pentest_unsecure_pwa.pdf
# Network Traffic Analysis - 监控超过 5 分钟的连接
python src/analyser/network_cli.py --monitor-connections --educational --duration 300 --output detailed_network_unsecure_pwa.pdf --format pdf
```
## 🚀 快速启动上传
**GitHub Codespaces(推荐):**
1. 无需 Fork,点击 "Code" → "Create codespace on main"
2. 等待 3-4 分钟完成设置(等待欢迎页面出现)
3. 查看 [docs/upload-flask-app-setup-guide.md](docs/upload-flask-app-setup-guide.md) 了解如何上传您自己的 Flask 应用进行测试。
## 🤖 AI 学习助手
在 GitHub Copilot Chat 中使用 `@workspace` 获取帮助:
- **学生**: "我在 SAST 练习上卡住了" 或 "我该如何运行 DAST 扫描?"
- **教师**: "网络分析的答案在哪里?" 或 "学习顺序是什么?"
内置的 NESA 软件工程大纲知识和安全功能确保在教师监督下进行符合伦理的学习。
## 📊 安全测试/分析 & 报告
这些命令演示了容器化环境中的**系统化漏洞评估**和**安全管理策略**:
### 静态分析 (SAST) - **源代码分析**
```
python src/analyser/analyse_cli.py --tools all --educational --output detailed_sast_report.pdf --format pdf --verbose
```
**大纲关联**: **输入验证**、**数据清洗**和**错误处理**检测
### 动态分析 (DAST) - **运行时测试**
```
python src/analyser/dast_cli.py --deep-scan --educational --output detailed_dast_report.pdf --format pdf --verbose
```
**大纲关联**: **跨站脚本攻击 (XSS)**、**身份验证**和**会话管理**测试
### 网络分析 - **系统化安全评估**
```
python src/analyser/network_cli.py --monitor-connections --educational --duration 300 --output detailed_network_report.pdf --format pdf --verbose
```
**大纲关联**: **安全通信协议**和**威胁检测**分析
### 渗透测试 - **道德黑客与漏洞利用测试**
```
python src/analyser/penetration_analyser.py localhost:5000 --deep --exploit --output comprehensive_security_report.pdf
```
**大纲关联**: **安全测试与评估**及**事件响应**准备
## 📚 教育练习
**推荐学习顺序:**
1. **人工代码审查** - 以安全为重点的代码分析基础
2. **SAST(静态分析)** - 代码中的自动化漏洞扫描
3. **DAST(动态分析)** - 运行时 Web 应用程序测试
4. **网络流量分析** - 监控通信并检测威胁
5. **沙箱分析** - 安全执行可疑应用程序
6. **渗透测试** - 全面安全评估(高级)
**所有练习均包含:** 教师指南、学生工作表、答案和快速参考命令。
**练习位置:** `docs/exercises/` | **支持材料:** `docs/instructor-guides/`, `docs/student-worksheets/`, `docs/quick-reference-guides/`
## 🎯 示例应用程序
1. **学生上传区** (`uploads/`) - 部署您自己的 Flask 应用进行测试(端口 8000)
2. **易受攻击的 Flask 应用** - 带有 SQL 注入、XSS、弱身份验证的 Python Web 应用(47 个漏洞)
3. **Unsecure PWA** - 具有开放重定向、配置错误的渐进式 Web 应用(17 个漏洞)
## 上传并测试 Flask 应用
查看 [docs/upload-flask-app-setup-guide.md](docs/upload-flask-app-setup-guide.md) 获取部署说明。
## 🔧 安全分析工具
**集成工具:**
- **SAST**: Bandit, Semgrep, Safety (Python 安全分析)
- **DAST**: Nikto, Gobuster (Web 漏洞扫描)
- **网络**: nmap, netstat (流量监控 & 服务发现)
- **渗透测试**: 自动化漏洞发现与字典攻击
**快速命令:**
```
# Static Analysis
python src/analyser/analyse_cli.py --tools all --educational --output detailed_sast_unsecure_pwa.pdf --format pdf --verbose
# Dynamic Analysis
python src/analyser/dast_cli.py --deep-scan --educational --output detailed_dast_unsecure_pwa.pdf --format pdf --verbose
# Network Analysis
python src/analyser/network_cli.py --monitor-connections --educational --duration 300 --output detailed_network_unsecure_pwa.pdf --format pdf --verbose
# Penetration Testing
python src/analyser/penetration_analyser.py --deep --output detailed_pentest_unsecure_pwa.pdf
```
## 🎓 学习功能
**教育内容:** 适合学生的漏洞解释,包含现实世界的类比、OWASP Top 10 映射和代码示例。
**涵盖的主要漏洞:** SQL 注入、XSS、CSRF、身份验证缺陷、会话管理、未验证的重定向。
## 📁 项目结构
```
├── docs/ # Educational materials (exercises, guides, worksheets)
├── src/analyser/ # Security analysis tools (SAST, DAST, Network, Penetration)
├── samples/ # Vulnerable applications for testing
├── uploads/ # Deploy your own Flask app
├── docker/ # Container configuration
└── reports/ # Generated security reports
```
## 🎯 学习成果
学生将掌握:
- **SAST/DAST**: 自动化漏洞检测与修复
- **网络分析**: 流量监控与威胁检测
- **渗透测试**: 专业安全评估方法论
- **道德安全**: 法律责任与专业标准
- **报告撰写**: 专业安全沟通与风险评估
## 🚀 入门指南
1. **验证工具**: `python src/analyser/analyse_cli.py --help`
2. **阅读快速参考**: `docs/quick-reference-guides/`
3. **选择学习路径**:
- **基础**: SAST → DAST → 网络 → 沙箱 → 渗透测试
- **单项专注**: 根据兴趣选择特定练习
4. **教师专用**: 查看相应的教师指南并建立道德准则
## 🛠️ 系统要求
**Codespaces(推荐):** GitHub 账户 + Web 浏览器
**本地环境:** Docker, Python 3.8+, Node.js 14+
所有安全工具会在环境中自动安装。
## 📞 支持与贡献
- **问题反馈**: [创建仓库 Issue](https://github.com/TempeHS/Secure_Architecture_Sandbox_Testing_Environment/issues)
- **贡献**: 提交 Pull Request 或 Issue。
- **许可证**: Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
Secure Architecture Testing Environment by Ben Jones is licenced under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
标签:CISA项目, DAST, Docker, Flask, GitHub Codespaces, OPA, Python, SAST, 云安全监控, 代码分析, 凭证管理, 安全专业人员, 安全教育, 安全防御评估, 恶意软件分析, 教学工具, 无后门, 架构测试, 沙箱环境, 漏洞修复, 盲注攻击, 网络安全, 网络安全培训, 网络安全课程, 请求拦截, 逆向工具, 隐私保护, 静态分析, 靶场