概述
SSRF原理
SSRF(Server-Side Request Forgery,服務(wù)端請求偽造)是一種由攻擊者構(gòu)造請求,由服務(wù)器端發(fā)起請求的安全漏洞,本質(zhì)上是屬于信息泄露漏洞。如果“請求偽造”發(fā)生在服務(wù)器端,那么這個漏洞就叫做“服務(wù)器端請求偽造”即SSRF。
SSRF是一種攻擊者發(fā)起的偽造由服務(wù)器端發(fā)起請求的一種攻擊,也是常見的web安全漏洞(缺陷或者風險)之一。
互聯(lián)網(wǎng)上的很多web應(yīng)用提供了從其他服務(wù)器(也可以是本地)獲取數(shù)據(jù)的功能。使用用戶指定的URL,web應(yīng)用可以獲取圖片、文件資源(下載或讀取)。
例如:百度提供識圖功能。
用戶可以從本地或者URL的方式獲取圖片資源,交給百度識圖處理。如果提交的是URL地址,該應(yīng)用就會通過URL尋找圖片資源。如果web應(yīng)用開放了類似于百度識圖這樣的功能,并且對用戶提供的URL和遠端服務(wù)器返回的信息沒有進行合適的驗證或者過濾,就可能存在"請求偽造"的缺陷。請求偽造,顧名思義就是攻擊者偽造正常的請求,以達到攻擊的目的,是常見的web安全漏洞之一。
SSRF漏洞成因:
服務(wù)端提供了從其他服務(wù)器應(yīng)用(也可以是本地)獲取數(shù)據(jù)的功能;
服務(wù)端對用戶提供的URL和遠端服務(wù)器返回的信息沒有進行合適的驗證或者過濾
SSRF攻擊目標:
一般來說,SSRF攻擊的目標是從外網(wǎng)無法訪問的內(nèi)部系統(tǒng)(正是因為它是有服務(wù)器端發(fā)起的,所以它能夠請求到與它相連而與外網(wǎng)隔離的內(nèi)部系統(tǒng))
SSRF主要攻擊方式如下
攻擊者想要訪問主機B上的服務(wù),但是由于存在防火墻或者主機B是屬于內(nèi)網(wǎng)主機等原因?qū)е鹿粽邿o法直接訪問主機B。而主機A存在SSRF漏洞,這時攻擊者可以借助主機A來發(fā)起SSRF攻擊,通過主機A向主機B發(fā)起請求,從而獲取主機B的一些信息。
PHP中下面函數(shù)的使用不當會導致SSRF,根據(jù)后臺使用的函數(shù)的不同,對應(yīng)的影響和利用方法又有不一樣
curl_exec()
file_get_contents()
fsockopen()
SSRF危害
利用file協(xié)議讀取本地文件
對服務(wù)器所在內(nèi)網(wǎng)、本地進行端口掃描,獲取一些服務(wù)的banner信息
攻擊運行在內(nèi)網(wǎng)或本地的web應(yīng)用程序
對內(nèi)網(wǎng)web應(yīng)用進行指紋識別,識別企業(yè)內(nèi)部的資產(chǎn)信息
攻擊內(nèi)外網(wǎng)的web應(yīng)用,主要是使用HTTP GET請求就可以實現(xiàn)的攻擊
SSRF實戰(zhàn)利用
在服務(wù)端實現(xiàn)通過URL從服務(wù)器(外部或內(nèi)部)獲取資源的功能方法有很多,此處使用PHP語言和CURL擴展實現(xiàn)該功能。
實戰(zhàn)前準備
PHP+curl簡介:
PHP 支持 Daniel Stenberg 創(chuàng)建的 libcurl 庫,能夠連接通訊各種服務(wù)器、使用各種協(xié)議。libcurl 目前支持的協(xié)議有 http、https、ftp、gopher、telnet、dict、file、ldap。 libcurl 同時支持 HTTPS 證書、HTTP POST、HTTP PUT、 FTP 上傳(也能通過 PHP 的 FTP 擴展完成)、HTTP 基于表單的上傳、代理、cookies、用戶名+密碼的認證。文章來源:http://www.zghlxwxcb.cn/news/detail-762138.html
查看curl擴展功能支持:通過phpinfo()函數(shù)查看對CURL擴展的支持,現(xiàn)在大部分wamp(windows/apache/mysql/php)套件均支持CURL擴展文章來源地址http://www.zghlxwxcb.cn/news/detail-762138.html
到了這里,關(guān)于【SSRF漏洞-01】服務(wù)端請求偽造靶場實戰(zhàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!