v1ctor-cyber/db-security-hospital

GitHub: v1ctor-cyber/db-security-hospital

该项目是一个模拟医疗环境的数据库安全监控实验室,通过对比漏洞版本和安全版本的应用程序来演示和防御 SQL 注入等常见攻击。

Stars: 0 | Forks: 0

# 🏥 医院安全监控实验室 这是一个为模拟医疗环境中的监控、审计和数据保护而开发的网络安全实践实验室。 该项目展示了如何通过从数据库建模阶段就应用安全决策,来降低未经授权访问的风险、防止敏感信息泄露以及防御 SQL Injection 攻击。 ## 🎯 目标 * 在数据库中实施安全控制 * 记录并审计对敏感信息的访问 * 通过日志检测可疑行为 * 展示漏洞及其缓解措施 * 模拟 SOC 和 Blue Team 团队使用的场景 ## 🔐 已实施的安全控制 ### 访问审计 `LOG_ACESSO` 表记录了: * 已认证用户 * IP 地址 * 访问日期和时间 * 执行的操作 * 访问的资源 这些记录可用于识别异常活动,并为安全事件调查提供支持。 ### 凭证保护 系统绝不以明文形式存储密码。 * 使用 bcrypt 进行 Hashing * 安全的凭证验证 * 降低数据泄露时的影响 ### 敏感数据隔离 医疗信息被分离到特定的表中,以减少不必要的暴露,并应用最小权限原则。 ## ⚔️ SQL Injection 实验室 该项目包含两个版本的应用程序: ### 易受攻击的应用程序 `app_vuln.py` 演示了在真实系统中发现的常见缺陷: * SQL Injection * 明文密码比对 * 权限提升 使用的 Payload: ``` ' OR '1'='1'-- ``` ### 安全的应用程序 `app_secure.py` 实施了: * 参数化查询 * 使用 bcrypt 进行密码 Hashing * 自动化审计记录 * 安全的身份验证校验 ## 🧪 测试结果 | 场景 | 易受攻击 | 安全 | | --------------- | ---------- | ----------- | | 登录绕过 | ✅ 成功 | ❌ 已拦截 | | SQL Injection | ✅ 成功 | ❌ 已拦截 | | 合法登录 | ✅ 成功 | ✅ 成功 | ## 📂 结构 ``` documentos/ aplicativo/ ├── app_vuln.py ├── app_secure.py ├── ataques.py esquema.sql consultas.sql esquema.dbml der.md ``` ## 🛠️ 技术 * Python * Flask * PostgreSQL * psycopg2 * bcrypt * GitHub Actions * Bandit * Safety ## 🚀 运行说明 1. 创建 PostgreSQL 数据库 2. 执行 `esquema.sql` 3. 执行 `consultas.sql` 4. 安装依赖项 ``` pip install flask psycopg2-binary bcrypt requests ``` 5. 启动应用程序 ``` python app/app_vuln.py python app/app_secure.py ``` 6. 执行攻击 ``` python app/ataques.py ``` ## 👨‍💻 作者 Victor Silva 网络安全分析师 | SOC | Blue Team LinkedIn: https://linkedin.com/in/victor-cyber
标签:CISA项目, PostgreSQL, Python, 安全实验室, 数据泄露, 无后门, 测试用例, 逆向工具