wordpress rest api 漏洞又来了CVE-2017-5487 上次是修改文章内容这次可是泄露用户数据

简介:

在2月份的时候, wordpress rest api 曾经爆出过越权漏洞 ,结果是黑客可以修改文章内容。3月3日,REST API又出现了越权漏洞,成功的利用这个漏洞,可以绕过管理员权限泄露用户数据。

CVE-2017-5487影响范围

影响版本WordPress 4.7.0,目前poc已经在exploitdb上公开

https://www.exploit-db.com/exploits/41497/

POC看起来比较简单,就是调用了wordpress的rest api接口进行users查询

WordPress%20rest%20api%20CVE-2017-5487.p

问题出在检查用户的权限上

通过检查代码,可以看到用户请求首先进入get_items_permissions_check模块进行权限检查,当请求users参数时,用来检查请求是否有读的权限,否则爆出WP_Error错误。

绿盟科技的研究员称,但在利用漏洞之后,

有意思的事情发生了,我们什么事情也没做,竟然完美的避开了权限检查的三个判定,接下来进入下个环节get_items函数,检索所有的用户。

但查询返回的可以查询的用户信息是有约束条件的,这里可以查询的用户发表过公开的文章,包括日志、页面或者附件。

那是因为REST API不安全吗?

查询一下历史记录就可以看到 REST API漏洞出过不少次,那是因为这东西设计的很烂吗?也不能完全这么说,还可以通过安全措施来降低安全风险的,这个方面可以看看这份 REST API 安全设计指南


原文发布时间:2017年3月24日

本文由:绿盟科技发布,版权归属于原作者

原文链接:http://toutiao.secjia.com/wordpress-rest-api-cve-2017-5487

本文来自云栖社区合作伙伴安全加,了解相关信息可以关注安全加网站

相关文章
|
6天前
|
JSON API 开发工具
【Azure 应用服务】调用Azure REST API来获取 App Service的访问限制信息(Access Restrictions)以及修改
【Azure 应用服务】调用Azure REST API来获取 App Service的访问限制信息(Access Restrictions)以及修改
|
6天前
|
存储 API 网络架构
【Azure 存储服务】调用REST API获取Stroage Account Table中所有的Entity计数 -- Count
【Azure 存储服务】调用REST API获取Stroage Account Table中所有的Entity计数 -- Count
|
1天前
|
存储 JSON API
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
——在成长的路上,我们都是同行者。这篇关于商品详情API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦! 淘宝API接口(如淘宝开放平台提供的API)允许开发者获取淘宝商品的各种信息,包括商品详情。然而,需要注意的是,直接访问淘宝的商品数据API通常需要商家身份或开发者权限,并且需要遵循淘宝的API使用协议。
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
|
5天前
|
数据采集 API 开发工具
淘系商品详情数据解析(属性youhui券sku详情图等)API接口开发系列
在电商领域,特别是像淘宝(淘系)这样的平台,商品详情数据对于商家、开发者以及数据分析师来说至关重要。这些数据包括但不限于商品属性、优惠券信息、SKU(Stock Keeping Unit)详情、商品图片、售后保障等。然而,直接访问淘宝的内部API接口通常需要特定的权限和认证,这通常只对淘宝的合作伙伴或内部开发者开放。 不过,对于需要这些数据的第三方开发者或商家,有几种方式可以间接获取或解析淘系商品详情数据: ——在成长的路上,我们都是同行者。这篇关于商品详情API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦!
|
4天前
|
存储 算法 Java
Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据
Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据
|
6天前
|
存储 JSON API
【Azure 存储服务】使用REST API操作Azure Storage Table,删除数据(Delete Entity)
【Azure 存储服务】使用REST API操作Azure Storage Table,删除数据(Delete Entity)
【Azure 存储服务】使用REST API操作Azure Storage Table,删除数据(Delete Entity)
|
5天前
|
中间件 API 网络架构
Django后端架构开发:从匿名用户API节流到REST自定义认证
Django后端架构开发:从匿名用户API节流到REST自定义认证
8 0
|
6天前
|
API 网络架构 C++
【Azure Key Vault】使用REST API调用Azure Key Vault Secret的示例步骤
【Azure Key Vault】使用REST API调用Azure Key Vault Secret的示例步骤
|
6天前
|
API 网络架构 开发者
【Azure 环境】调用Azure RunCommand 的REST API 设置虚拟机的环境变量(SetEnvironmentVariable)
【Azure 环境】调用Azure RunCommand 的REST API 设置虚拟机的环境变量(SetEnvironmentVariable)
|
6天前
|
监控 API
【Azure API 管理】APIM的容量指标(Capacity)数据异常高的情况记录
【Azure API 管理】APIM的容量指标(Capacity)数据异常高的情况记录
下一篇
云函数