初始化: Web安全攻防知识库
- 靶场环境: DVWA/WebGoat/Pikachu/BWAPP/SQLi-Labs/XSS-Labs - SQL注入工具: sqli-scanner.py, blind-sqli.py, sqli-exploit.go - XSS工具: xss-fuzzer.py, xss-scanner.go - 认证攻击: web-brute.py, jwt-cracker.py - 服务端安全: port-scanner.py, tls-scanner.py - 防御配置: nginx-hardening.conf - 案例研究: 福建政采网安全评估报告 (13份) - 同步脚本: sync-gitea.sh
这个提交包含在:
@@ -0,0 +1,27 @@
|
||||
# 后端接口评估分析
|
||||
|
||||
## 一、后端接口架构
|
||||
- **网关层**:所有业务通过 `/gateway/*` 分发(基于 OpenResty)。
|
||||
- **认证协议**:OAuth 2.0 Authorization Code Flow,使用 JWT (access_token)。
|
||||
- **微服务群**:识别出至少 15 个独立微服务(gp-trade, gp-expert 等)。
|
||||
|
||||
## 二、高危风险
|
||||
1. **OAuth 授权重定向使用 HTTP 协议**
|
||||
- 授权网关重定向 URL 为 `http://zfcg.czt.fujian.gov.cn/gp-auth-center/oauth/authorize`,授权码明文传输,易被中间人 (MITM) 攻击。
|
||||
|
||||
## 三、中危风险
|
||||
1. **接口路径高度可预测可枚举**
|
||||
- 命名规范统一为 `gp-{业务名称}`,测试发现 `/gp-trade`, `/gp-agency` 等 15 个服务直接返回 HTTP 403,证实服务存在并暴露攻击面。
|
||||
2. **网关未认证接口返回 500 并泄露内部状态**
|
||||
- `/gateway/api/oauth/checkToken` 返回 500 Internal Server Error,未作标准 401 处理。
|
||||
3. **潜在的 IDOR (越权访问) 风险**
|
||||
- 接口依赖前端传递 `tenantId` (租户ID)。如果后端未严格绑定 Token 的主体与资源,攻击者可越权访问其他机构数据。
|
||||
4. **OAuth 回调地址校验存疑**
|
||||
- `redirect_uri` 虽已配置,但需进一步渗透测试确认是否防范开放重定向攻击。
|
||||
5. **CORS 配置过宽**
|
||||
- 存在 `Access-Control-Allow-Headers: *`。
|
||||
|
||||
## 四、修复建议
|
||||
- 强制所有 OAuth 流程使用 HTTPS。
|
||||
- 网关对未授权请求统一返回 404 或 401,而非 403 暴露内部服务。
|
||||
- 后端严格校验 Token 所属 `tenantId`,防止水平越权。
|
||||
在新工单中引用
屏蔽一个用户