becalove18/secure-landlord-review
GitHub: becalove18/secure-landlord-review
RentReview 是一个安全房东评价平台,在实现用户注册、评价提交与搜索等全栈功能的同时,系统性地集成了密码哈希、SQL 注入防护、XSS 防护等 Web 安全最佳实践。
Stars: 0 | Forks: 0
# RentReview
一个作为网络安全专业毕业设计项目开发的安全房东评价网站。用户可以安全地创建账户、登录、提交房东评价并浏览评价,同时展示安全的 Web 应用程序开发实践。
## 🌐 在线网站
**https://secure-landlord-review.onrender.com**
## 📌 项目概述
RentReview 是一个安全的 Web 应用程序,允许租户分享和浏览房东评价。该项目侧重于在创建功能齐全的全栈 Web 应用程序的同时,落实网络安全最佳实践。
### 功能
- 安全的用户注册
- 安全的登录认证
- 使用 bcrypt 进行密码哈希处理
- Session 管理
- 提交房东评价
- 浏览房东评价
- 搜索评价
- 按评分筛选评价
- 响应式用户界面
## 🔒 安全特性
- 使用 bcrypt 对密码进行哈希处理
- 参数化 SQL 查询以防止 SQL 注入
- 服务端输入验证
- 通过 HTML 转义实现跨站脚本攻击 (XSS) 防护
- 基于 Session 的认证
- 受保护的评价提交
- 使用 Helmet 配置安全的 HTTP 标头
## 🛠 使用的技术
### 前端
- HTML5
- CSS3
- JavaScript
### 后端
- Node.js
- Express.js
### 数据库
- PostgreSQL
### 安全库
- bcrypt
- Helmet
- express-session
- connect-pg-simple
- express-validator
## 🚀 安装说明
克隆仓库:
```
git clone https://github.com/becalove18/secure-landlord-review.git
```
安装依赖:
```
npm install
```
创建 `.env` 文件:
```
DB_HOST=
DB_PORT=
DB_NAME=
DB_USER=
DB_PASSWORD=
DATABASE_URL=
SESSION_SECRET=
NODE_ENV=development
```
运行应用程序:
```
npm start
```
打开:
```
http://localhost:3000
```
## 📁 项目结构
```
secure-landlord-review/
│
├── public/
│ ├── script.js
│ └── style.css
│
├── views/
│ ├── index.html
│ ├── login.html
│ ├── register.html
│ └── submit-review.html
│
├── db.js
├── server.js
├── package.json
├── README.md
└── .env
```
## 🧪 安全测试
该应用程序已针对常见的 Web 应用程序攻击进行了测试,包括:
- SQL 注入
- 跨站脚本攻击 (XSS)
- 未经授权的页面访问
- 认证绕过尝试
这些防护措施通过安全编码技术和服务器端验证来实现。
## 🔮 未来改进
- 编辑和删除评价
- 用户个人资料页
- 密码重置
- 电子邮件验证
- 评价审核
- 分页
- 评价投票
## 👩💻 作者
Rebecca Rogers
网络安全应用技术学士
毕业设计项目
2026
标签:Express, GNU通用公共许可证, MITM代理, Node.js, PostgreSQL, 安全防护, 教学项目, 数据可视化, 测试用例, 自定义脚本, 评论平台