RCE(remote command/code execute)概述php
RCE漏洞,可讓攻擊者直接向後臺服務器遠程注入操做系統命令或者代碼,從而控制後臺系統。 前端
遠程系統命令執行
通常出現這種漏洞,是由於應用系統從設計上須要給用戶提供指定的遠程命令操做的接口
好比咱們常見的路由器、防火牆、入侵檢測等設備的web管理界面上
通常會給用戶提供一個ping操做的web界面,用戶從web界面輸入目標IP,提交後,後臺會對該IP地址進行一次ping測試,並返回測試結果。 而,若是,設計者在完成該功能時,沒有作嚴格的安全控制,則可能會致使攻擊者經過該接口提交「意想不到」的命令,從而讓後臺進行執行,從而控制整個後臺服務器
如今不少的甲方企業都開始實施自動化運維,大量的系統操做會經過"自動化運維平臺"進行操做。 在這種平臺上每每會出現遠程系統命令執行的漏洞,不信的話如今就能夠找大家運維部的系統測試一下,會有意想不到的"收穫"-_- web
遠程代碼執行
一樣的道理,由於需求設計,後臺有時候也會把用戶的輸入做爲代碼的一部分進行執行,也就形成了遠程代碼執行漏洞。 無論是使用了代碼執行的函數,仍是使用了不安全的反序列化等等。 windows
所以,若是須要給前端用戶提供操做類的API接口,必定須要對接口輸入的內容進行嚴格的判斷,好比實施嚴格的白名單策略會是一個比較好的方法。 安全
1.輸入ip進行測試,出現中文亂碼由於我把靶機搭建在windows上的,服務器
2.輸入ip用&字符後接咱們須要執行的命令,因沒有嚴格過濾,能夠執行咱們須要的命令,運維
127.0.0.1 & ipconfig函數
1.輸入,phpinfo();測試
2.輸入,system("ipconfig");spa