最新国产精品视频免费看_99热这里只有精品在线_无码精品人妻一区_欧美精品丝袜久久久中文字幕

為用戶(hù)創(chuàng)造價(jià)值的開(kāi)發(fā)公司

始終追求工匠精神,是您靠譜的H5開(kāi)發(fā)、小程序開(kāi)發(fā)、微信開(kāi)發(fā)供應(yīng)商

藍(lán)暢首頁(yè) >> 動(dòng)態(tài)

Thinkphp框架filter參數(shù)漏洞解析

時(shí)間:2019-05-24 00:00:00 | 來(lái)源:


   

漏洞介紹

CNNVD編號(hào):CNNVD-201812-489

漏洞介紹鏈接

noneCms github issue

nonecms的作者通過(guò)升級(jí) thinkphp 框架的版本把漏洞修復(fù)了

查看 thinkphp/library/think/App.php 這個(gè)文件的修改歷史可以發(fā)現(xiàn)

更新框架前是5.1.0

const VERSION = '5.1.0';

更新框架后是5.1.31

const VERSION = '5.1.31 LTS';

漏洞修復(fù)

漏洞出現(xiàn)在 NoneCMS/thinkphp/library/think/route/dispatch/Url.php 文件中的parseUrl方法里

  1. // 解析模塊

  2. $module=$this->app->config('app_multi_module') ? array_shift($path) : null;

  3. if($this->param['auto_search']){

  4. $controller=$this->autoFindController($module, $path);

  5. }else{

  6. // 解析控制器

  7. $controller=!empty($path) ? array_shift($path) : null;

  8. }

  9. // 解析操作

  10. $action=!empty($path) ? array_shift($path) : null;

  11. // 解析額外參數(shù)

  12. if($path){

  13. if($this->app['config']->get('url_param_type')){

  14. $var+=$path;

  15. }else{

  16. preg_replace_callback('/(w+)|([^|]+)/', function($match)use(&$var){

  17. $var[$match[1]]=strip_tags($match[2]);

  18. }, implode('|', $path));

  19. }

  20. }

為了修復(fù)漏洞,thinkphp官方添加了新的代碼

  1. if($this->param['auto_search']){

  2. $controller=$this->autoFindController($module, $path);

  3. }else{

  4. // 解析控制器

  5. $controller=!empty($path) ? array_shift($path) : null;

  6. }

  7. /**** 加入了這段代碼 ****

  8.        if ($controller && !preg_match('/^[A-Za-z](w|.)*$/', $controller)) {

  9.            throw new HttpException(404, 'controller not exists:' . $controller);

  10.        }

  11.        **** 加入了這段代碼 ****/

  12. // 解析操作

  13. $action=!empty($path) ? array_shift($path) : null;

具體修改歷史可以在以下鏈接找到

Url.php 修改歷史

概括地說(shuō),就是把library/think/route/dispatch/Module.php 的代碼移動(dòng)到 library/think/route/dispatch/Url.php

$controller變量的校驗(yàn)代碼經(jīng)過(guò)多次改進(jìn)之后,變成下面這個(gè)樣子

  1. if($controller&&!preg_match('/^[A-Za-z][w|.]*$/', $controller)){

  2. thrownewHttpException(404, 'controller not exists:' . $controller);

  3. }

[A-Za-z][w|.]* 這個(gè)正則表達(dá)式的含義是 $controller 的第一個(gè)字符是字母A-Za-z。 [w|.] 匹配 a-zA-Z0-9_ 和 .。 例如可以匹配 a.b.abc123.., 所以嚴(yán)格來(lái)說(shuō), 這個(gè)正則表達(dá)式不是特別準(zhǔn)確

漏洞運(yùn)行

如果上面這段 $controller 變量的校驗(yàn)代碼去掉并訪問(wèn)下面類(lèi)似的鏈接,就會(huì)復(fù)現(xiàn)之前的漏洞。

   http://xxx.com/NoneCms/public/?s=index/thinkRequest/input&filter=phpinfo&data=1

這時(shí)候變量 $controller 等于 thinkRequest

當(dāng)執(zhí)行到文件 NoneCMS/thinkphp/library/think/Request.php 中的代碼的時(shí)候, $filter = "phpinfo", $value = 1

  1. privatefunctionfilterValue(&$value, $key, $filters)

  2. {

  3. $default=array_pop($filters);

  4. foreach($filtersas$filter){

  5. if(is_callable($filter)){

  6. // 調(diào)用函數(shù)或者方法過(guò)濾

  7. $value=call_user_func($filter, $value);

等于執(zhí)行了以下代碼,這樣php運(yùn)行環(huán)境的敏感信息就泄露了。適當(dāng)構(gòu)造URL參數(shù)就可以實(shí)現(xiàn)更多攻擊和破解操作。

  1. $filter="phpinfo";

  2. $value=1;

  3. call_user_func($filter, $value);

總結(jié)

  1. 調(diào)用call_user_func函數(shù)時(shí),要進(jìn)行參數(shù)校驗(yàn)。

  2. 對(duì)于 HTTP GET 請(qǐng)求里的參數(shù)盡可能使用嚴(yán)格的正則表達(dá)式進(jìn)行校驗(yàn)。


本文轉(zhuǎn)自:http://blog.hexccc.com

原文地址:http://blog.hexccc.com/thinkphp-filter-code-vulnerability/


本文地址:
更多內(nèi)容推薦:
專(zhuān)欄最新閱讀:
更多文章閱讀請(qǐng)至:技術(shù)專(zhuān)欄
Tips: 為您提供 微信開(kāi)發(fā)H5開(kāi)發(fā)微信小程序開(kāi)發(fā)微信定制開(kāi)發(fā)網(wǎng)站開(kāi)發(fā)小程序商城開(kāi)發(fā)SEO網(wǎng)站優(yōu)化視頻后期制作等定制化開(kāi)發(fā)服務(wù)
国产美女精品免费电影| 久久―日本道色综合久久| 久久精品视频一| 狠狠综合久久av一区二区老牛| 国产欧美精品一区| 91久久在线| 欧美中文在线免费| 欧美日韩国产区一| 欧美aⅴ99久久黑人专区| 国产精品久久午夜| 久久综合国产精品台湾中文娱乐网| 欧美精品1区| 国产精品九九| 欧美性大战久久久久| 一色屋精品视频在线观看网站| 亚洲一区二区久久| 欧美国产精品久久| 一色屋精品视频在线看| 久久国产日本精品| 亚洲高清免费视频| 亚洲一区二区三区视频| 欧美激情亚洲激情| 欧美日韩一区二区在线播放| 国产日韩欧美中文| 亚洲一区二区在线免费观看| 欧美精品一区二区视频| 亚洲欧美另类在线观看| 国产精品久久久久久久久婷婷 | 一区二区av在线| 可以看av的网站久久看| 久久综合中文字幕| 国内精品99| 香蕉久久久久久久av网站| 欧美三级午夜理伦三级中视频| 久久免费观看视频| 一本久道久久综合中文字幕| 亚洲免费观看视频| 久久噜噜亚洲综合| 国内精品视频在线观看| 欧美一级欧美一级在线播放| 国产精品美女久久福利网站| 亚洲桃花岛网站| 欧美一区二区大片| 亚洲视频免费| 久久婷婷激情| 狠狠干综合网| 久久久久欧美精品| 国产一区二区观看| 久久av一区| 欧美精品 日韩| 亚洲日本视频| 日韩网站在线观看| 欧美日产一区二区三区在线观看| 激情综合亚洲| 久久亚洲一区二区三区四区| 狠狠爱www人成狠狠爱综合网| 久久精品亚洲一区| 黑人中文字幕一区二区三区| 亚洲伦理在线免费看| 欧美顶级艳妇交换群宴| 国产情人综合久久777777| 亚洲免费在线电影| 国产美女一区| 欧美综合激情网| 欧美日韩一二三区| 一区二区三区免费网站| 国产精品magnet| 午夜激情综合网| 国产在线一区二区三区四区 | 国产婷婷一区二区| 久久久久久97三级| 亚洲黄色免费电影| 欧美日韩国产综合久久| 亚洲午夜国产一区99re久久| 美女黄色成人网| 亚洲精品一线二线三线无人区| 欧美中在线观看| 激情成人在线视频| 欧美不卡福利| 一区二区三区日韩精品| 国产欧美一区二区精品婷婷| 久久久噜噜噜久久中文字免| 亚洲国产精品视频一区| 欧美日韩视频一区二区| 亚洲欧美另类在线观看| 欧美三级网址| 欧美一区二区三区四区在线 | 国内外成人免费视频 | 欧美日韩xxxxx| 国产美女精品视频| 亚洲影音一区| 国产专区一区| 欧美精品v日韩精品v国产精品| 国产精品99久久久久久有的能看| 国产欧美大片| 你懂的亚洲视频| 在线视频亚洲欧美| 国产午夜精品全部视频在线播放| 老鸭窝91久久精品色噜噜导演| 国产一区二区三区的电影| 在线亚洲电影| 国产一区二区三区四区| 欧美国产日韩xxxxx| 亚洲欧美国产高清| 亚洲国产精品va在线观看黑人| 欧美午夜宅男影院| 久久嫩草精品久久久精品一| 一本不卡影院| 一区二区高清| 亚洲宅男天堂在线观看无病毒| 国产视频久久久久| 欧美精品一区二区三区在线看午夜 | 亚洲欧美日韩综合aⅴ视频| 在线日韩视频| 国产精品美女久久久浪潮软件 | 国产专区一区| 国产精品v日韩精品| 久久这里有精品视频| 亚洲一区不卡| 亚洲日本乱码在线观看| 国产婷婷精品| 欧美亚州一区二区三区| 猫咪成人在线观看| 性欧美暴力猛交69hd| 日韩一级二级三级| 在线观看一区二区视频| 国产精品久在线观看| 欧美成人精品不卡视频在线观看| 亚洲一区综合| 国产精品www网站| 免费久久99精品国产自| 亚洲永久免费视频| 亚洲精品字幕| 1024成人网色www| 欧美激情一区二区三区在线视频 | 国产精品久久久久一区二区三区| 欧美freesex8一10精品| 久久精品一区二区三区不卡| 亚洲一级特黄| 亚洲美女在线观看| 亚洲国产精品久久久久久女王| 国产日韩在线播放| 国产精品福利网| 欧美日韩国产不卡在线看| 久久综合伊人77777尤物| 亚洲一级在线观看| 91久久久亚洲精品| 国语自产精品视频在线看抢先版结局 | 欧美一区二区久久久| 在线视频你懂得一区| 亚洲黄色尤物视频| 韩国视频理论视频久久| 国产伦精品一区二区三区视频黑人| 欧美日韩一区二区在线观看| 亚洲一区二区三区精品视频| 亚洲精品免费看| 亚洲国产精品第一区二区三区| 激情综合色丁香一区二区| 国产日韩欧美一区| 国产麻豆午夜三级精品| 国产精品欧美久久| 美女精品网站| 久久免费黄色| 久久久噜噜噜久久人人看| 久久国产精彩视频| 欧美一区二区私人影院日本 | 国产欧美一区二区三区国产幕精品 | 亚洲国产成人精品久久久国产成人一区 | a91a精品视频在线观看| 亚洲日本国产| 亚洲日本电影在线| 亚洲精品国久久99热| 亚洲欧洲三级电影| 亚洲日本欧美在线| 99精品热视频| 亚洲视频欧美视频| 亚洲一区二区三区在线看| 亚洲香蕉伊综合在人在线视看| 亚洲网站在线播放| 亚洲资源在线观看| 午夜在线精品| 91久久久久久久久| 亚洲激情在线| 亚洲精选91| 一区二区三区成人精品| 中文网丁香综合网| 亚洲在线一区| 久久国产精品99精品国产| 久久精品人人做人人爽| 久久米奇亚洲| 欧美成人久久| 欧美日韩视频在线观看一区二区三区 | 黑人巨大精品欧美黑白配亚洲| 精品成人在线视频| 亚洲国产一区二区三区青草影视 | 欧美美女bb生活片| 欧美日韩一区二区在线| 国产精品一区一区| 欧美日韩和欧美的一区二区| 欧美日韩在线不卡一区|