<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Jack Jiang

    我的最新工程MobileIMSDK:http://git.oschina.net/jackjiang/MobileIMSDK
    posts - 494, comments - 13, trackbacks - 0, articles - 1

    本文由vivo互聯(lián)網(wǎng)技術(shù)Peng Qiankun分享,原題“vivo 網(wǎng)絡(luò)端口安全建設(shè)技術(shù)實(shí)踐”,本文進(jìn)行了排版和內(nèi)容優(yōu)化等。

    1、引言

    隨著互聯(lián)網(wǎng)業(yè)務(wù)的快速發(fā)展,網(wǎng)絡(luò)攻擊的頻率和威脅性也在不斷增加,端口是互聯(lián)網(wǎng)絡(luò)通信中的門戶,它是數(shù)據(jù)進(jìn)出的必經(jīng)之路,因此端口安全也逐漸成為了企業(yè)內(nèi)網(wǎng)的重要防線之一。

    然而網(wǎng)絡(luò)端口因其數(shù)量龐大、端口開放和關(guān)閉的影響評估難度大,業(yè)務(wù)影響程度高、以及異常識別技術(shù)復(fù)雜度高等特點(diǎn)給網(wǎng)絡(luò)端口安全防護(hù)帶來了一定的挑戰(zhàn),如何對端口風(fēng)險進(jìn)行有效治理幾乎是每個企業(yè)安全團(tuán)隊在攻擊面管理工作中持續(xù)探索的重點(diǎn)項(xiàng)。

     
     技術(shù)交流:

    - 移動端IM開發(fā)入門文章:《新手入門一篇就夠:從零開發(fā)移動端IM

    - 開源IM框架源碼:https://github.com/JackJiang2011/MobileIMSDK備用地址點(diǎn)此

    (本文已同步發(fā)布于:http://www.52im.net/thread-4644-1-1.html

    2、系列文章

    本文是IM通訊安全知識系列文章中的第14篇,此系列總目錄如下:

    即時通訊安全篇(一):正確地理解和使用Android端加密算法

    即時通訊安全篇(二):探討組合加密算法在IM中的應(yīng)用

    即時通訊安全篇(三):常用加解密算法與通訊安全講解

    即時通訊安全篇(四):實(shí)例分析Android中密鑰硬編碼的風(fēng)險

    即時通訊安全篇(五):對稱加密技術(shù)在Android平臺上的應(yīng)用實(shí)踐

    即時通訊安全篇(六):非對稱加密技術(shù)的原理與應(yīng)用實(shí)踐

    即時通訊安全篇(七):用JWT技術(shù)解決IM系統(tǒng)Socket長連接的身份認(rèn)證痛點(diǎn)

    即時通訊安全篇(八):如果這樣來理解HTTPS原理,一篇就夠了

    即時通訊安全篇(九):你知道,HTTPS用的是對稱加密還是非對稱加密?

    即時通訊安全篇(十):為什么要用HTTPS?深入淺出,探密短連接的安全性

    即時通訊安全篇(十一):IM聊天系統(tǒng)安全手段之通信連接層加密技術(shù)

    即時通訊安全篇(十二):IM聊天系統(tǒng)安全手段之傳輸內(nèi)容端到端加密技術(shù)

    即時通訊安全篇(十三):信創(chuàng)必學(xué),一文讀懂什么是國密算法

    即時通訊安全篇(十四):網(wǎng)絡(luò)端口的安全防護(hù)技術(shù)實(shí)踐》(* 本文

    3、認(rèn)識網(wǎng)絡(luò)端口

    在網(wǎng)絡(luò)空間中,標(biāo)記一個服務(wù)資源實(shí)體最基本的兩個要素就是IP和邏輯端口,二者構(gòu)建服務(wù)資源實(shí)體的唯一標(biāo)志符。

    3.1常見的端口分布劃分

    1)知名端口(Well-Known Ports):知名端口即眾所周知的端口號,范圍從0到1023,這些端口號一般固定分配給一些服務(wù)。比如21端口分配給FTP服務(wù),25端口分配給SMTP(簡單郵件傳輸協(xié)議)服務(wù),80端口分配給HTTP服務(wù),135端口分配給RPC(遠(yuǎn)程過程調(diào)用)服務(wù)等等。

    2)動態(tài)端口:動態(tài)端口的范圍從1024到65535,這些端口號一般不固定分配給某個服務(wù),也就是說許多服務(wù)都可以使用這些端口。只要運(yùn)行的程序向系統(tǒng)提出訪問網(wǎng)絡(luò)的申請,那么系統(tǒng)就可以從這些端口號中分配一個供該程序使用。比如1024端口就是分配給第一個向系統(tǒng)發(fā)出申請的程序。在關(guān)閉程序進(jìn)程后,就會釋放所占用的端口號。

    3.2另外,端口還會按照協(xié)議類型劃分

    1)TCP端口:即傳輸控制協(xié)議端口,需要在客戶端和服務(wù)器之間建立連接,這樣可以提供可靠的數(shù)據(jù)傳輸。常見的包括FTP服務(wù)的21端口,Telnet服務(wù)的23端口,SMTP服務(wù)的25端口,以及HTTP服務(wù)的80端口等等。

    2)UDP端口:即用戶數(shù)據(jù)包協(xié)議端口,無需在客戶端和服務(wù)器之間建立連接,安全性得不到保障。常見的有DNS服務(wù)的53端口,SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)服務(wù)的161端口,QQ使用的8000和4000端口等等。

    3)常用的網(wǎng)絡(luò)端口映射表:

    ▲ 常用網(wǎng)絡(luò)端口映射表

    PS:更多常見端口請見《常見TCP/UDP端口號大全》。

    4、端口被攻擊方式1:基于傳輸層的資源耗盡攻擊(DDoS)

    該攻擊是非常有效的利用小流量沖擊大帶寬的攻擊手段,也是十分常見的攻擊方式。其本質(zhì)還是利用TCP協(xié)議的鏈接建立(三次握手)及鏈接關(guān)閉(四次揮手)階段機(jī)制漏洞進(jìn)行攻擊,鏈接資源耗盡攻擊方式主要分為以下幾個類。

    1) SYN flood:

    SYN flood是基于TCP協(xié)議產(chǎn)生的,它利用三次握手機(jī)制,制造多個半連接,消耗服務(wù)器的連接數(shù)。

     

     

     

    ▲ SYN flood 示意圖

    攻擊者偽造源IP地址向服務(wù)器發(fā)送大量的SYN報文,請求建立三次握手。由于發(fā)送源IP是偽造的,所以服務(wù)器回應(yīng)了SYN-ACK報文后,源IP并不會再繼續(xù)回應(yīng)ACK報文進(jìn)行確認(rèn)。這樣服務(wù)器就會維持一個龐大的等待列表,不停地重試發(fā)送SYN-ACK報文,同時占用著大量的資源無法釋放。

    這就導(dǎo)致,被攻擊的服務(wù)器被惡意半連接占滿,不再接受新的SYN請求,而合法用戶無法完成三次握手建立TCP連接。另外,隨著對抗技術(shù)的持續(xù)演進(jìn),攻擊者通過肉雞或Ddos服務(wù)發(fā)起大規(guī)模分布式真實(shí)IP集中進(jìn)行資源耗盡攻擊,此類攻擊成功率更高。

    2)SYN-ACK Flood:

    通信雙方通過三次握手建立一個TCP連接的過程中,SYN-ACK報文出現(xiàn)在第二次握手中,是用來確認(rèn)第一次握手的。

    一方收到SYN-ACK報文后,首先會判斷該報文是不是屬于三次握手范疇之內(nèi)的報文。如果都沒有進(jìn)行第一次握手就直接收到了第二次握手的報文,那么就會向?qū)Ψ桨l(fā)送RST報文,告知對方其發(fā)來報文有誤,不能建立連接。

    SYN-ACK Flood攻擊正是利用了這一點(diǎn),攻擊者利用工具或者操縱僵尸主機(jī),向目標(biāo)服務(wù)器發(fā)送大量的SYN-ACK報文,這些報文都屬于憑空出現(xiàn)的第二次握手報文,服務(wù)器忙于回復(fù)RST報文,導(dǎo)致資源耗盡,無法響應(yīng)正常的請求。

    3)ACK Flood:

    在TCP三次握手的過程中,ACK報文出現(xiàn)在第三次握手中,用來確認(rèn)第二次握手中的SYN-ACK報文。ACK Flood攻擊指的是攻擊者利用工具或者操縱僵尸主機(jī),向目標(biāo)服務(wù)器發(fā)送大量的ACK報文,服務(wù)器忙于回復(fù)這些憑空出現(xiàn)的第三次握手報文,導(dǎo)致資源耗盡,無法響應(yīng)正常的請求。

    4)FIN/RST Flood:

    TCP交互過程中還存在FIN和RST報文,F(xiàn)IN報文用來關(guān)閉TCP連接,RST報文用來斷開TCP連接。這兩種報文也可能會被攻擊者利用來發(fā)起DDoS攻擊,導(dǎo)致目標(biāo)服務(wù)器資源耗盡,無法響應(yīng)正常的請求。

    5)TCP connection Flood:

    TCP是面向連接的協(xié)議,通信雙方必須保持連接狀態(tài),并且通過確認(rèn)、重傳、滑動窗口等機(jī)制,保證數(shù)據(jù)傳輸?shù)目煽啃院头€(wěn)定性。

    攻擊者利用TCP協(xié)議的上述特點(diǎn),在TCP連接上做文章,利用TCP連接來消耗被攻擊目標(biāo)的系統(tǒng)資源。例如,攻擊者與被攻擊目標(biāo)完成三次握手后,立刻發(fā)送FIN或RST報文,釋放本端連接,同時快速發(fā)起新的連接,以此來消耗被攻擊目標(biāo)的系統(tǒng)資源,或者攻擊者與被攻擊目標(biāo)完成三次握手后,發(fā)送很少的報文來維持連接狀態(tài),通過這種異常的TCP連接來消耗被攻擊目標(biāo)的系統(tǒng)資源。

    5、端口被攻擊方式2:基于應(yīng)用層的資源耗盡攻擊(cc)

    CC攻擊的原理就是攻擊者控制某些主機(jī)不停地發(fā)大量數(shù)據(jù)包給對方服務(wù)器造成服務(wù)器資源耗盡,一直到宕機(jī)崩潰。

    CC主要是用來消耗服務(wù)器資源的,每個人都有這樣的體驗(yàn):當(dāng)一個網(wǎng)頁訪問的人數(shù)特別多的時候,打開網(wǎng)頁就慢了,CC就是模擬多個用戶(多少線程就是多少用戶)不停地進(jìn)行訪問那些需要大量數(shù)據(jù)操作(就是需要大量CPU時間)的頁面,造成服務(wù)器資源的浪費(fèi),CPU長時間處于100%,永遠(yuǎn)都有處理不完的連接直至就網(wǎng)絡(luò)擁塞,正常的訪問被中止。

    以下介紹一些cc攻擊的常用變種。

    1)基于HTTP-header慢速cc攻擊:

    Web應(yīng)用在處理HTTP請求之前都要先接收完所有的HTTP頭部,因?yàn)镠TTP頭部中包含了一些Web應(yīng)用可能用到的重要的信息。

    攻擊者利用這點(diǎn),發(fā)起一個HTTP請求,一直不停的發(fā)送HTTP頭部,消耗服務(wù)器的連接和內(nèi)存資源。抓包數(shù)據(jù)可見,攻擊客戶端與服務(wù)器建立TCP連接后,每30秒才向服務(wù)器發(fā)送一個HTTP頭部,而Web服務(wù)器再沒接收到2個連續(xù)的\r\n時,會認(rèn)為客戶端沒有發(fā)送完頭部,而持續(xù)的等等客戶端發(fā)送數(shù)據(jù)。

    2)基于HTTP-body慢速cc攻擊:

    攻擊者發(fā)送一個HTTP POST請求,該請求的Content-Length頭部值很大,使得Web服務(wù)器或代理認(rèn)為客戶端要發(fā)送很大的數(shù)據(jù)。

    服務(wù)器會保持連接準(zhǔn)備接收數(shù)據(jù),但攻擊客戶端每次只發(fā)送很少量的數(shù)據(jù),使該連接一直保持存活,消耗服務(wù)器的連接和內(nèi)存資源。抓包數(shù)據(jù)可見,攻擊客戶端與服務(wù)器建立TCP連接后,發(fā)送了完整的HTTP頭部,POST方法帶有較大的Content-Length,然后每10s發(fā)送一次隨機(jī)的參數(shù)。服務(wù)器因?yàn)闆]有接收到相應(yīng)Content-Length的body,而持續(xù)的等待客戶端發(fā)送數(shù)據(jù)。

    3)基于HTTP-read慢速cc攻擊:

    客戶端與服務(wù)器建立連接并發(fā)送了一個HTTP請求,客戶端發(fā)送完整的請求給服務(wù)器端,然后一直保持這個連接,以很低的速度讀取Response,比如很長一段時間客戶端不讀取任何數(shù)據(jù),通過發(fā)送Zero Window到服務(wù)器,讓服務(wù)器誤以為客戶端很忙,直到連接快超時前才讀取一個字節(jié),以消耗服務(wù)器的連接和內(nèi)存資源。

    抓包數(shù)據(jù)可見,客戶端把數(shù)據(jù)發(fā)給服務(wù)器后,服務(wù)器發(fā)送響應(yīng)時,收到了客戶端的ZeroWindow提示(表示自己沒有緩沖區(qū)用于接收數(shù)據(jù)),服務(wù)器不得不持續(xù)的向客戶端發(fā)出ZeroWindowProbe包,詢問客戶端是否可以接收數(shù)據(jù)。

    剖析其原理,本質(zhì)上還是對任何一個開放了HTTP訪問的服務(wù)器HTTP服務(wù)器,先建立了一個連接,指定一個比較大的content-length,然后以非常低的速度發(fā)包,比如1-10s發(fā)一個字節(jié),然后維持住這個連接不斷開。如果客戶端持續(xù)建立這樣的連接,那么服務(wù)器上可用的連接將一點(diǎn)一點(diǎn)被占滿,從而導(dǎo)致拒絕服務(wù)。

    6、端口被攻擊方式3:基于端口發(fā)起的滲透測試

    IP和端口作為應(yīng)用暴露在公網(wǎng)的唯一入口,攻擊者通常發(fā)起滲透測試的起點(diǎn)便是通過掃描目標(biāo)IP上的開放端口來發(fā)現(xiàn)系統(tǒng)的漏洞、薄弱點(diǎn)或安全隱患。

    往往服務(wù)器系統(tǒng)本身或引入的應(yīng)用服務(wù)就具備一定的脆弱性,攻擊者獲取到目標(biāo)服務(wù)器的端口列表后會逐一去比對自己的武器庫進(jìn)行漏洞利用嘗試。

    以下是整理的常見端口利用清單及攻擊利用方式:

     

    7、端口被攻擊的現(xiàn)實(shí)案例

    7.1Equifax數(shù)據(jù)泄露案

    Equifax數(shù)據(jù)泄露案落幕:七億賠款,索賠期限延長四年。

    ▲ EQUIFAX (圖片來源:globalnews.ca)

    2017年9月,Equifax系統(tǒng)遭到黑客攻擊,導(dǎo)致超過1.45億美國消費(fèi)者的個人信息,以及1520萬英國居民的記錄和8000名加拿大用戶的數(shù)據(jù)遭到泄露,其中包括姓名、地址、出生日期、身份證號、護(hù)照、駕照、信用卡等信息。

    事件曝光后,Equifax股票暴跌30%,相當(dāng)于蒸發(fā)掉50億美元市值,成為史上罕見大型數(shù)據(jù)泄露事件之一。

    2018年12月,美國國會眾議院的政府改革暨監(jiān)督委員會發(fā)布報告指出,因Equifax公司組織架構(gòu)的缺陷,導(dǎo)致公司部門間的溝通失效,從而致使大量的關(guān)鍵系統(tǒng)補(bǔ)丁沒有被及時開發(fā),其中包括一個超19個月未做更新的漏洞。

    最終,黑客對Equifax進(jìn)行了長達(dá)76天的攻擊,先后265次從公司獲取未被加密的數(shù)據(jù)。該事件最初是由于Equifax未修補(bǔ)針對Apache Struts的漏洞而導(dǎo)致的,攻擊者利用該漏洞訪問了Equifax的數(shù)據(jù)庫,這個漏洞是通過開放的80端口進(jìn)行攻擊的。

    7.2愛爾蘭國家醫(yī)療保健局?jǐn)?shù)據(jù)泄露事件

    ▲ 愛爾蘭衛(wèi)生部

    愛爾蘭國家醫(yī)療保健局(HSE)是負(fù)責(zé)為愛爾蘭居民提供醫(yī)療保健的機(jī)構(gòu)。在2021年5月,該機(jī)構(gòu)發(fā)生了一起數(shù)據(jù)泄露事件,影響到數(shù)百萬個患者的個人信息。

    該事件起因于攻擊者通過暴露的VPN服務(wù)端口進(jìn)行攻擊,成功登錄了HSE的IT系統(tǒng)。接著,攻擊者開始利用系統(tǒng)漏洞,并最終獲取了HSE服務(wù)器的管理員權(quán)限。

    攻擊者隨后將一個WastedLocker勒索軟件的惡意代碼安裝在服務(wù)器上,并要求贖金以釋放數(shù)據(jù)。

    在攻擊過程中,攻擊者還利用了HSE的Exchange電子郵件系統(tǒng),以及HSE員工用于管理患者信息的軟件系統(tǒng)。這些系統(tǒng)中的漏洞使得攻擊者能夠訪問和竊取大量患者的個人信息,包括姓名、出生日期、地址、電話號碼、診斷信息和病歷等。

    據(jù)稱,該事件涉及到的患者數(shù)量達(dá)到了數(shù)百萬。HSE在發(fā)現(xiàn)事件后,立即關(guān)閉了受影響的系統(tǒng),并采取措施保護(hù)患者數(shù)據(jù)的安全。HSE還與執(zhí)法部門和網(wǎng)絡(luò)安全專家合作,以追查攻擊者的身份和追回數(shù)據(jù)。截至目前,尚未有人或組織宣稱對此次攻擊負(fù)責(zé)。

    8、端口風(fēng)險安全防護(hù)思路

    無論是Flood還是cc防護(hù),一般都是借助一些安全設(shè)備及安全設(shè)備提供的策略定制能力,流量級的可以依靠運(yùn)營商提供的抗D服務(wù),如云盾、云堤,流量清洗服務(wù)等,面向應(yīng)用層的攻擊可以借助防火墻,WAF,NIDS等安全設(shè)備/節(jié)點(diǎn)提供的能力。

    無論是借助廠商還是自身建設(shè)抗D能力,都需要摸清企業(yè)所面臨的資源耗盡風(fēng)險,一方面理清基礎(chǔ)架構(gòu)的脆弱點(diǎn),治理脆弱點(diǎn)。另一方面需要熟悉攻擊利用原理,制定針對性策略來進(jìn)行異常檢測及攻擊緩解。

    這里簡述一些對抗思路:例如上文提到SYN Flood攻擊,其本質(zhì)上是利用TCP建立鏈接的機(jī)制漏洞,只要持續(xù)發(fā)送建立鏈接請求,服務(wù)端就會進(jìn)行響應(yīng)同時在連接池里記錄一條鏈接,那么依據(jù)該原理,防護(hù)思路就很明確了。

    1)對發(fā)起源進(jìn)行主動認(rèn)證:

    ▲ 主動認(rèn)證示意圖

    如上圖所示:

    • 1)當(dāng)連續(xù)一段時間內(nèi)去往目標(biāo)服務(wù)器的SYN報文超過告警閾值后,抗DDoS設(shè)備啟動源認(rèn)證機(jī)制。源認(rèn)證機(jī)制啟動后,抗DDoS設(shè)備將會代替服務(wù)器向客戶端響應(yīng)帶有正確確認(rèn)序號的SYN-ACK報文;
    • 2)如果這個源是虛假源,是一個不存在的地址或者是存在的地址但卻沒有發(fā)送過SYN報文,不會做出任何響應(yīng);
    • 3)如果這個源是真實(shí)客戶端,則會向服務(wù)器發(fā)送ACK報文,對收到的SYN-ACK報文進(jìn)行確認(rèn)。抗DDoS設(shè)備收到ACK報文后,將該客戶端的源IP地址加入白名單。同時,抗DDoS設(shè)備會向客戶端發(fā)送RST報文,要求重新建立連接;
    • 4)后續(xù)這個客戶端發(fā)出的SYN報文命中白名單直接通過。

    2)首包丟棄:

    ▲ 首包丟棄示意圖

    TCP的可靠性保證除了面向連接(三次/四次握手)之外,還體現(xiàn)在超時與重傳機(jī)制。TCP協(xié)議規(guī)范要求發(fā)送端每發(fā)送一個報文,就啟動一個定時器并等待確認(rèn)信息;如果在定時器超時前還沒有收到確認(rèn),就會重傳報文。

    首包丟棄功能就是利用了TCP的超時重傳機(jī)制,Anti-DDoS系統(tǒng)對收到的第一個SYN報文直接丟棄,然后觀察客戶端是否重傳。如果客戶端重傳了SYN報文,再對重傳的SYN報文進(jìn)行源認(rèn)證,即反彈SYN-ACK報文,這樣就可以大大減少反彈報文的數(shù)量。

    3)混合使用,效果更佳:

    實(shí)際部署時,一般將首包丟棄和源認(rèn)證結(jié)合使用。防御SYN Flood攻擊時,先通過首包丟棄功能來過濾掉一些攻擊報文,當(dāng)重傳的SYN報文超過告警閾值后,再啟動源認(rèn)證。這樣就能夠減少反彈的SYN-ACK報文的數(shù)量,緩解網(wǎng)絡(luò)擁塞情況。對于虛假源攻擊,尤其是對于不斷變換源IP和源端口的虛假源攻擊,可以達(dá)到最佳防御效果。

    4)針對連接耗盡場景,其防御思路可以總結(jié)為以下內(nèi)容:

    針對此攻擊會耗盡服務(wù)器的TCP連接資源的特點(diǎn),對目的IP地址的新建連接速率和并發(fā)連接數(shù)分布進(jìn)行統(tǒng)計,當(dāng)新建連接速率或并發(fā)連接數(shù)大于閾值時,則觸發(fā)對源IP地址的相應(yīng)檢查,當(dāng)檢查發(fā)現(xiàn)異常時,將異常源IP地址加入黑名單,切斷其TCP流量。

    具體是:

    • 1)源IP地址新建連接速率檢查:啟動源IP地址新建連接速率檢查后,如果某個源IP地址在檢查周期內(nèi)發(fā)起的TCP新建連接數(shù)大于閾值,則將該源IP地址判定為攻擊源;
    • 2)源IP地址并發(fā)連接數(shù)檢查:啟動源IP地址并發(fā)連接數(shù)檢查后,如果某個源IP地址的TCP并發(fā)連接數(shù)大于閾值,則將該源IP地址判定為攻擊源;
    • 3)慢速連接速率檢查:啟動慢速連接速率檢查后,統(tǒng)計同一源IP地址對同一目的IP地址的連接次數(shù),在各統(tǒng)計時間間隔內(nèi),如果連續(xù)多次連接數(shù)相同并超過閾值,則判定為TCP慢速連接攻擊;
    • 4)異常會話檢查:如果在檢查周期內(nèi),某個源IP地址發(fā)起的TCP異常會話的連接數(shù)大于閾值時,則將該源IP地址判定為攻擊源。

    判定TCP異常會話依據(jù)如下:

    • 1)空連接檢查:如果在檢查周期內(nèi),在某條TCP連接上通過的報文數(shù)小于閾值,則判定該連接為異常連接;
    • 2)重傳會話檢查:當(dāng)某條TCP連接上重傳報文數(shù)量大于閾值時,則判定該連接為異常連接;
    • 3)慢啟動連接檢查:當(dāng)某條TCP連接上通過的報文窗口小于閾值時,則判定該連接為異常連接;
    • 4)當(dāng)異常會話數(shù)超過一定數(shù)量時,將此源加入黑名單。異常會話數(shù)量可配置。

    同樣的,應(yīng)用層CC攻擊,按照相對應(yīng)的原理進(jìn)行內(nèi)容檢查,這也是一般WAF或NIDS設(shè)備提供的基礎(chǔ)能力,這里就不再累述。

    9、端口風(fēng)險安全防護(hù)實(shí)踐

    9.1概述

    上段內(nèi)容有提到的防護(hù)思路,理解協(xié)議的脆弱性原理再依據(jù)攻擊者的視角進(jìn)行防護(hù)措施的定制,則會有比較清晰的防護(hù)思路和防護(hù)效果。

    因此在端口安全治理實(shí)踐上,我們通過建立常態(tài)化端口發(fā)現(xiàn)機(jī)制以及常態(tài)化的漏洞掃描機(jī)制,將網(wǎng)絡(luò)端口及端口漏洞風(fēng)險進(jìn)行持續(xù)統(tǒng)一治理,同時建立基于流量的異常識別能力豐富基于行為的異常端口檢測能力,再輔以脆弱性管理以及端口生命周期管理(規(guī)范與流程)來形成整個端口安全治理體系。

    9.2建立常態(tài)化的端口發(fā)現(xiàn)機(jī)制

    使用網(wǎng)絡(luò)發(fā)現(xiàn)工具進(jìn)行異常端口識別,設(shè)計思路是首先通過vscheduler中間件觸發(fā)掃描(支持兩種模式:一網(wǎng)段配置表全表網(wǎng)段掃描、二是:指定網(wǎng)段掃描),調(diào)用掃描工具(以nmap為例)進(jìn)行掃描,通過增加兩個異步線程去讀取緩沖區(qū)內(nèi)容以解決緩沖區(qū)擁塞問題,通過異步線程進(jìn)行緩沖區(qū)內(nèi)容讀取以及清理的同時通過錯誤緩沖區(qū)內(nèi)容判斷是否掃描失敗。掃描結(jié)果輸出xml后通過dom4j進(jìn)行解析,再進(jìn)行分批保存,避免大事務(wù)以及減少jvm內(nèi)存占用。最后把文件刪除,釋放存儲空間。

    ▲ 端口掃描架構(gòu)圖

    9.3建立常態(tài)化漏洞掃描機(jī)制

    結(jié)合漏洞掃描工具及端口掃描工具構(gòu)建自動化漏洞掃描平臺,漏掃平臺架構(gòu)設(shè)計思路如下圖。

    ▲ 漏掃平臺架構(gòu)圖

    該系統(tǒng)架構(gòu)的核心功能點(diǎn)包括:資產(chǎn)收集、Web漏洞掃描、依賴包掃描、端口掃描,輔助功能包括:掃描任務(wù)管理、風(fēng)險管理等。

    具體是:

    • 1)資產(chǎn)收集:掃描的目標(biāo)是公司的網(wǎng)絡(luò)資產(chǎn),沒有資產(chǎn)無法進(jìn)行掃描,資產(chǎn)不全面掃描的效果也會打折扣,所以平臺采集了多種途徑進(jìn)行資產(chǎn)的采集,力求做到無遺漏,持續(xù)豐富采集的手段;
    • 2)Web漏洞掃描:用于發(fā)現(xiàn)暴露在公網(wǎng)的站點(diǎn)、URL等Web資源是否存在漏洞;
    • 3)依賴包掃描:用于發(fā)現(xiàn)線上業(yè)務(wù)是否使用了高危的Java依賴包;
    • 4)端口掃描:用于發(fā)現(xiàn)公司服務(wù)器是否對公網(wǎng)開放了高危端口;
    • 5)掃描任務(wù)管理:無論是依賴包掃描、端口掃描,都是通過創(chuàng)建掃描任務(wù)的形式來發(fā)起的,掃描任務(wù)分為立即掃描任務(wù)和定時掃描任務(wù)兩種類型,用戶可以創(chuàng)建立即掃描任務(wù)來一次性執(zhí)行掃描,也可以創(chuàng)建定時任務(wù)來周期性執(zhí)行掃描;
    • 6)風(fēng)險管理:對于掃描出來的Web、依賴包和端口風(fēng)險,系統(tǒng)能夠?qū)ζ涮幚頎顟B(tài)進(jìn)行管理,以便安全工程師對風(fēng)險狀態(tài)進(jìn)行跟蹤和處理;
    • 7)工單管理:對于掃描出來的Web、依賴包和端口風(fēng)險,運(yùn)營人員可對其創(chuàng)建工單,工單會對接到漏洞管理系統(tǒng),通過漏洞管理系統(tǒng)的工單體系來對跟蹤風(fēng)險的處理進(jìn)程。

    常用的漏掃工具:

    • 1)Nmap:Nmap是一款常用的網(wǎng)絡(luò)發(fā)現(xiàn)和安全審計工具,支持多種掃描技術(shù)和掃描選項(xiàng),可以快速掃描本地或遠(yuǎn)程計算機(jī)上的開放端口和服務(wù);
    • 2)Masscan:Masscan是一款高速的端口掃描工具,可以在短時間內(nèi)掃描數(shù)百萬個端口,支持TCP和UDP掃描,適用于大規(guī)模網(wǎng)絡(luò)掃描;
    • 3)Zenmap:Zenmap是Nmap的圖形用戶界面(GUI)版本,可以方便地進(jìn)行掃描選項(xiàng)配置和結(jié)果分析;
    • 4)Angry IP Scanner:Angry IP Scanner是一款輕量級的端口掃描工具,支持多線程掃描和快速掃描本地網(wǎng)絡(luò)和遠(yuǎn)程主機(jī);
    • 5)SuperScan:SuperScan是一款Windows平臺上的端口掃描工具,支持TCP和UDP掃描、多線程掃描、服務(wù)版本識別等功能;
    • 6)Unicornscan:Unicornscan是一款高速的網(wǎng)絡(luò)掃描工具,支持TCP、UDP、ICMP等多種掃描方式和掃描選項(xiàng);
    • 7)Netcat:Netcat是一款多功能的網(wǎng)絡(luò)工具,其中包括端口掃描功能,支持TCP和UDP掃描,可以快速掃描本地或遠(yuǎn)程計算機(jī)上的開放端口和服務(wù)。

    9.4建立基于流量的異常識別能力

    1)流量基線學(xué)習(xí):

    流量基線一般對五元組進(jìn)行配置學(xué)習(xí),通過對比應(yīng)用流量基線,發(fā)現(xiàn)孤立的端口流量,對比端口開放庫以發(fā)現(xiàn)異常開放的端口,另外,可以同步建設(shè)告警能力與處置能力,在發(fā)現(xiàn)異常的第一時間切斷風(fēng)險源頭。

     

    ▲ 基線學(xué)習(xí)

    流量基線學(xué)習(xí)的核心表:

    • 1)策略快照表:從離線同步過來的每個小時的服務(wù)維度的多種策略計算結(jié)果;
    • 2)學(xué)習(xí)配置表:用于存放學(xué)習(xí)配置,包括各種策略的加解鎖條件(偏離閾值+次數(shù))、偏離告警條件(偏離閾值+次數(shù),可以預(yù)留出來,告警下迭代做);
    • 3)當(dāng)前策略集:服務(wù)維度自定義的的策略集;
    • 4)策略狀態(tài)表:記錄各個服務(wù)節(jié)點(diǎn)的鎖狀態(tài),偏離情況,策略生效時間等;
    • 5)策略目標(biāo)集:部分策略擁有自己的目標(biāo)機(jī)器/服務(wù)結(jié)算邏輯,該表用于存放目標(biāo)范圍,用于定時清理不在目標(biāo)集的策略。

    2)異常檢測:

    通過對上節(jié)提到的流量基線結(jié)果的數(shù)據(jù)分析來識別網(wǎng)絡(luò)個體或群體的異常行為,一方面建立行為偏離預(yù)警機(jī)制,另一方面需要引入一些統(tǒng)計分析模型幫助建立閾值點(diǎn),在偏離預(yù)警機(jī)制這塊我們做了一些架構(gòu)實(shí)踐。

    其邏輯簡單描述如下:

     

    行為偏離比對邏輯:

     

    總結(jié)四個關(guān)鍵點(diǎn)分別為:

    • 1)配置文件:用于描述對應(yīng)服務(wù)的流量特征;
    • 2)上鎖:參數(shù)或配置文件在滿足預(yù)設(shè)規(guī)則條件下或人工干預(yù)下停止動態(tài)學(xué)習(xí)行為;
    • 3)解鎖:參數(shù)或配置文件在滿足預(yù)設(shè)規(guī)則條件下或人工干預(yù)下重新開始動態(tài)學(xué)習(xí)行為;
    • 4)偏離:指同一服務(wù)下某一時間切片的配置文件與已上鎖的配置文件的參數(shù)值對比,發(fā)生超過閾值的變化。

    此外便是閾值的設(shè)定問題,通過引入統(tǒng)計模型的使用來幫助我們制定閾值。

    常用的入侵檢測統(tǒng)計模型有以下幾類:

    • 1)操作模型:該模型假設(shè)異常可通過測量結(jié)果與一些固定指標(biāo)相比較得到,固定指標(biāo)可以根據(jù)經(jīng)驗(yàn)值或一段時間內(nèi)的統(tǒng)計平均得到,舉例來說,在短時間內(nèi)多次針對某一端口嘗試建立連接失敗,則可能是針對端口的拒絕服務(wù);
    • 2)方差:這也是常用的模型,通過計算參數(shù)的方差,設(shè)定置信區(qū)間,當(dāng)測量值超過置信區(qū)間的范圍時表明可能存在異常;
    • 3)多元模型:操作模型的擴(kuò)展,通過同時分析多個參數(shù)實(shí)現(xiàn)異常檢測;
    • 4)馬爾柯夫過程模型:將每種類型的事件定義為系統(tǒng)狀態(tài),用狀態(tài)轉(zhuǎn)移矩陣來表示狀態(tài)的變化,當(dāng)一個事件發(fā)生時,如果狀態(tài)矩陣中該轉(zhuǎn)移的概率較小則可能是異常事件;
    • 5)時間序列分析:將流量切片特征提取出來按照時間排成序列,如果一個新的請求或一個新的請求集合在該時間發(fā)生的概率較低,則該事件可能是異常。

    在異常識別這塊通常也會引入基于圖的數(shù)據(jù)分析方法,針對網(wǎng)絡(luò)個體和網(wǎng)絡(luò)群體進(jìn)行流量行為分析來發(fā)現(xiàn)異常行為,但應(yīng)用起來相對較為復(fù)雜,也需要較高學(xué)習(xí)與實(shí)踐成本,這塊更多在NIDS的應(yīng)用范疇,在此模塊不再贅述。

    需要提醒的是以上這種方法還是存在一些局限,如爬蟲類服務(wù),商業(yè)廣告類服務(wù)因?yàn)槠浞?wù)的特殊性,以上機(jī)制比較難進(jìn)行準(zhǔn)確的基線生成,雖說無法解決100%的問題,但也能cover住大部分的服務(wù)類型。同樣的,在這個領(lǐng)域還需要持續(xù)探索來提升服務(wù)類型的覆蓋率以及異常檢測精度。

    通過對上節(jié)提到的流量基線結(jié)果的數(shù)據(jù)分析來識別網(wǎng)絡(luò)個體或群體的異常行為,一方面建立行為偏離預(yù)警機(jī)制,另一方面需要引入一些統(tǒng)計分析模型幫助建立閾值點(diǎn),在偏離預(yù)警機(jī)制這塊我們做了一些架構(gòu)實(shí)踐。

    9.5健全脆弱性管理能力實(shí)現(xiàn)風(fēng)險追蹤與閉環(huán)

    端口暴露的最核心問題就是脆弱性利用,因此健全基礎(chǔ)架構(gòu)的脆弱性管理能力是阻斷外部威脅,有效控制風(fēng)險的重要手段,我們通過建立統(tǒng)一的脆弱性管理平臺來建立業(yè)務(wù)關(guān)系流,脆弱性庫,資產(chǎn)三者的關(guān)聯(lián)關(guān)系,針對脆弱性做到持續(xù)發(fā)現(xiàn),持續(xù)修復(fù)并將脆弱性作為安全告警關(guān)聯(lián)分析中的重要評價維度。脆弱性管理系統(tǒng)因其安全管理戰(zhàn)略特殊性,此處只能簡單介紹給讀者一些建設(shè)思路。

    脆弱性管理系統(tǒng)核心功能模塊結(jié)構(gòu):

     

    另外脆弱性關(guān)聯(lián)分析AVC是脆弱性管理系統(tǒng)的核心功能。

    讀者可以從以下評價維度進(jìn)行建設(shè)實(shí)踐:

     

    9.6完善端口生命周期管理(規(guī)范與流程)

    1)制定端口管理規(guī)范:

    規(guī)范原則:

    • 1)最小權(quán)限原則:端口開放遵循最小權(quán)限原則,只允許開放運(yùn)行http和https的80/443端口,其他對外開放的端口必須有合理的業(yè)務(wù)理由,并且應(yīng)該只開放業(yè)務(wù)需要的最小端口集合,由端口使用者提出工作聯(lián)絡(luò)單進(jìn)行申請經(jīng)審批同意后方可開放;
    • 2)可審計原則:所有端口開放都必須有可追溯的對應(yīng)申請依據(jù)、安全性評估依據(jù)、審批依據(jù),不允許私自開放端口;
    • 3)閉環(huán)原則:端口開放應(yīng)實(shí)施閉環(huán)管理,在業(yè)務(wù)不再需要時,應(yīng)及時關(guān)閉端口。

    對端口進(jìn)行明確定義:

    規(guī)范內(nèi)容可包含端口申請規(guī)范,端口使用規(guī)范,端口關(guān)閉規(guī)范以及明確的處罰規(guī)定。

    2)端口生命周期管理:

    實(shí)現(xiàn)從端口申請到端口關(guān)閉全流程管理:應(yīng)用申請 → 端口記錄 → 開墻(映射)→ 安全節(jié)點(diǎn)納管 → 流量反饋 → 主動關(guān)閉 → 端口映射記錄清除 → 安全節(jié)點(diǎn)卸載 → 端口資源池回收。

    3)持續(xù)評估:

    結(jié)合異常端口發(fā)現(xiàn)機(jī)制和端口開放庫以及相關(guān)流程建立起持續(xù)端口風(fēng)險評估機(jī)制,用以保障規(guī)范以及風(fēng)險處置有效性的落地。

    10、本文小結(jié)

    端口作為應(yīng)用對外暴露的主要入口,是應(yīng)用暴露在公網(wǎng)上的標(biāo)識,因此端口安全建設(shè)是企業(yè)信息安全防護(hù)體系中的重要一環(huán),安全團(tuán)隊需要詳細(xì)了解其內(nèi)部網(wǎng)絡(luò)中使用的所有端口,以及開放和關(guān)閉的端口數(shù)量和情況,在理解協(xié)議的脆弱性原理基礎(chǔ)上制定合適的安全策略和措施。

    同時再安全策略和措施制定的過程中,通過對各類端口掃描工具的使用,安全團(tuán)隊可以快速獲取目標(biāo)網(wǎng)絡(luò)中的端口開放情況。

    然后根據(jù)掃描結(jié)果,采取合適的安全策略和措施,禁止不必要端口的開放或者采取過濾、加密等方式對端口進(jìn)行保護(hù)。

    在技術(shù)實(shí)踐上:建設(shè)常態(tài)化端口發(fā)現(xiàn)機(jī)制以及常態(tài)化的漏洞掃描機(jī)制,將網(wǎng)絡(luò)端口及端口漏洞風(fēng)險進(jìn)行持續(xù)統(tǒng)一治理,同時建立基于流量的異常識別能力豐富基于行為的異常端口檢測能力,再輔以脆弱性管理以及端口生命周期管理(規(guī)范與流程)來形成整個端口安全治理體系。

    另外值得強(qiáng)調(diào)的是:全員網(wǎng)絡(luò)安全意識的水位決定整體安全態(tài)勢的下限,個人行為和錯誤配置通常是網(wǎng)絡(luò)漏洞的一大原因,因此安全管理團(tuán)隊需要持續(xù)加強(qiáng)內(nèi)部員工的網(wǎng)絡(luò)安全教育和培訓(xùn),提高其網(wǎng)絡(luò)安全意識和知識水平,建立全員參與的安全意識文化。

    總的來說:可以通過規(guī)范,流程,技術(shù)和人員意識培訓(xùn)來構(gòu)建全面的網(wǎng)絡(luò)端口風(fēng)險治理體系。

    11、參考資料

    [1] 什么是網(wǎng)絡(luò)端口?

    [2] 常用的端口攻擊

    [3] 常見TCP/UDP端口號大全

    [4] 跟著動畫來學(xué)TCP三次握手和四次揮手

    [5] CC攻擊原理及防范方法和如何防范CC攻擊

    [6] 如果這樣來理解HTTPS原理,一篇就夠了

    [7] 探討組合加密算法在IM中的應(yīng)用

    [8] 通俗易懂:一篇掌握即時通訊的消息傳輸安全原理

    [9] IM聊天系統(tǒng)安全手段之通信連接層加密技術(shù)

    [10] IM聊天系統(tǒng)安全手段之傳輸內(nèi)容端到端加密技術(shù)

    [11] 微信新一代通信安全解決方案:基于TLS1.3的MMTLS詳解


    (本文已同步發(fā)布于:http://www.52im.net/thread-4644-1-1.html



    作者:Jack Jiang (點(diǎn)擊作者姓名進(jìn)入Github)
    出處:http://www.52im.net/space-uid-1.html
    交流:歡迎加入即時通訊開發(fā)交流群 215891622
    討論:http://www.52im.net/
    Jack Jiang同時是【原創(chuàng)Java Swing外觀工程BeautyEye】【輕量級移動端即時通訊框架MobileIMSDK】的作者,可前往下載交流。
    本博文 歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處(也可前往 我的52im.net 找到我)。


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    Jack Jiang的 Mail: jb2011@163.com, 聯(lián)系QQ: 413980957, 微信: hellojackjiang
    主站蜘蛛池模板: 亚洲福利视频导航| 成人免费视频国产| 久久香蕉国产线看免费| 一区二区三区免费视频播放器| 亚洲综合欧美色五月俺也去| 亚洲性69影院在线观看| 久久久婷婷五月亚洲97号色| 亚洲网站在线观看| 久久精品国产亚洲av日韩| 4480yy私人影院亚洲| 亚洲精品456在线播放| 亚洲成人福利网站| 亚洲一区二区三区在线网站| 亚洲色欲色欲www| 亚洲欧美成人av在线观看| 亚洲成a∨人片在无码2023| 亚洲av无码成人影院一区| 黄色免费在线观看网址| 一区二区3区免费视频| a级毛片100部免费观看| 91精品导航在线网址免费| 日韩免费一区二区三区在线播放| 97在线观免费视频观看| 免费激情视频网站| 亚洲视频在线免费| 久久噜噜噜久久亚洲va久| 亚洲美女视频一区二区三区| 亚洲资源最新版在线观看| 美女露100%胸无遮挡免费观看| 中文毛片无遮挡高清免费| 最近2022中文字幕免费视频| 国产成人免费网站| 免费不卡中文字幕在线| 国产亚洲精品美女久久久| 亚洲黄色在线视频| 亚洲欧美第一成人网站7777| 九九热久久免费视频| 成人免费激情视频| 国产免费牲交视频| 亚洲成AV人片在线播放无码| 亚洲午夜一区二区电影院|