最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

PHP代碼審計(jì)之RCE漏洞

2021-09-16 11:56 作者:安全牛課堂  | 我要投稿

RCE漏洞全稱為遠(yuǎn)程命令/代碼執(zhí)行漏洞(英文為remote command/code execute),可以讓攻擊者直接向后臺服務(wù)器遠(yuǎn)程注入操作系統(tǒng)命令或者代碼,從而控制后臺系統(tǒng)。

本文中將對Thinkphp5.0.X代碼執(zhí)行漏洞進(jìn)行簡單的分析。


漏洞影響版本:

ThinkPHP5.0.X 代碼執(zhí)行漏洞

漏洞成因:控制器過率不嚴(yán),結(jié)合直接返回類名的代碼操作,導(dǎo)致可以用命名空間的方式來調(diào)用任意類的任意方法

影響范圍:ThinkPHP5.0.X-5.0.23

EXP:

/index.php?s=/index/\think\APP/invokefunction&function=phpinfo&vars[0]=100

/public/index.php?s=/index/\think\APP/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

一般入口文件是在站點(diǎn)根目錄下的public目錄下的index.php文件:

在框架引導(dǎo)文件中調(diào)用APP類的run函數(shù),后發(fā)現(xiàn)進(jìn)入autoload自動(dòng)加載類

發(fā)現(xiàn)代碼在尋找think\APP的類

查找think\APP類所對應(yīng)的類文件的物理路徑

途中在think\APP類文件中86行,發(fā)現(xiàn)filter過率函數(shù)(換空)

在APP類文件的103行放出可調(diào)度的信息dispatch,這個(gè)代表提交路由的狀態(tài)模式,而這個(gè)變量是由routeCheck函數(shù)返回,我們進(jìn)入routeCheck函數(shù)查看

發(fā)現(xiàn)routeCheck函數(shù)為路由檢查函數(shù),跟進(jìn)后發(fā)現(xiàn)我們提交的路由為合理路由,并沒有過濾 (path里的路徑為index/think\APP/invokefunction)

繼續(xù)往下,發(fā)現(xiàn)使用Route:parseUrl函數(shù)對路由進(jìn)行解析,將模塊/控制器/函數(shù)/參數(shù)從我們提交的路由中分離出來,分別加載

在route:parseUrl中使用ParseUrlPath對路徑由/進(jìn)行分割,發(fā)現(xiàn)我們提交的\think\APP并沒有被分割開來



繼續(xù)往下發(fā)現(xiàn)解析控制器的內(nèi)容,沒有任何過濾,這樣使得我們可以調(diào)用框架中任何控制器的類文件

往下發(fā)現(xiàn)可以任意執(zhí)行類的任意函數(shù),傳入任意參數(shù)

到現(xiàn)在位置,可以調(diào)用任意類文件中的任意函數(shù)


APP類文件的invokefunction函數(shù)中,function為我們傳入的phpinfo,這里使用到了反射類,將傳入的函數(shù)對象反射,最后通過invokeArgs執(zhí)行。

關(guān)于反射類執(zhí)行類的函數(shù):

以上內(nèi)容選自安全牛課堂《PHP代碼審計(jì)之RCE漏洞》課程

本課程您還將學(xué)習(xí)到UsualTool后臺getshell入門審計(jì)、pluck漏洞代碼、zzzphp遠(yuǎn)程代碼執(zhí)行漏洞審計(jì)、PbootCMS遠(yuǎn)程代碼執(zhí)行漏洞審計(jì)、ecshop日志文件代碼執(zhí)行漏洞審計(jì)、Empire后臺代碼執(zhí)行g(shù)etshell、Thinkphp5.0.X代碼執(zhí)行漏洞等相關(guān)漏洞代碼分析以及漏洞復(fù)現(xiàn)。

掃描下方二維碼直接跳轉(zhuǎn)至課程頁面

課程視頻地址:https://www.aqniukt.com/my/course/13995

PHP代碼審計(jì)之RCE漏洞的評論 (共 條)

分享到微博請遵守國家法律
嫩江县| 安仁县| 义乌市| 凯里市| 饶河县| 铜陵市| 临颍县| 宁明县| 张家界市| 米易县| 卢湾区| 岫岩| 霞浦县| 镇沅| 龙游县| 平果县| 永仁县| 建始县| 东港市| 康乐县| 察哈| 邮箱| 东安县| 仪征市| 蓝山县| 故城县| 永靖县| 循化| 辉县市| 临汾市| 昭平县| 临安市| 渭南市| 武功县| 山阴县| 荥阳市| 甘洛县| 翁牛特旗| 涡阳县| 玛曲县| 仁怀市|