一句話木馬是Webshell的一種,那什么是Webshell?先講講什么是shell。Shell是系統(tǒng)的用戶界面,提供了用戶與內(nèi)核進(jìn)行交互操作的一種接口。它接收用戶輸入的命令并把它送入內(nèi)核去執(zhí)行。因?yàn)橄到y(tǒng)內(nèi)核是我們不能直接操作的,shell就給我們提供了一個(gè)接口,通過(guò)shell我們可以把命令送入到內(nèi)核。shell管理用戶與操作系統(tǒng)之間的交互,等待你輸入,向操作系統(tǒng)解釋你的輸入,并且處理各種各樣的操作系統(tǒng)的輸出結(jié)果。

php一句話木馬
網(wǎng)絡(luò)安全行業(yè)有一句非常有名的諺語(yǔ):“一個(gè)不想獲得目標(biāo)站點(diǎn)Webshell的黑客不是一個(gè)好的黑客”,可見(jiàn)Webshell對(duì)一個(gè)黑客的吸引是多么的強(qiáng)烈, 黑客在入侵了一個(gè)網(wǎng)站后,通常會(huì)留下一個(gè)asp或php后門文件與網(wǎng)站web服務(wù)器進(jìn)行交互,得到一個(gè)命令執(zhí)行環(huán)境,以達(dá)到控制網(wǎng)站服務(wù)器的目的。這個(gè)后門文件就是所謂的webshell。
一句話木馬
一句話木馬作為Webshell的一種,由于這類Webshell代碼比較少,往往只有一行代碼,所以就被稱為一句話木馬。一句話木馬雖然代碼簡(jiǎn)單,但是結(jié)合中國(guó)菜刀等Webshell管理工具,它們的功能卻是非常的強(qiáng)大。
一句話木馬舉例
下面就是一個(gè)簡(jiǎn)單的PHP語(yǔ)言一句話木馬:
<?php eval($_POST['cmd']);?>
eval函數(shù)
把字符串按照 PHP 代碼來(lái)計(jì)算,該字符串必須是合法的 PHP 代碼,且必須以分號(hào)結(jié)尾。
$_POST
PHP 超全局變量 ,$_POST 用于收集表單數(shù)據(jù)(form-data)。一句話木馬會(huì)把我們通過(guò)POST方式提交的符合php代碼規(guī)范的字符串當(dāng)做php代碼執(zhí)行。
中國(guó)菜刀
這里的中國(guó)菜刀不是指切菜做飯的工具,而是中國(guó)安全圈內(nèi)使用非常廣泛的一款Webshell管理工具,中國(guó)菜刀用途十分廣泛,支持多種語(yǔ)言,小巧實(shí)用,中國(guó)菜刀有三個(gè)主要功能。
文件管理
可以訪問(wèn)站點(diǎn)所在服務(wù)器里邊存儲(chǔ)的文件,甚至可以刪除、上傳、下載里邊的文件。

文件管理
虛擬終端
可以在以下命令框中執(zhí)行命令,獲取服務(wù)器相關(guān)信息。

虛擬終端
數(shù)據(jù)庫(kù)管理
如果服務(wù)器上安裝有數(shù)據(jù)庫(kù)可以通過(guò)SQL語(yǔ)句查詢數(shù)據(jù)庫(kù)里邊的數(shù)據(jù)。

數(shù)據(jù)庫(kù)管理
下面我就演示一下如何利用一句話木馬和中國(guó)菜刀來(lái)獲取目標(biāo)站點(diǎn)Webshell,首先是測(cè)試環(huán)境我們使用DVWA,我們這次選擇使用虛擬機(jī)中的OWASPBWA的DVWA,打開(kāi)虛擬機(jī)中的OWASPBWA運(yùn)行到如下圖所示:

OWASPBWA
注意圖中紅框中的信息,一是:http://192.168.199.131,二是:username=root,password=owaspbwa,根據(jù)提示輸入用戶名root,密碼owaspbwa,進(jìn)入OWASPBWA虛擬機(jī)中,打開(kāi)主機(jī)瀏覽器輸入網(wǎng)址http://192.168.199.131,進(jìn)入OWASPBWA主界面,點(diǎn)擊圖中下方紅框中的鏈接,如下圖所示:

OWASPBWA主界面
進(jìn)入到DVWA登錄界面,輸入username=admin,password=admin,進(jìn)入DVWA,如下圖所示:

DVWA登錄界面
登錄DVWA后,點(diǎn)擊左側(cè)“upload”-瀏覽選擇文件-點(diǎn)擊“upload”按鈕-提示“../../hackable/uploads/123.php succesfully uploaded!”表示上傳成功,如下圖所示,注意下圖左下角“Security Level: low”,否則上傳不會(huì)成功。

上傳123.php一句話木馬
然后打開(kāi)中國(guó)菜刀,在空白處右鍵選擇“添加”,出現(xiàn)添加SHELL窗口,在地址欄填入http://192.168.199.131/dvwa/hackable/uploads/123.php,后邊小輸入欄填入“cmd”,就是一句話木馬中<?php eval($_POST['cmd']);?>中的POST參數(shù),腳本類型選擇PHP(Eval),字符編碼為GB2312,點(diǎn)擊添加。

添加shell
雙擊添加好的shell就可以訪問(wèn)目標(biāo)主機(jī)OWASPBWA中的文件,你可以刪除、編輯及下載里邊的文件,甚至可以上傳“大馬”到目標(biāo)主機(jī),獲得更多的權(quán)限,如下圖所示:

訪問(wèn)目標(biāo)主機(jī)文件
從以上的利用過(guò)程我們可以看出,使用中國(guó)菜刀通過(guò)一句話木馬獲取目標(biāo)主機(jī)管理權(quán)限,需要三個(gè)必要條件,一是必須把一句話木馬上傳到目標(biāo)主機(jī),二是必須知道上傳路徑,三是上傳路徑有可執(zhí)行權(quán)限,三者缺一不可,我們可以根據(jù)這三個(gè)必要條件制定如何防范類似攻擊的方案。
以上就是今天介紹的一句話木馬及中國(guó)菜刀,以及如何利用一句話木馬和中國(guó)菜刀獲取目標(biāo)主機(jī)的管理權(quán)限,但是現(xiàn)在的網(wǎng)站服務(wù)器在上傳過(guò)程中大部分都過(guò)濾了一句話木馬,使得一句話木馬無(wú)法輕易上傳到目標(biāo)服務(wù)器,接下來(lái)我會(huì)分享一些一句話木馬的變形,感興趣的可以加個(gè)關(guān)注@科技興了解更多科技,尤其是網(wǎng)絡(luò)安全方面的知識(shí)和咨詢。