0x01 簡介
RCE(remote command/code execute)漏洞蔚晨,可以讓攻擊者直接向后臺服務器遠程注入操作系統(tǒng)命令或者代碼,從而控制后臺系統(tǒng)瞒窒。
0x02 exec "ping"
遠程命令執(zhí)行漏洞在之前的DVWA漏洞中已經(jīng)進行過詳細的描述但骨,包括連接符號等,因此此處僅做漏洞發(fā)現(xiàn)演示致份。
執(zhí)行結果為
因此此處存在遠程命令執(zhí)行漏洞
0x03 exec "eval"
輸入phpinfo();
顯示出了相關信息变抽,因此此處存在遠程代碼執(zhí)行漏洞
0x04 連接符
Windows系統(tǒng):
|:只執(zhí)行后面的語句。
||:如果前面的語句執(zhí)行失敗氮块,則執(zhí)行后面的語句绍载。
&:兩條語句都執(zhí)行,如果前面的語句為假則執(zhí)行后面的語句滔蝉,如果前面的語句為真則不執(zhí)行后面的語句击儡。
&&:如果前面的語句為假,則直接出錯蝠引,也不再執(zhí)行后面的語句阳谍;前面的語句為真則兩條命令都執(zhí)行,前面的語句只能為真螃概。
Linux系統(tǒng):
;:執(zhí)行完前面的語句再執(zhí)行后面的語句边坤,當有一條命令執(zhí)行失敗時,不會影響其它語句的執(zhí)行谅年。
|(管道符):只執(zhí)行后面的語句茧痒。
||(邏輯或):只有前面的語句執(zhí)行出錯時,執(zhí)行后面的語句融蹂。
&(后臺任務符):兩條語句都執(zhí)行旺订,如果前面的語句為假則執(zhí)行后面的語句弄企,如果前面的語句為真則不執(zhí)行后面的語句。
&&(邏輯與):如果前面的語句為假則直接出錯区拳,也不再執(zhí)行后面的語句拘领;前面的語句為真則兩條命令都執(zhí)行,前面的語句只能為真樱调。
``(命令替換):當一個命令被解析時约素,它首先會執(zhí)行反引號之間的操作。例 echo whoami
0x04 防御方案
- 嚴格過濾用戶輸入的數(shù)據(jù)笆凌,禁止執(zhí)行非預期系統(tǒng)命令圣猎。
- 減少或不使用代碼或命令執(zhí)行函數(shù)
- 客戶端提交的變量在放入函數(shù)前進行檢測
- 減少或不使用危險函數(shù)
本文僅為個人學習時所作筆記,非標準答案乞而,文中如有錯誤送悔,煩請各位師傅批評指正。