Charlot-DEDJINOU/CSRF-attack
GitHub: Charlot-DEDJINOU/CSRF-attack
一个基于 Express.js 和 MongoDB 的 CSRF 攻击教学演示项目,完整展示了跨站请求伪造攻击从载荷投递到数据窃取的全过程。
Stars: 2 | Forks: 0
# CSRF 攻击示例
本项目是一个 CSRF (跨站请求伪造) 攻击的教学示例,旨在演示 Web 应用程序是如何受到此类攻击的。
## 目标
本项目的目标是展示 CSRF 攻击是如何实施的,并提高人们对保护 Web 应用程序免受此类攻击所需的安全措施的认识。
## 技术栈
- **前端**: JavaScript
- **后端**: Express.js
- **数据库**: MongoDB
## 功能特性
- **数据窃取**: 恶意脚本从用户已认证的网站上获取敏感数据,并将其发送到外部服务器。
- **错误报告**: 脚本报告在数据窃取过程中发生的错误,以提高攻击的鲁棒性。
## 项目结构
- `frontend/`: 包含恶意 JavaScript 脚本。
- `backend/`: 包含 Express.js 服务器和 MongoDB 数据库配置脚本。
## 安装与配置
### 前置条件
- 已安装 Node.js 和 npm
### 安装步骤
1. 克隆仓库:
https://github.com/Charlot-DEDJINOU/CSRF-attack.git
cd CSRF-attack
2. 安装后端依赖:
cd backend
npm install
3. 配置 MongoDB 数据库:
- 确保 MongoDB 正在运行。
- 如有必要,请修改数据库配置文件(例如 `backend/src/config/moogose.js`)。
4. 启动后端服务器:
node server.js 或 nodemon server.js
### 运行恶意脚本
1. 将恶意脚本托管在可访问的 Web 服务器上。
2. 将您的后端托管在可访问的 Web 服务器上。
3. 切记根据您的需求调整 `frontend/app.js` 脚本(例如目标站点的 URL 以及您后端服务器的 URL)。
4. 将脚本链接发送给已在目标站点上认证的用户。
5. 当用户点击链接时,脚本将获取敏感数据并将其发送到 Express.js 服务器。
## 免责声明
本项目仅供教育目的。请勿将此代码用于恶意活动。其目的是提高安全意识并理解安全漏洞,从而更好地保护 Web 应用程序。
## 贡献
欢迎提交贡献以改进此示例,并增加针对 CSRF 攻击的防御机制。请提交 pull requests 或开启 issues 来讨论相关修改。
**作者** : [Charlot DEDJINOU](https://charlotdedjinou.com)
标签:CMS安全, CSRF攻击, Express.js, GNU通用公共许可证, HTTP请求, JavaScript, Linux取证, MITM代理, MongoDB, Node.js, PoC, Web安全, XSS, 安全防护, 攻击脚本, 数据可视化, 数据外发, 数据窃取, 暴力破解, 概念验证, 漏洞情报, 漏洞演示, 网络安全教学, 自定义脚本, 蓝队分析, 跨站请求伪造