63Keerti/dos-ips-project

GitHub: 63Keerti/dos-ips-project

该项目实现了一个基础的 DoS 攻击检测与入侵防御系统,通过速率限制自动拦截异常高频请求并记录攻击日志。

Stars: 0 | Forks: 0

# 🛡️ DoS 攻击检测与入侵防御系统 (IPS) ## 📌 项目概述 DoS 攻击检测与入侵防御系统 (IPS) 是一个使用 Node.js、Express.js 和 MongoDB 开发的网络安全项目。该系统会监控传入的请求,检测来自单一 IP 地址的异常流量,拦截可疑用户,并将攻击日志存储在 MongoDB 中以供分析。 该项目演示了用于保护 Web 应用程序免受拒绝服务 攻击的基本入侵防御系统 (IPS) 概念的实现。 ## 🎯 目标 * 检测来自用户的异常频繁的请求。 * 防止拒绝服务 攻击。 * 自动拦截可疑的 IP 地址。 * 将攻击日志存储在 MongoDB 中。 * 提升 Web 应用程序的安全性。 ## 🛠️ 使用的技术 * Node.js * Express.js * MongoDB * Mongoose * Express Rate Limit * HTML * CSS * JavaScript ## 📂 项目结构 ``` dos-ips-project/ │ ├── models/ │ └── AttackLog.js │ ├── public/ │ └── index.html │ ├── server.js ├── package.json ├── package-lock.json ├── README.md ├── home.png │ └── node_modules/ ``` ## 📸 项目截图 ### 主页 ![主页](https://raw.githubusercontent.com/63Keerti/dos-ips-project/main/home.png) ## ⚙️ 安装说明 ### 安装依赖项 ``` npm install ``` ### 启动 MongoDB 确保 MongoDB 正在运行: ``` mongodb://127.0.0.1:27017 ``` ### 运行项目 ``` node server.js ``` ### 输出 ``` MongoDB Connected Server running on port 3000 ``` ## 🌐 URL ### 主页 ``` http://localhost:3000 ``` ### API Endpoint ``` http://localhost:3000/api ``` ## 🔄 项目工作原理 1. 用户向 Web 服务器发送请求。 2. Express Rate Limit 监控请求频率。 3. 系统允许每分钟最多 5 次请求。 4. 如果超出限制,该请求将被识别为可疑请求。 5. 用户的 IP 地址将被自动拦截。 6. 攻击信息会被存储在 MongoDB 中。 7. 管理员可以查看攻击日志以进行分析。 ## 🏗️ 架构 ``` User Request │ ▼ Node.js Server │ ▼ Express Rate Limiter │ ┌────┴────┐ │ │ ▼ ▼ Allow Detect Attack Access │ ▼ Block IP Address │ ▼ Store Logs in MongoDB ``` ## ✅ 功能 * 请求监控 * DoS 攻击检测 * 自动拦截 IP * MongoDB 攻击日志记录 * 基于 Web 的界面 * 轻量级安全解决方案 ## 📈 未来增强功能 * 实时安全仪表板 * 电子邮件通知 * 短信警报 * 攻击分析图表 * 地理位置追踪 * 高级 IDS/IPS 集成 ## 🎓 学习成果 * 理解 DoS 攻击 * 实现速率限制 * 使用 MongoDB * 构建安全的 Web 应用程序 * 入侵检测与防御概念 ## 📄 结论 本项目成功演示了使用 Node.js 和 MongoDB 构建的基础 DoS 攻击检测与入侵防御系统。它能够检测异常频繁的请求,拦截可疑用户,并存储攻击日志以供未来分析,从而帮助提高 Web 应用程序的安全性和可靠性。 ## 👨‍💻 作者 **Keerti Nalatawad** 网络安全 B.Tech
标签:AppImage, DoS攻击防护, GNU通用公共许可证, MITM代理, MongoDB, Node.js, Web应用防火墙, 入侵防御系统, 后端开发, 多模态安全, 威胁猎捕, 数据可视化, 网络安全, 隐私保护