首页
学习
活动
专区
圈层
工具
发布

WordPress REST API 内容注入漏洞分析

漏洞简介 在REST API自动包含在Wordpress4.7以上的版本,WordPress REST API提供了一组易于使用的HTTP端点,可以使用户以简单的JSON格式访问网站的数据,包括用户,帖子...漏洞影响版本 WordPress4.7.0 WordPress4.7.1 0x01 漏洞复现 Seebug上已经给出详细的复现过程,在复现过程中可以使用已经放出的POC来进行测试。...0x02 漏洞分析 其实漏洞发现者已经给出了较为详细的分析过程,接下来说说自己在参考了上面的分析后的一点想法。 WP REST API 首先来说一下REST API。...WP-API允许HTTP客户端对资源执行CRUD操作(创建,读取,更新,删除,这边只展示和漏洞相关的部分): GET /wp-json/wp/v2/posts获取帖子的集合: ?...例如,使用URLhttp://example.com/wp-json/wp/v2/posts/123: 路由(route)是wp/v2/posts/123,不包括wp-json,因为wp-json是API

3.8K70

新曝WordPress REST API内容注入漏洞详解

在4.7.0版本后,REST API插件的功能被集成到WordPress中,由此也引发了一些安全性问题。...这种行为本身不失为一种防止攻击者编制恶意ID值的好方法,但是当查看REST API如何管理访问时,研究人员很快发现其给予$_GET 和$_POST值的优先级高于路由的正则表达式生成的值。...出于对是什么导致get_post()无法找到帖子(除ID不存在外)的好奇,研究人员意识到其使用wp_posts中的get_instance()静态方法来抓取帖子。 ?...这导致了非常危险的情形,即攻击者可以提交/wp-json/wp/v2/posts/123?id=456ABC这样的请求来对ID为456的帖子进行篡改。...鉴于此类型欺骗问题,攻击者便可篡改受害者网站上的任何帖子或页面的内容。这样他们便可以添加插件特定的短代码来利用漏洞(原本仅限于贡献者)、使用SEO垃圾邮件活动感染网站内容或注入广告,等等。

3.1K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    枚举 WordPress 用户的 6 种方法

    在最新的WordPress版本中,开启后你会得到用户名和哈希的电子邮件。有经验的WordPress管理员和用户都知道这种潜在的泄露。因此,我们可以在网上看到各种关于如何隐藏这些信息的教程。...rest_route=/wp/v2/users 绕过 2. WordPress.com API 第二种方法已经在之前关于 Jetpack 电子邮件公开披露的博客文章中进行了描述。....*******.com/wp-json/wp/v2/users 已屏蔽 https://public-api.wordpress.com/rest/v1.1/sites/blog.*******.com...大小写敏感性 在REST请求中,路由是用来定义所选资源的。请记住,WordPress是模块化的。资源(或服务)将取决于所安装的插件和WordPress的配置。...搜索 在少数情况下,我们遇到了没有明确阻止的API,但/wp/v2/users端点没有返回avatar_urls属性。

    4.6K20

    把 WordPress 变成 BaaS 服务:API 调用指南

    另外一种,则是 REST API,使用通用的 JSON 格式来与 WordPress 应用进行数据交互。...在 GitHub 社区中,曾经有过关于它的讨论,从 2017 年开始,社区就在推荐大家使用 alias 功能重写 wp 命令,来将 --allow-root 参数添加到真实运行的命令中...方案二:WP REST API虽然上文中提到了 WP REST API 当前的窘况,但好在目前 6.5.0 版本中,官方还是对它进行了支持,虽然没有明确文档告知用户该如何使用(应该是暂时减少支持工作消耗的开发同学的精力...那么,我们就只需要在 wp-config.php 或 wp-config-docker.php (如果你使用 Docker 运行)中添加下面的代码即可:# Enable WP REST API, by...好啦,到这里为止,我们了解了如何使用 API 的方式来访问 WordPress,接下来,我们来开始进阶使用。保护你的 API 接口我们分别来针对两种方案来聊聊 API 使用保护的问题。

    39710

    把 WordPress 变成 BaaS 服务:API 调用指南

    WordPress REST API 另外一种,则是 REST API[6],使用通用的 JSON 格式来与 WordPress 应用进行数据交互。... 在 GitHub 社区中,曾经有过关于它的讨论[13],从 2017 年开始,社区就在推荐大家使用 alias 功能重写 wp 命令,来将 --allow-root 参数添加到真实运行的命令中...方案二:WP REST API 虽然上文中提到了 WP REST API 当前的窘况,但好在目前 6.5.0 版本中,官方还是对它进行了支持,虽然没有明确文档告知用户该如何使用(应该是暂时减少支持工作消耗的开发同学的精力...那么,我们就只需要在 wp-config.php 或 wp-config-docker.php (如果你使用 Docker 运行)中添加下面的代码即可: # Enable WP REST API, by...好啦,到这里为止,我们了解了如何使用 API 的方式来访问 WordPress,接下来,我们来开始进阶使用。 保护你的 API 接口 我们分别来针对两种方案来聊聊 API 使用保护的问题。

    38810

    WordPress 5.4.2版本发布,BUG维护和安全更新

    wp-includes/rest-api.php wp-includes/version.php package-lock.json package.json wp-comments-post.php...支持萨姆·托马斯(jazzy 25)发现XSS问题,在该问题中,经过身份验证的低权限用户能够将JavaScript添加到块编辑器的帖子中 对Luigi的支持——发现了一个XSS问题,拥有上传权限的认证用户能够向媒体文件添加...,即设置屏幕选项可能被插件滥用,导致权限升级 卡罗琳娜·尼马克发现了一个问题,在这个问题上,来自受密码保护的帖子和页面的评论可以在特定条件下显示。...49956–垃圾邮件发送者能够分享不受限制的评论(参见下面的相关发展说明) 49749–用带斜杠前缀的名称空间注册rest路由会产生不一致的结果 49798–暗模式浏览器中的默认文字按钮图标 49808...48803–20:不支持作者的自定义帖子类型,显示作者 48916–20:锚链接在移动菜单中不起作用 49088–20:为网页链接添加图标(谷歌商业简介) 49316–20张图片未获得许可。

    2.3K20

    WordPress 4.6正式版“Pepper”上线发布

    WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站,也可以把 WordPress当作一个内容管理系统(CMS)来使用。...WordPress 4.6中的v2版本,有一个比较大的改进,就是搜索功能。在已装插件屏幕和添加新插件屏幕中,搜索框都采用了ajax搜索。...—— 持续性评论缓存 从2.5版本开始,评论API特意不使用持续性缓存。20个版本过去了,现在做了改动。...当添加、修改、删除评论的时候,评论可以存储在持续性的对象缓存中,过期的缓存将会被正确地设置为无效。...—— REST API ——增强了 register_meta() —— 自定义面板 —— WP_Site_Query,WP_Network_Query,WP_Term_Query,WP_Post_Type

    1.1K10

    如何搭建 WordPress 博客

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。...它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。...找到您创建的页面,单击旁边的复选框,单击“添加到菜单”,将其添加到列表中。 添加和编辑帖子 如果您要在网站上搭建博客,那么您可能需要添加“帖子”的功能。您可以使用不同的类别来分组帖子。...它们也是搜索引擎如何确定排名的重要组成部分。您应该在网站的每个页面上使用唯一标题。 标语在每个页面的标题末尾添加。要更改网站上的标题和标语,请转到“设置 - >常规”并填写表单。...“帖子页面”是您博客的首页(如果您的整个网站不是博客)。如果您没有自己选择静态页面,WordPress将收集您的最新帖子并开始在您的主页上显示它们。

    8.2K3330

    如何搭建 WordPress 博客

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。...它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。...找到您创建的页面,单击旁边的复选框,单击“添加到菜单”,将其添加到列表中。 添加和编辑帖子 如果您要在网站上搭建博客,那么您可能需要添加“帖子”的功能。您可以使用不同的类别来分组帖子。...它们也是搜索引擎如何确定排名的重要组成部分。您应该在网站的每个页面上使用唯一标题。 标语在每个页面的标题末尾添加。要更改网站上的标题和标语,请转到“设置 - >常规”并填写表单。...“帖子页面”是您博客的首页(如果您的整个网站不是博客)。如果您没有自己选择静态页面,WordPress将收集您的最新帖子并开始在您的主页上显示它们。

    2.4K40

    腾讯云服务器搭建WordPress博客

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。...它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。...找到您创建的页面,单击旁边的复选框,单击“添加到菜单”,将其添加到列表中。 添加和编辑帖子 如果您要在网站上搭建博客,那么您可能需要添加“帖子”的功能。您可以使用不同的类别来分组帖子。...它们也是搜索引擎如何确定排名的重要组成部分。您应该在网站的每个页面上使用唯一标题。 标语在每个页面的标题末尾添加。要更改网站上的标题和标语,请转到“设置 - >常规”并填写表单。...“帖子页面”是您博客的首页(如果您的整个网站不是博客)。如果您没有自己选择静态页面,WordPress将收集您的最新帖子并开始在您的主页上显示它们。

    6K40

    腾讯云服务器搭建WordPress博客

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。...它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。...找到您创建的页面,单击旁边的复选框,单击“添加到菜单”,将其添加到列表中。 添加和编辑帖子 如果您要在网站上搭建博客,那么您可能需要添加“帖子”的功能。您可以使用不同的类别来分组帖子。...它们也是搜索引擎如何确定排名的重要组成部分。您应该在网站的每个页面上使用唯一标题。 标语在每个页面的标题末尾添加。要更改网站上的标题和标语,请转到“设置 - >常规”并填写表单。...“帖子页面”是您博客的首页(如果您的整个网站不是博客)。如果您没有自己选择静态页面,WordPress将收集您的最新帖子并开始在您的主页上显示它们。

    5.5K50

    开发 | 无需后端编码,手把手教你把 WordPress 做成小程序

    知晓程序(微信号 zxcx0101)今天分享的这篇文章,将一步步讲解,如何将一个 WordPress 网站借助 REST API 开发微信小程序版。...关注「知晓程序」公众号,在微信后台回复「开发」,获取小程序开发技巧精选文章。 小程序如何读取 WordPress 博客内容? WordPress 在 4.6 版本推出了 REST API。.../wp-json/wp/v2/ 是WordPress 定义的 REST API 路由(router)与版本号等的组合。 posts 在 WordPress 中,称为「终点」(endpoint)。...在这里,我们用到的 WordPress REST API 就是 your-site.com/wp-json/wp/v2/posts?per_page={num}&page={num}。...构建文章详情页 文章页使用到的 API 地址是 your-site.com/wp-json/wp/v2/posts/{id}。

    1.9K30

    WordPress 网站基于REST API 开发“微信小程序”实战

    这篇文章主要记录自己在开发第一版的过程,顺便为有兴趣的你剖析如何将一个WordPress 网站借助 REST API 开发微信小程序版。本文目标受众为了解WordPress 且有初级前端知识的同学。...原理篇 WordPress 与 REST API WordPress 在4.4 版本后推出了 REST API, REST API 简单来说就是一种通过 HTTP 请求来获取、更新、删除数据的一种连接客户端与服务端的交互方式...(原图来自wisdmlabs,稍作修改) 以本站为例,可通过浏览器直接访问REST API 的其中一种URL:https://devework.com/wp-json/wp/v2/posts?...且让Jeff 将上面的URL 解释下,/wp-json/wp/v2/ 这个是WordPress 定义的REST API 的“路由”(router)与版本号等的组合,合在一起称作“命名空间”(namespace...使用到WordPress 的REST API 就是 your-site.com/wp-json/wp/v2/posts?per_page={num}&page={num}。

    3.9K60
    领券