SSRF漏洞分析與利用

這段時間一直劃水來著谆级,突然看到SSRF漏洞钝凶,覺得新奇串塑,我只知道csrf魄眉,SSRF是什么東西,還能穿透防火墻展蒂、主機信息收集赚窃、端口開放情況看到這些我準備一探究竟,參考一篇大佬文章佃却,覺得博主挺好推薦給你們薄榛。

SSRF的原理與危害

SSRF(Server-Side Request Forgery)服務(wù)端請求偽造 是一種由攻擊者構(gòu)造形成由服務(wù)端發(fā)起請求的一個安全漏洞讳窟。一般情況下,SSRF攻擊的目標是從外網(wǎng)無法訪問的內(nèi)部系統(tǒng)敞恋。正是因為它是由服務(wù)端發(fā)起的丽啡,所以它能夠請求到與它相連而與外網(wǎng)隔離的內(nèi)部系統(tǒng)。
??正常情況下耳舅,我們無法從外網(wǎng)去訪問一個公司的內(nèi)部系統(tǒng)碌上,但是如果服務(wù)端提供了從其他服務(wù)器應(yīng)用獲取數(shù)據(jù)的功能且沒有對目標地址做過濾與限制倚评。比如從指定URL地址獲取網(wǎng)頁文本內(nèi)容浦徊,加載指定地址的圖片,下載等等天梧。攻擊者就可以利用該漏洞繞過防火墻等訪問限制盔性,進而將受感染或存在漏洞的服務(wù)器作為代理進行端口掃描,甚至是訪問內(nèi)部系統(tǒng)數(shù)據(jù)呢岗。

SSRF攻擊利用主要有以下幾種方式

1冕香、內(nèi)網(wǎng)蛹尝、本地端口掃描,獲取開放端口信息
2悉尾、主機信息收集突那,web應(yīng)用指紋識別,獲取服務(wù)banner信息
3构眯、根據(jù)識別出的應(yīng)用針對性的發(fā)送payload攻擊愕难,例如struts2
4、攻擊內(nèi)網(wǎng)和本地的應(yīng)用程序及服務(wù)惫霸。
5猫缭、穿越防火墻
6、利用file協(xié)議讀取本地文件壹店,比如file:///etc/passwd

代碼演示示例

以下是一個用curl獲取數(shù)據(jù)的功能

<?php
     /*
        文件名稱:ssrf.php
        curl_setopt函數(shù)說明:http://www.runoob.com/php/func-curl_setopt.html 
    */
if(isset($_POST['url'])){
   $link = $_POST['url'];
   $filename = 'D:xampphtdocstestuploadtxt'.rand().'.txt';
   $curlobj = curl_init($link);
   $fp = fopen($filename,"w");
   curl_setopt($curlobj,CURLOPT_FILE,$fp);
   curl_setopt($curlobj,CURLOPT_HEADER,0);
   curl_exec($curlobj);
   curl_close($curlobj);
   fclose($fp);
   $fp = fopen($filename,"r");
   $result = fread($fp,filesize($filename));
   fclose($fp);
   echo $result;
}
?>
<!DOCTYPE html>
<!-- 文件名:ssrf.html  -->
<html>
<head>
    <title>ssrf</title>
</head>
<body>
<center>
    <form name="input" action="http://localhost/test/ssrf.php" method="POST">
    <input type="text" name="url">
    <input type="submit" value="Submit">
    </form>
</center>
</body>
</html>

攻擊案例

1猜丹、讀取本地文件
file:///C:/Windows/win.ini(Linux下讀取/etc/passwd)

image.png

2、 請求非http服務(wù)的開放端口硅卢,返回banner信息
request:http://ip:22/1.txt
image.png

image.png

3射窒、服務(wù)探測
紅色標注IP主機B與本機A在同一內(nèi)網(wǎng)下
image.png

submit提交之后


image.png

主機B本來只有內(nèi)網(wǎng)可以訪問,但是由于curl請求資源的代碼存在漏洞将塑,導(dǎo)致對外網(wǎng)開放的主機A可以直接請求處于同一內(nèi)網(wǎng)主機B的資源轮洋,導(dǎo)致內(nèi)網(wǎng)應(yīng)用服務(wù)探測。

SSRF挖掘和防御

ssrf漏洞一般存在于以下幾種web功能:

1抬旺、在線分享:通過URL地址分享網(wǎng)頁內(nèi)容
2弊予、在線識圖
3、在線翻譯:百度翻譯开财,有道翻譯
4汉柒、各大網(wǎng)站訂閱
5、圖片加載與下載:通過URL地址加載或下載圖片
6责鳍、圖片碾褂、文章收藏功能
7、接收郵件服務(wù)器地址的郵件系統(tǒng)
8历葛、調(diào)用URL的功能
9正塌、文件處理,如ImageMagick恤溶,xml
10乓诽、請求遠程服務(wù)器資源,遠程URL上傳咒程,靜態(tài)資源圖片文件等
11鸠天、數(shù)據(jù)庫內(nèi)置功能,比如mongodb的copyDatabase函數(shù)
12帐姻、從URL關(guān)鍵字中尋找:share稠集,url奶段,link,src剥纷,source痹籍,target,sourceURl晦鞋,imageURL词裤,domain...

漏洞驗證的方式:

1、右鍵圖片在新窗口打開鳖宾,如果瀏覽器地址顯示為 www.xxx.com/xx.jpg 類似格式的吼砂,說明不存在ssrf漏洞,但是如果資源地址類似 http://www.xxx.com/1.jsp?image= 的格式就有可能存在漏洞鼎文。
2渔肩、另一種方式是使用抓包工具burp fiddler來判斷,SSRF漏洞是構(gòu)造服務(wù)器發(fā)送請求的安全漏洞拇惋,所以就可以通過抓包分析請求是否有服務(wù)端發(fā)起的來判斷是否存在漏洞周偎。
下圖轉(zhuǎn)自土司:

image.png

防御措施

過濾返回的信息,甚至必要情況下不返回
限制http端口撑帖,僅可使用http https
檢查IP是否為內(nèi)網(wǎng)IP蓉坎,進行黑名單過濾
禁止不需要的協(xié)議,gopher,ftp,file協(xié)議等

前言:總結(jié)了一些常見的姿勢胡嘿,以PHP為例蛉艾,先上一張腦圖,劃√的是本文接下來實際操作的


image.png

0x01漏洞產(chǎn)生的原因

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末衷敌,一起剝皮案震驚了整個濱河市勿侯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缴罗,老刑警劉巖助琐,帶你破解...
    沈念sama閱讀 219,589評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異面氓,居然都是意外死亡兵钮,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評論 3 396
  • 文/潘曉璐 我一進店門舌界,熙熙樓的掌柜王于貴愁眉苦臉地迎上來掘譬,“玉大人,你說我怎么就攤上這事禀横∑ㄒ” “怎么了粥血?”我有些...
    開封第一講書人閱讀 165,933評論 0 356
  • 文/不壞的土叔 我叫張陵柏锄,是天一觀的道長酿箭。 經(jīng)常有香客問我,道長趾娃,這世上最難降的妖魔是什么缭嫡? 我笑而不...
    開封第一講書人閱讀 58,976評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮抬闷,結(jié)果婚禮上妇蛀,老公的妹妹穿的比我還像新娘。我一直安慰自己笤成,他們只是感情好评架,可當(dāng)我...
    茶點故事閱讀 67,999評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著炕泳,像睡著了一般纵诞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上培遵,一...
    開封第一講書人閱讀 51,775評論 1 307
  • 那天浙芙,我揣著相機與錄音,去河邊找鬼籽腕。 笑死嗡呼,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的皇耗。 我是一名探鬼主播南窗,決...
    沈念sama閱讀 40,474評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼郎楼!你這毒婦竟也來了矾瘾?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,359評論 0 276
  • 序言:老撾萬榮一對情侶失蹤箭启,失蹤者是張志新(化名)和其女友劉穎壕翩,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體傅寡,經(jīng)...
    沈念sama閱讀 45,854評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡放妈,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,007評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了荐操。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片芜抒。...
    茶點故事閱讀 40,146評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖托启,靈堂內(nèi)的尸體忽然破棺而出宅倒,到底是詐尸還是另有隱情,我是刑警寧澤屯耸,帶...
    沈念sama閱讀 35,826評論 5 346
  • 正文 年R本政府宣布拐迁,位于F島的核電站蹭劈,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏线召。R本人自食惡果不足惜铺韧,卻給世界環(huán)境...
    茶點故事閱讀 41,484評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望缓淹。 院中可真熱鬧哈打,春花似錦、人聲如沸讯壶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽伏蚊。三九已至罢维,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間丙挽,已是汗流浹背肺孵。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留颜阐,地道東北人平窘。 一個月前我還...
    沈念sama閱讀 48,420評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像凳怨,于是被迫代替她去往敵國和親瑰艘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,107評論 2 356