• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于SSRF和XXE漏洞的內(nèi)網(wǎng)攻擊技術(shù)研究

      2021-12-14 11:08:02方欣劉占豐
      關(guān)鍵詞:內(nèi)網(wǎng)漏洞端口

      ◆方欣 劉占豐

      基于SSRF和XXE漏洞的內(nèi)網(wǎng)攻擊技術(shù)研究

      ◆方欣1劉占豐2

      (1.長春職業(yè)技術(shù)學(xué)院 吉林 130000;2.吉林信息安全測評中心 吉林 130000)

      SSRF(服務(wù)器端請求偽造)漏洞和XXE(XML外部實(shí)體注入)漏洞是近幾年較新的WEB應(yīng)用漏洞,不同于傳統(tǒng)的SQL注入、XSS、文件上傳等漏洞側(cè)重于外網(wǎng)攻擊,SSRF漏洞和XXE漏洞主要針對內(nèi)網(wǎng)進(jìn)行攻擊。惡意攻擊者利用兩種漏洞對WEB端的某些功能未進(jìn)行嚴(yán)格過濾的缺陷,突破外網(wǎng)無法訪問內(nèi)部網(wǎng)絡(luò)的限制,對內(nèi)網(wǎng)服務(wù)器進(jìn)行端口探測、讀取文件、攻擊內(nèi)網(wǎng)應(yīng)用、執(zhí)行系統(tǒng)命令等操作,嚴(yán)重威脅內(nèi)網(wǎng)安全。本文詳細(xì)闡述了SSRF漏洞和XXE漏洞的原理和利用方法,分析了兩種漏洞對內(nèi)網(wǎng)產(chǎn)生的危害,并提出了兩種漏洞的防御方法。

      SSRF漏洞;XXE漏洞;內(nèi)網(wǎng)攻擊;WEB安全

      近年來,重大網(wǎng)絡(luò)安全事故頻發(fā),2013年的斯諾登事件和2017年的永恒之藍(lán)勒索病毒的暴發(fā),引發(fā)了全世界對互聯(lián)網(wǎng)高度發(fā)展時期信息泄露的擔(dān)憂和網(wǎng)絡(luò)安全事件的恐慌。在各種網(wǎng)絡(luò)安全事件中,WEB安全問題尤為突出,并受到各個網(wǎng)絡(luò)安全公司和網(wǎng)站管理人員的高度關(guān)注,根據(jù)《OWASP Top 10 2017》顯示,SSRF漏洞和XXE漏洞均為排名靠前的高危安全漏洞,一旦被惡意攻擊者利用,便會對整個內(nèi)網(wǎng)造成嚴(yán)重的安全威脅[1]。因此,本文對SSRF漏洞和XXE漏洞的攻擊方式進(jìn)行分析,研究其防御方法,以提高網(wǎng)站維護(hù)人員的安全防御能力。

      1 SSRF和XXE漏洞介紹

      1.1 SSRF漏洞及其成因

      SSRF即為服務(wù)器端請求偽造(Server-Side Request Forge),黑客可以利用SSRF漏洞對服務(wù)器發(fā)起偽造的請求,以達(dá)到訪問內(nèi)網(wǎng)數(shù)據(jù)的目的,并進(jìn)行內(nèi)網(wǎng)漏洞利用或內(nèi)網(wǎng)信息探測[2]。

      WEB應(yīng)用如果對訪問的地址沒有進(jìn)行過濾或過濾的不嚴(yán),便會導(dǎo)致WEB應(yīng)用能夠訪問任意的URL地址,黑客通過構(gòu)造出惡意的URL鏈接,可利用服務(wù)器端請求偽造漏洞進(jìn)行多種類型的內(nèi)網(wǎng)攻擊。黑客可對內(nèi)網(wǎng)的應(yīng)用程序(Redis、Jboss等)進(jìn)行攻擊;可以使用file協(xié)議讀取內(nèi)網(wǎng)服務(wù)器的文件;可獲取內(nèi)網(wǎng)主機(jī)的各種指紋信息和端口信息,也可以對內(nèi)網(wǎng)程序造成溢出。

      1.2 XXE漏洞介紹

      XXE即XML外部實(shí)體注入(XML External Entity),XXE漏洞產(chǎn)生的原因是由于WEB應(yīng)用在解析XML時,沒有對外部實(shí)體的加載進(jìn)行嚴(yán)格地過濾,這樣便加載了帶有payload的外部文件,因而會造成內(nèi)網(wǎng)應(yīng)用攻擊、系統(tǒng)文件讀取、內(nèi)網(wǎng)掃描、命令執(zhí)行等情況。

      1.3 XML介紹

      可擴(kuò)展標(biāo)記語言(EXtensible Markup Language,XML)可以結(jié)構(gòu)化傳輸和存儲信息,XML文檔結(jié)構(gòu)包括XML聲明、DTD文檔類型定義、文檔元素這三個部分[3]。XML文檔結(jié)構(gòu)如圖1所示。

      DTD(Document Type Definition)包括基礎(chǔ)語法、內(nèi)部定義、外部文檔引用三個部分。

      (1)DTD基礎(chǔ)語法

      XML中元素定義的基礎(chǔ)語法為:。

      (2)內(nèi)部定義

      將文檔類型定義直接放在XML文檔中稱之為內(nèi)部定義。

      (3)外部文檔引用

      文檔類型定義的內(nèi)容也可以保存為單獨(dú)的DTD文檔。

      1)DTD文檔在本地

      例如:

      2)DTD文檔在公共網(wǎng)絡(luò)上

      例如:

      圖1 XML文檔結(jié)構(gòu)

      2 SSRF和XXE漏洞分析

      2.1 SSRF漏洞分析

      SSRF漏洞示例代碼如圖2所示。

      圖2 SSRF漏洞代碼

      代碼中的curl_exec函數(shù)負(fù)責(zé)請求傳入的URL,然后將請求的結(jié)果返回。正常情況下,url參數(shù)傳入http://192.168.1.1/ssrftest/ssrf.txt,curl_exec函數(shù)訪問192.168.1.1/ssrftest/ssrf.txt,顯示”SSRF測試信息”,但是傳入的url參數(shù)沒有經(jīng)過嚴(yán)格過濾,這樣就可能會造成SSRF服務(wù)端請求偽造。

      2.2 XXE漏洞分析

      XXE漏洞主要是因?yàn)閃EB應(yīng)用對外部實(shí)體的加載沒有進(jìn)行嚴(yán)格地過濾,可能造成內(nèi)網(wǎng)掃描和內(nèi)網(wǎng)應(yīng)用攻擊,XXE漏洞示例代碼如圖3所示。

      圖3 XXE漏洞代碼

      以上代碼中,file_get_contents函數(shù)讀取了php://input傳入的數(shù)據(jù),但是傳入的數(shù)據(jù)沒有經(jīng)過任何過濾,直接在loadXML函數(shù)中進(jìn)行了調(diào)用并通過echo函數(shù)輸出了$username的結(jié)果,這樣就導(dǎo)致了XXE漏洞的產(chǎn)生。

      3 利用SSRF漏洞對內(nèi)網(wǎng)進(jìn)行攻擊

      3.1 端口探測

      url參數(shù)沒有經(jīng)過嚴(yán)格過濾就可以構(gòu)造任意的url進(jìn)行SSRF漏洞利用,比如可以通過http://192.168.1.100:3306來探測內(nèi)網(wǎng)服務(wù)器(IP地址為192.168.1.100)是否開啟3306端口。輸入http://192.168.1.1/ssrftest/1.php?url=http://192.168.1.100:3306發(fā)現(xiàn)返回了數(shù)據(jù)庫的版本信息,說明內(nèi)網(wǎng)服務(wù)器確實(shí)開啟了3306端口。若沒有數(shù)據(jù)返回或返回時間延遲較大,就說明3306端口沒有開放。

      3.2 讀取文件

      SSRF漏洞可以通過file協(xié)議嘗試讀取內(nèi)網(wǎng)服務(wù)器的常見敏感文件,比如/etc/passwd文件。輸入http://192.168.1.1/ssrftest/1.php?url=file:///etc/passwd,返回了目標(biāo)服務(wù)器的用戶信息。

      3.3 內(nèi)網(wǎng)應(yīng)用攻擊

      SSRF漏洞可以對內(nèi)部網(wǎng)絡(luò)具有命令執(zhí)行漏洞的WEB應(yīng)用發(fā)起攻擊,例如可利用此漏洞攻擊存在Jboss未授權(quán)訪問漏洞的WEB應(yīng)用,攻擊過程如下。

      (1)信息探測。利用SSRF漏洞對內(nèi)部網(wǎng)絡(luò)進(jìn)行掃描,如存在具有此漏洞的服務(wù)器,便可探測到開啟了JBoss服務(wù)的被攻擊機(jī)。

      (2)訪問jmx控制臺。嘗試訪問JBoss的jmx控制臺,輸入以下測試語句:http://192.168.1.1/ssrftest/1.php?url=http://192.168.1.100:3306/jmx-console/,發(fā)現(xiàn)存在jmx控制臺未授權(quán)訪問漏洞,可以通過jboss.deployment接口部署Web木馬。

      (3)部署木馬。通過jboss.deployment接口部署Web木馬,在本地搭建的測試環(huán)境抓包,構(gòu)造payload,然后通過SSRF發(fā)送payload,攻擊內(nèi)網(wǎng)應(yīng)用。

      (4)獲得Webshell。利用SSRF漏洞發(fā)起payload攻擊,發(fā)現(xiàn)已成功獲得Webshell。

      (5)執(zhí)行命令。利用上傳的木馬,可以執(zhí)行各種系統(tǒng)命令,如whoami。

      4 利用XXE漏洞對內(nèi)網(wǎng)進(jìn)行攻擊

      4.1 內(nèi)網(wǎng)探測

      利用XXE漏洞進(jìn)行內(nèi)網(wǎng)探測,如果端口開啟,請求返回的時間會很快;如果端口關(guān)閉,請求返回的時間會很慢。探測22端口是否開啟的payload如下:

      ]>

      test

      若在執(zhí)行完成后,頁面很快返回,并有SSH的banner信息,說明22端口開啟;若在執(zhí)行完成后,頁面返回很慢,并且有以下報錯信息“failedtoopenstream:Connection refused”,說明端口未開啟。

      4.2 文件讀取

      通過加載外部實(shí)體,利用file://、php://等偽協(xié)議讀取本地文件。file://偽協(xié)議payload如下。

      ]>

      test

      通過POST方法提交payload,讀取/etc/passwd文件的內(nèi)容。但是利用file://偽協(xié)議無法讀取PHP文件的內(nèi)容,因?yàn)樽x取的內(nèi)容會被解析執(zhí)行,看不到源碼??梢岳胮hp://偽協(xié)議對文件內(nèi)容進(jìn)行Base64編碼,這樣就可以讀到Base64編碼后的源碼,然后再通過Base64解碼就能獲得源碼數(shù)據(jù)。

      4.3內(nèi)網(wǎng)應(yīng)用攻擊

      通過XXE漏洞可對內(nèi)網(wǎng)應(yīng)用程序進(jìn)行攻擊,例如利用如下攻擊代碼對內(nèi)網(wǎng)存在jmx控制臺未授權(quán)訪問漏洞的Jboss進(jìn)行攻擊。

      &name=jboss.deployment:type=DeploymentScanner,flavor=URL&methodIndex=7&arg0=http://192.168.1.1/cmd.war">]>

      test

      5 SSRF和XXE漏洞修復(fù)

      針對SSRF漏洞的修復(fù)方法包括:對返回的錯誤信息進(jìn)行設(shè)置,使返回的信息保持一致;對訪問服務(wù)器的端口和IP進(jìn)行限制,禁止外網(wǎng)服務(wù)器訪問內(nèi)網(wǎng)地址;在防火墻上設(shè)置細(xì)粒度的協(xié)議過濾,內(nèi)網(wǎng)服務(wù)器僅開放http等必要的協(xié)議對其可以訪問[4]。針對XXE漏洞的修復(fù)方法包括:對用戶所提交的數(shù)據(jù)進(jìn)行嚴(yán)格過濾,如PUBLIC、SYSTEM、ENTITY等敏感詞;將libxml_disable_entity_loader設(shè)置為true,禁用外部實(shí)體[5]。

      6 結(jié)束語

      本文研究了SSRF漏洞和XXE漏洞的基本原理,對兩種漏洞的攻擊方式進(jìn)行分析和驗(yàn)證,并提出了相應(yīng)的防御方法。相比于主要攻擊外網(wǎng)的SQL注入、文件上傳、跨站腳本等漏洞,SSRF漏洞和XXE漏洞不僅攻擊WEB應(yīng)用本身,更能對整個內(nèi)網(wǎng)造成嚴(yán)重的安全威脅。因此,WEB應(yīng)用開發(fā)者和網(wǎng)站安全維護(hù)人員應(yīng)時刻堅持零信任安全理念,不僅需要對外網(wǎng)攻擊加強(qiáng)防護(hù),同時也應(yīng)嚴(yán)格限制內(nèi)網(wǎng)服務(wù)器的訪問權(quán)限、禁用外部實(shí)體、對用戶提交的數(shù)據(jù)嚴(yán)格過濾,以提高WEB應(yīng)用的安全防護(hù)水平。

      [1]印鴻吉.采用圖遍歷算法的服務(wù)端請求偽造漏洞檢測[J].計算機(jī)工程與應(yīng)用,2020(19):114-119.

      [2]何金棟.Weblogic_SSRF漏洞檢測系統(tǒng)的設(shè)計和實(shí)現(xiàn)[J].通訊世界,2017(21):44-46.

      [3]應(yīng)宗浩.XXE漏洞及其防御策略研究[J].科技風(fēng),2018(19):54.

      [4]張軍.SSRF漏洞檢測、利用及防范[J].通信與信息技術(shù),2015(03):69-71.

      [5]邱永哲.XXE漏洞攻擊與防御研究[J].無線互聯(lián)科技,2018(06):34-36.

      全國高等院校計算機(jī)基礎(chǔ)教育研究會計算機(jī)基礎(chǔ)教育教學(xué)研究項(xiàng)目(2021-AFCEC-501);長春市教育科學(xué)2020年度規(guī)劃課題(JKBLX-2020218)

      猜你喜歡
      內(nèi)網(wǎng)漏洞端口
      漏洞
      一種端口故障的解決方案
      端口阻塞與優(yōu)先級
      企業(yè)內(nèi)網(wǎng)中的數(shù)據(jù)隔離與交換技術(shù)探索
      科技資訊(2017年5期)2017-04-12 15:24:45
      地下車庫柱網(wǎng)布置設(shè)計思路
      山西建筑(2016年20期)2016-11-22 03:10:21
      QoS技術(shù)在企業(yè)內(nèi)網(wǎng)實(shí)踐探索
      科技資訊(2016年19期)2016-11-15 08:17:44
      三明:“兩票制”堵住加價漏洞
      漏洞在哪兒
      兒童時代(2016年6期)2016-09-14 04:54:43
      高鐵急救應(yīng)補(bǔ)齊三漏洞
      初識電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      依安县| 封开县| 于田县| 金秀| 突泉县| 肃南| 长春市| 随州市| 周至县| 社会| 泾源县| 河西区| 新巴尔虎右旗| 会同县| 梓潼县| 万山特区| 皋兰县| 江城| 洛南县| 银川市| 临城县| 天气| 岳池县| 九龙城区| 玉龙| 三明市| 运城市| 疏勒县| 弥勒县| 九江县| 收藏| 永顺县| 启东市| 西贡区| 梧州市| 泗洪县| 红河县| 山东省| 康马县| 平原县| 岳普湖县|