# 会员插件 – 内容限制 <= 3.2.16 认证缺失与敏感信息泄露
## 概述
WordPress的Membership Plugin – Restrict Content插件在3.2.16及之前版本中存在缺少身份验证的漏洞,攻击者可利用该漏洞获取Stripe SetupIntent的client_secret值。
## 影响版本
3.2.16及之前所有版本
## 细节
漏洞位于`rcp_stripe_create_setup_intent_for_saved_card`函数,该函数未执行权限检查(缺少capability check),且未验证用户控制的键值。攻击者可在未认证的情况下调用该函数,从而泄露任意会员的Stripe SetupIntent client_secret。
## 影响
未认证的远程攻击者可利用此漏洞泄露敏感的Stripe SetupIntent client_secret信息,可能导致支付信息被进一步利用或账户被劫持。
是否为 Web 类漏洞: 未知
判断理由:
| # | POC 描述 | 源链接 | 神龙链接 |
|---|
标题: CWE - CWE-639: Authorization Bypass Through User-Controlled Key (4.18) -- 🔗来源链接
标签:
神龙速读:
### 关键信息:CWE-639: Authorization Bypass Through User-Controlled Key
#### 描述
- **系统授权功能**:无法防止对手通过修改标识数据的键值获取对另一条数据或记录的访问。
- **示例场景**:
- 攻击者可以通过搜索屏幕查看用户特定数据。
- 键可能隐藏在HTML表单字段中、作为URL参数传递或作为未加密的Cookie变量。
#### 替代术语
- **不安全的直接对象引用 (IDOR)**
- ** cleanly authorization (BOLA)**
- **Horizontal Authorization**
#### 常见后果
- **范围:访问控制**
- 绕过保护机制:特定用户数据或功能的访问控制检查可以被绕过。
- 权限提升或假定身份:可能存在水平特权升级的可能性。
- 权限提升或假定身份:纵向权限升级是可能的。
#### 潜在缓解措施
- **架构和设计**: 对每次数据访问,确保用户有足够的权限访问请求的记录。
- **架构和设计; 实施**: 确保用于查找特定用户记录的键不受外部用户控制。
- **架构和设计**: 使用加密使猜测键值更加困难或与键关联数字签名。
#### 演示示例
- **示例1**: 代码使用参数化语句防止SQL注入,但未验证当前认证用户是否有权访问记录。
#### 适用平台
- 语言类别:非特定语言 (不确定存在的可能性)
#### 漏洞映射注释
- **使用**:允许将此CWE ID映射到实际漏洞。
- **理由**:认可使用。
- **观点**:此CWE条目处于抽象的基础级别。
- **注释**:仔细阅读名称和描述以确保映射适当,不要将链接到更低级别。
#### 检测方法
- **自动化静态分析**:能发现此弱点的某些实例。
标题: ERROR: The request could not be satisfied -- 🔗来源链接
标签:
神龙速读:
可以从这个网页截图中获取到以下关于漏洞的关键信息:
- **错误代码**: 403 Forbidden
- **错误原因**:
- 请求被阻止(Request blocked)
- 无法连接到该应用程序或网站的服务器
- 可能的原因包括流量过大或配置错误
- **平台**:
- 由CloudFront生成
- **建议操作**:
- 延后再试
- 联系应用程序或网站的所有者
- 查看CloudFront文档进行故障排除
- **请求ID**:
- 3XnRNDaLWNQlorhzwaSAUou9zMpkZ0scmvlym5U_UqQEa5iL5HvmW==
**简要总结**:
- 该403错误表明请求被CloudFront阻止,可能源自在特定时间的高流量或与服务器配置相关的问题。
- 提供的请求ID可帮助在故障排除和日志分析中定位具体请求。
- 建议的解决步骤包含了联系网站或应用所有者以及查阅平台文档以进一步排查。
标题: Changeset 3438168 for restrict-content/tags/3.2.17/core/includes/gateways/stripe/functions.php – WordPress Plugin Repository -- 🔗来源链接
标签:
神龙速读:
### 关键信息
**漏洞关键信息:**
- **Changeset:** 3438168
- **File:** `functions.php` under `restrict-content/tags/3.2.17/core/includes/gateways/stripe/`
- **Commit Message:** "Tagging version 3.2.17"
#### Code Changes:
- **New `nonce` call:**
```php
'nonce' => wp_create_nonce( 'rcp_stripe_create_setup_intent_for_saved_card' ),
```
- **New function `rcp_stripe_create_setup_intent_for_saved_card`:**
```php
function rcp_stripe_create_setup_intent_for_saved_card() {
check_ajax_referer( 'rcp_stripe_create_setup_intent_for_saved_card', 'nonce' );
// Check if the user is at least a registered user.
if ( ! current_user_can( 'read' ) ) {
wp_send_json_error( __( 'You are not authorized to perform this action.', 'rcp' ) );
}
global $rcp_options;
}
```
#### Potential Vulnerabilities:
- **nonce Usage:** Nonce is properly created and checked.
- **User Capability Check:** User must be capable of 'read' to execute the function.
暂无评论