DDOS学习笔记(《破坏之王-DDOS攻击与防范深度剖析》)
生活随笔
收集整理的這篇文章主要介紹了
DDOS学习笔记(《破坏之王-DDOS攻击与防范深度剖析》)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? ? ?最近花了點時間把《破壞之王-DDOS攻擊與防范深度剖析》看了一遍,坦白來說,這本書比較淺顯,可以說是入門書,當然對于我這種對DDOS一知半解的人來說,也是一本不錯的書,起碼我學到了一些東西。 ? ? ? ?DDOS是分布式拒絕服務(Distributed Denial of Service, DDOS)的簡寫,從名字可以看出,其攻擊是分布式的,即多臺(可能上萬臺,甚至更多)電腦同時對目標進行攻擊,攻擊的目的是讓目標無法提供服務。從根本上來說,讓目標無法提供服務,辦法有很多,比如侵入目標服務器,刪除關鍵服務或程序,或者其他的物理方式,這些確實有效,但是在隱蔽性上,以及目標恢復服務的難度上,都和DDOS相去甚遠。DDOS本質來說是用一些方法消耗目標服務器的資源,一臺服務器提供正常的對外服務,它必須擁有足夠的硬件設備,如CPU、內存、足夠快的硬盤,以及系統軟件,如穩定的操作系統、穩定的應用服務器以及數據庫等,還需要穩定的應用服務,比如基于JavaEE和PHP的程序,還需要足夠的帶寬,讓用戶可以訪問。這些是提供服務的基礎,也是DDOS攻擊的關鍵,從這個角度來看,DDOS的攻擊一般分為帶寬攻擊、系統資源攻擊和應用資源供給。簡單說明如下: ? ? ? 1)帶寬攻擊:這個很容易理解,就是向目標服務器發送大量的數據包,讓其他的正常用戶無法連接上服務器,這個最好理解,也最容易實現,很多壓力測試的工具都可以達到這種效果。但是這種壓力測試工具很容易被通過IP黑名單的辦法屏蔽掉。常見的攻擊方式有ICMP/IGMP洪水攻擊和UDP洪水攻擊,這種攻擊方式比較古老,很容易過濾,并且受制于攻擊電腦的性能,往往達不到想要的效果。更好的方式是反射攻擊技術,所謂的反射攻擊,就是攻擊電腦偽裝成目標主機,向某些服務器(如DNS、NTP、ACK、SNMP)發送請求,這些服務器返回的報文遠大于請求內容,并且其返回的數據是指向目標主機的,這即方便了攻擊隱藏,也避免了攻擊主機的性能限制,因為某些情況下,其放大效果能達到700倍。 ? ? ?2)攻擊系統資源:主要是指攻擊TCP鏈接和攻擊CPU、內存等資源,TCP連接被設計為可靠的三次握手模式,對。于后兩次而言,每當有一次出現問題,就會引起等待和重傳,沒有完成的連接被稱為半開連接,半開連接會很快耗盡服務器的連接資源,這就是常見的SYN洪水攻擊;另外客戶端發送完數據之后,會設置PSH標志,服務器收到這一信息后,就會清空緩沖區,將數據提交給服務進程,如果發送大量的PSH位的數據,也會造成服務器資源的占用。另外還有RST攻擊和SocketStress攻擊,前者相對困難,后者是一種慢速攻擊,這是通過TCP連接中的傳輸窗口的特性進行攻擊。另外還有利用SSL的特性,讓服務器端耗費大量的資源進行加解密,進而耗盡資源導致其無法服務。 ? ? ?3)攻擊應用資源:常見的有攻擊DNS和攻擊HTTP服務,攻擊DNS實際上一種無目的的、針對整個網絡的攻擊,相當于毀掉了整個城市的站牌和路標,自然就無法通行了。攻擊HTTP服務是利用HTTP服務的一些設計缺陷,如HTTP洪水攻擊,其實和攻擊TCP連接類似,攻擊者連接服務器之后,立刻切斷連接,并重新連接,這樣服務器的連接在超時之前需要保存,就會耗盡服務器資源;再比如Slowloris攻擊,就是利用了HTTP頭部的結束標志位"\r\n\r\n",攻擊者發送其他的Head字段,就是不發送"\r\n\r\n"標志,就會導致服務器的連接耗盡,IIS、Nginx進行修改,但是Apache似乎沒有修改;再如慢速POST攻擊,是利用了Content-Length指定了Body的傳輸長度這一特點,指定巨大的Content-Length值,然后緩慢的發送body信息,從而占有http連接,進而耗盡服務器資源。還有一些就是數據處理過程的攻擊,如正則表達式和哈希沖突拒絕服務攻擊,這些也是降低服務器的處理速度,占有關鍵資源,從而達到拒絕服務的目的。 ? ? ? DDOS的治理: ? ? ? 1)最可行的辦法,其實就是杜絕IP地址偽造,其實這個處理起來并不難,只要讓路由器判斷這個包是否是從本網域發出來的,如果不是,則拒絕,但是由于成本和缺乏激勵機制,還沒有實現。還有一些類似的方案,如果能夠獨具IP地址偽造,那么DDOS攻擊應該減少大部分。 ? ? ? ?2)攻擊流量的緩解主要是對網絡流量進行清洗,清洗之前需要稀釋,稀釋的辦法主要有CDN、AnyCast,前者是通過智能DNS,將用戶的訪問分布到不同的機器上,但是這種方法對指定IP的攻擊無效,AnyCast可以解決針對IP攻擊的問題。 ? ? ? 3)數據清洗的辦法很多,但是并不是十分有效,常見的辦法有IP信譽檢查、攻擊特征匹配、速度限制和檢查、TCP代理和驗證、協議完整性驗證、客戶端真實性驗證等方法
轉載于:https://www.cnblogs.com/stone-fly/p/5521899.html
總結
以上是生活随笔為你收集整理的DDOS学习笔记(《破坏之王-DDOS攻击与防范深度剖析》)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MongoDB系列(一):简介及安装
- 下一篇: [Socket网络编程]一个封锁操作被对