成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

新曝WordPress REST API內容注入漏洞詳解

安全 漏洞
近日,來自Sucuri的研究人員發現WordPress存在重大漏洞,漏洞在于WordpressREST API,成功利用該漏洞可刪除頁面或修改頁面內容。

近日,來自Sucuri的研究人員發現WordPress存在重大漏洞,漏洞在于WordpressREST API,成功利用該漏洞可刪除頁面或修改頁面內容。官方很快發布了升級版Wordpress,但很多管理員沒有及時升級,以至于被篡改的網頁從最初的幾千一路飆升到了150萬,在此也提醒各位管理員盡快升級。

漏洞

一、漏洞詳情

1. 漏洞信息:

WordPress是一個以PHP和MySQL為平臺的自由開源的博客軟件和內容管理系統。在4.7.0版本后,REST API插件的功能被集成到WordPress中,由此也引發了一些安全性問題。近日,一個由REST API引起的影響WorePress4.7.0和4.7.1版本的漏洞被披露,該漏洞可以導致WordPress所有文章內容可以未經驗證被查看,修改,刪除,甚至創建新的文章,危害巨大。

2. 漏洞影響版本:

WordPress4.7.0、WordPress 4.7.1

3. 復現環境:

Apache 2.4

PHP 7.0

WordPress4.7.1

4.復現過程:

(1) 安裝WordPress并配置REST API

① 配置Apache+PHP+Mysql的運行環境,下載含有漏洞版本的WordPress (https://wordpress.org/wordpress-4.7.1.tar.gz)并安裝。

② 加載Apache的rewrite模塊。

在Apache的配置文件中添加

LoadModule rewrite_module/usr/lib/apache2/modules/mod_rewrite.so

并在主配置文件中設置對應的WEB目錄的AllowOverride為All

加載Apache的rewrite模塊

③設置WordPress站點為固定鏈接

在Settings->Permalinks中的Common Settings設置為非Plain模式。例如下圖,我們設置為Day and name。

設置WordPress站點為固定鏈接

(2) 漏洞復現

①根據REST API文檔,修改文章內容的數據包構造如下:

根據REST API文檔,修改文章內容的數據包構造

可以看到,不帶任何驗證信息會提示不允許編輯文章

②構造可利用的數據包:

當url為/wp-json/wp/v2/posts/1?id=1a時,可以看到,已經成功跳過驗證看到文章內容了。

當url為/wp-json/wp/v2/posts/1?id=1a時

二、漏洞發現之技術細節

Sucuri研究人員的漏洞發現過程始于./wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php

漏洞發現之技術細節

這里有幾件事值得注意。注冊的路由用于用數字填充ID請求參數。比如,如果向/wp-json/wp/v2/posts/1234 –發送請求,則ID參數被設置為1234。

這種行為本身不失為一種防止攻擊者編制惡意ID值的好方法,但是當查看REST API如何管理訪問時,研究人員很快發現其給予$_GET 和$_POST值的優先級高于路由的正則表達式生成的值。這使攻擊者可以發送/wp-json/wp/v2/posts/1234?id=12345helloworld這樣的請求,這樣會將12345helloworld分配到ID參數,這樣包含的不僅僅是數字。

研究人員進一步查看了各種回調(上面截圖中),其中一個引起了研究人員的注意:update_item及其權限檢查方法:update_item_permissions_check。

update_item_permissions_check

簡言之,它將字母數字ID值直接傳遞給了get_post()函數。該函數通過檢查帖子是否實際存在以及用戶是否有權編輯此帖來驗證請求。研究人員認為這種審驗請求的方式較為奇特。如果我們發送一個沒有相應帖子的ID,我們可以通過權限檢查,并被允許繼續執行對update_item方法的請求。

出于對是什么導致get_post()無法找到帖子(除ID不存在外)的好奇,研究人員意識到其使用wp_posts中的get_instance()靜態方法來抓取帖子。

wp_posts中的get_instance()

從代碼中可以看出,對于不是由純數字字符組成的任何輸入,其基本上會失敗 – 因此123ABC會失敗。

對于攻擊者,這意味著WordPress(將其視作具有足夠權限編輯此帖的用戶)會運行update_item方法。

我們認為有必要查看該方法的作用。

截圖中有一個微妙但非常重要的細節——WordPress在將ID參數傳遞給get_post前先將其轉換為一個整數。鑒于PHP進行類型比較和轉換的方式,這是一個問題。比如,你會發現以下代碼片段會返回123:

9.png

這導致了非常危險的情形,即攻擊者可以提交/wp-json/wp/v2/posts/123?id=456ABC這樣的請求來對ID為456的帖子進行篡改。

鑒于此類型欺騙問題,攻擊者便可篡改受害者網站上的任何帖子或頁面的內容。這樣他們便可以添加插件特定的短代碼來利用漏洞(原本僅限于貢獻者)、使用SEO垃圾郵件活動感染網站內容或注入廣告,等等。甚至可以很容易地執行PHP代碼——取決于網站上啟用的插件。

結語

這是一個可以以不同方式利用的嚴重漏洞,如果您的網站尚未啟用自動更新,請盡快更新。

責任編輯:趙寧寧 來源: FreeBuf
相關推薦

2015-03-13 19:22:03

2023-12-08 13:18:27

2023-05-08 19:28:11

2014-07-28 09:33:26

2023-04-04 22:20:53

2023-07-29 11:15:47

2017-02-13 09:31:53

2015-03-13 09:20:57

2025-03-06 16:38:19

2011-11-04 11:54:26

2013-07-05 09:15:28

Android

2014-10-11 11:44:02

2017-05-08 07:07:50

2015-05-08 12:17:53

2009-05-06 09:03:50

微軟Windows 7操作系統

2022-07-15 10:19:40

漏洞網絡攻擊

2023-12-12 20:52:22

2021-01-27 17:24:27

密碼root權限漏洞

2012-07-10 15:09:11

SQL注入ShopEx

2013-01-17 10:24:26

root漏洞Linksys路由器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 毛色毛片免费看 | 欧美一区二区三区久久精品 | 四虎永久免费黄色影片 | 成人蜜桃av | 三级国产三级在线 | 国产精品爱久久久久久久 | 美女激情av | 欧美视频免费 | 中文字幕免费在线 | 成人午夜激情 | 久久夜色精品国产 | 久久久爽爽爽美女图片 | 中文字幕一二三 | 欧美另类视频在线 | 亚洲欧美日韩精品久久亚洲区 | 国产中文一区二区三区 | 亚洲国产aⅴ成人精品无吗 亚洲精品久久久一区二区三区 | av第一页| 一级做a毛片| 一级日韩 | 久久亚洲国产精品 | 91毛片在线观看 | 成人在线精品视频 | 久久国产秒 | 日韩成人在线播放 | 国产韩国精品一区二区三区 | 午夜在线视频一区二区三区 | 午夜视频一区二区 | 黄色片亚洲 | 国产高清视频在线观看播放 | 成人欧美一区二区三区在线观看 | 欧美精品一区二区三区蜜桃视频 | 天天久久 | 中文字幕一二三区 | 久久国产精品免费 | 亚洲中午字幕 | 久草新在线| 亚洲永久精品国产 | 欧美一级在线观看 | 999热视频 | 又爽又黄axxx片免费观看 |