時至今日,網絡攻擊已經成為影響網絡信息安全、業務信息安全的主要因素之一。
網絡攻擊是指利用網絡存在的漏洞和安全缺陷對網絡系統的軟硬件及其系統數據進行攻擊的行為。TCP/IP協議作為網絡的基礎協議,從設計之初并沒有考慮到網絡將會面臨如此多的威脅,導致出現了許多攻擊方法。由于網絡中的通訊都源于數據包,通過對數據包的自動采集與解碼分析,可以快速發現與追溯網絡攻擊。
TCP/IP協議
業界通常將TCP/IP協議棧劃為四層:即鏈路層、網絡層、傳輸層和應用層。
鏈路層主要用來處理數據在物理介質(如以太網、令牌環等)的傳輸,實現網卡接口的網絡驅動程序;
網絡層采用IP協議是整個協議棧的核心,其主要功能是進行數據包的選路和轉發,實現網際互聯與擁塞控制等;
傳輸層為主機間的應用程序提供端到端的通信,該層定義了兩種協議即TCP與UDP;
應用層的主要功能是處理應用程序的邏輯,比如文件傳輸、名稱查詢和網絡管理等,位于該層的協議有基于TCP協議的FTP文件傳輸協議、HTTP超文本傳輸協議和基于UDP協議的域名服務DNS等。
TCP/IP協議模型層次結構圖
由于 TCP/IP 協議有四層且每一層功能、協議各不相同,因此針對不同協議層攻擊方法也各不相同:針對鏈路層的攻擊,主要是對網絡硬件和基礎設施進行物理破壞或強行改變路由器路由;IP協議與ARP協議是網絡層最重要的兩個協議,針對網絡層的攻擊,主要有IP碎片攻擊、ARP 欺騙等;由于TCP協議與UDP協議是傳輸層最主要的兩個協議,因此針對傳輸層的攻擊非常多,包括DOS攻擊等;而應用層的協議是整個協議棧最多的,因此針對該層的攻擊數量極為龐大,常見的如 DNS 欺騙等。
ARP攻擊
ARP(Address Resolution Protocol,地址解析協議),將網絡主機的 IP 地址解析成 MAC 地址,每臺主機設備上都擁有一個 ARP 緩存(ARP Cache),通過檢查自己的 ARP 緩存,然后進行判斷(如果有,可以直接映射;如果無,可以廣播 ARP 請求包);
之后檢查數據包中的目標 IP 地址是否與自己的IP地址一致,如果一致,可以發送 ARP 響應,告知 MAC 地址;
當源節點在收到 ARP 響應數據包后,可以將得到的目標主機 IP 地址和 MAC 地址對映射表項添加至自己的 ARP 緩存中。
ARP協議工作原理
ARP 攻擊就是通過偽造 IP 地址和 MAC 地址來實現 ARP 欺騙,通過在網絡中制造大量的 ARP 通信量使網絡阻塞,攻擊者只要持續不斷的發出偽造的 ARP 響應包就能更改目標主機 ARP 緩存中的 IP-MAC 條目,造成網絡中斷或中間人攻擊,因此 ARP 攻擊通常也被稱作ARP欺騙。
盡管ARP攻擊僅能在以太網進行且門檻很低,造成的影響卻很大,比如會出現斷網攻擊、流量被限、賬號被盜等情況。網絡運維可以采取ARP防御機制,比如通過在交換機部署網絡鏡像,抓取可疑數據包分析,也可以結合DHCP偵聽、IP源防護等技術,維護網絡安全。
DoS攻擊
TCP 協議是基于流的方式,面向連接的可靠通信方式,可以在網絡不佳的情況下降低系統由于重傳帶來的帶寬開銷。
具體來說,TCP連接的建立過程需要經歷三個步驟,每一步同時連接發送端與接收端,俗稱“三次握手”:發送端發出SYN包,進入SYN_SENT狀態,表明計劃連接的服務器端口以及初始序號,等待接收端確認;
接收端收到SYN包,發送SYN_ACK,對發送端進行確認,進入SYN_RECV狀態;發送端收到SYN_ACK包,向接收端發送ACK,雙方連接建立完成。
TCP三次握手
由于TCP協議是面向連接的傳輸控制協議,因此DoS攻擊的主要目的就是使用戶主機或網絡無法接收或處理外界請求。比如通過制造大流量的無用數據,造成網絡擁塞,使被攻擊的主機無法和外界正常通信;
利用重復連接缺陷,反復發送重復服務請求,使其無法正常處理其它請求;
又或利用協議缺陷,反復發送攻擊數據,占用主機或系統資源,導致死機等。
簡單來說,DoS(Denial of Service)拒絕服務攻擊通常使用數據包淹沒本地系統,以打擾或嚴重阻礙本地的服務響應外來合法的請求,使本地系統奔潰。
SYN flood 攻擊是最常見的 DoS 攻擊類型。攻擊者將自身 IP 源地址進行偽裝,向本地系統發送 TCP連接請求;
本地系統回復SYN-ACK至偽裝地址,導致本地系統收不到RST消息,無法接收ACK回應,將一直處于半連接狀態,直至資源耗盡。攻擊者發送連接請求速度比 TCP超時釋放資源速度更快,利用反復連接請求,導致本地服務無法接收其它連接。
解決SYN flood 的最好方法就是做好防范策略,通過網絡性能管理工具,自動篩選可疑數據包,縮短 SYN Timeout 時間,設置 SYN Cookie,為每一個請求設置Cookie,如果短時間內收到某個IP的重復SYN報文,就認定為攻擊,拋棄該IP地址。
DNS攻擊
IP協議為了將數據信息包從原設備傳送到目的設備,需要依賴IP地址與IP路由器。IP地址是機器語言,通常較長,所以盡管IP地址具有唯一性,但是不方便記憶與使用,人們便在此基礎上發明了DNS。DNS(Domain Name System)即域名系統,域名通常較短,兼具可讀性與實用性。由于域名與IP地址呈一一對應關系,因此,上網時只需在地址欄輸入域名,系統會直接進行域名解析,將域名翻譯成IP地址。
在執行完域名搜索后,域名服務器會保存域名記錄,每條記錄都會包含域名與IP地址。如果域名服務器的某條地址被人為修改,那么就可以人為操作用戶的訪問地址,這種行為被稱為“域名劫持”。“域名劫持”的始作俑者是域名服務器提供商,因此目前解決該問題的有效方法是棄用或換用域名服務器。
除“域名劫持”外,還有另外一種常見的DNS攻擊叫做“域名污染”或“域名欺騙”。當電腦發送“域名查詢”至域名服務器后,域名服務器會將回應發送回電腦,發送請求與接收信息是一個過程,中間會出現時間差,網絡攻擊會在接收信息前,偽造錯誤應答至電腦,那么該信息即為錯誤IP。
面對網絡攻擊,我們除了需要提高安全意識,積極盡責地維護系統,加強防火墻設置外,還可以通過對數據包進行分析進而追溯網絡攻擊。
通過對網絡數據進行采集與解碼分析,掌握網絡中最細微的變化,針對網絡攻擊的特征值或者行為進行有效的告警信息配置,可以快速定位網絡中的攻擊。
也可以通過使用具有安全防護功能的網絡性能管理工具,譬如天旦網絡性能管理NPM,支持TCP端口掃描、ARP攻擊與DOS攻擊等可疑數據包自動分析,實現自動告警,保障數據信息的正常傳輸與使用。
編輯:黃飛
?
評論
查看更多