自定义报文格式(自定义报文ddos)
ddos攻擊是利用什么進行攻擊的?
ddos 攻擊是利用中間代理的方式來進行攻擊的。
這種攻擊手法最常用的是 SYN 即洪水攻擊,它利用了 TCP 協議實現上的一個缺陷,通過向網絡服務所在端口發送大量的偽造源地址的攻擊報文,就可能造成目標服務器中的半開連接隊列被占滿,從而阻止其它合法用戶進行訪問。基本目前所有常見的 DDoS 攻擊都是使用這種原理來進行攻擊的。
拒絕服務攻擊是如何展開的?
拒絕服務攻擊即攻擊者想辦法讓目標機器停止提供服務或資源訪問,是黑客常用的攻擊手段之一。這些資源包括磁盤空間、內存、進程甚至網絡帶寬,從而阻止正常用戶的訪問。其實對網絡帶寬進行的消耗性攻擊只是拒絕服務攻擊的一小部分,只要能夠對目標造成麻煩,使某些服務被暫停甚至主機死機,都屬于拒絕服務攻擊。拒絕服務攻擊問題也一直得不到合理的解決,究其原因是因為這是由于網絡協議本身的安全缺陷造成的,從而拒絕服務攻擊也成為了攻擊者的終極手法。攻擊者進行拒絕服務攻擊,實際上讓服務器實現兩種效果:一是迫使服務器的緩沖區滿,不接收新的請求;二是使用IP欺騙,迫使服務器把合法用戶的連接復位,影響合法用戶的連接。
拒絕服務攻擊的原理
1.SYN Foold
SYN Flood是當前最流行的DoS(拒絕服務攻擊)與DDoS(Distributed Denial Of Service分布式拒絕服務攻擊)的方式之一,這是一種利用TCP協議缺陷,發送大量偽造的TCP連接請求,使被攻擊方資源耗盡(CPU滿負荷或內存不足)的攻擊方式。
SYN Flood攻擊的過程在TCP協議中被稱為三次握手(Three-way Handshake),而SYN Flood拒絕服務攻擊就是通過三次握手而實現的。
(1) 攻擊者向被攻擊服務器發送一個包含SYN標志的TCP報文,SYN(Synchronize)即同步報文。同步報文會指明客戶端使用的端口以及TCP連接的初始序號。這時同被攻擊服務器建立了第一次握手。
(2) 受害服務器在收到攻擊者的SYN報文后,將返回一個SYN+ACK的報文,表示攻擊者的請求被接受,同時TCP序號被加一,ACK(Acknowledgment)即確認,這樣就同被攻擊服務器建立了第二次握手。
(3) 攻擊者也返回一個確認報文ACK給受害服務器,同樣TCP序列號被加一,到此一個TCP連接完成,三次握手完成。
具體原理是:TCP連接的三次握手中,假設一個用戶向服務器發送了SYN報文后突然死機或掉線,那么服務器在發出SYN+ACK應答報文后是無法收到客戶端的ACK報文的(第三次握手無法完成),這種情況下服務器端一般會重試(再次發送SYN+ACK給客戶端)并等待一段時間后丟棄這個未完成的連接。這段時間的長度我們稱為SYN Timeout,一般來說這個時間是分鐘的數量級(大約為30秒~2分鐘);一個用戶出現異常導致服務器的一個線程等待1分鐘并不是什么很大的問題,但如果有一個惡意的攻擊者大量模擬這種情況(偽造IP地址),服務器端將為了維護一個非常大的半連接列表而消耗非常多的資源。即使是簡單的保存并遍歷也會消耗非常多的CPU時間和內存,何況還要不斷對這個列表中的IP進行SYN+ACK的重試。實際上如果服務器的TCP/IP棧不夠強大,最后的結果往往是堆棧溢出崩潰—— 即使服務器端的系統足夠強大,服務器端也將忙于處理攻擊者偽造的TCP連接請求而無暇理睬客戶的正常請求(畢竟客戶端的正常請求比率非常之小),此時從正常客戶的角度看來,服務器失去響應,這種情況就稱作:服務器端受到了SYN Flood攻擊(SYN洪水攻擊)。
2.IP欺騙DOS攻擊
這種攻擊利用RST位來實現。假設現在有一個合法用戶(61.61.61.61)已經同服務器建立了正常的連接,攻擊者構造攻擊的TCP數據,偽裝自己的IP為61.61.61.61,并向服務器發送一個帶有RST位的TCP數據段。服務器接收到這樣的數據后,認為從61.61.61.61發送的連接有錯誤,就會清空緩沖區中建立好的連接。這時,如果合法用戶61.61.61.61再發送合法數據,服務器就已經沒有這樣的連接了,該用戶就必須從新開始建立連接。攻擊時,攻擊者會偽造大量的IP地址,向目標發送RST數據,使服務器不對合法用戶服務,從而實現了對受害服務器的拒絕服務攻擊。
了解有關DNS服務器攻擊有哪些?如何預防?
利用DNS服務器進行DDOS攻擊
正常的DNS服務器遞歸查詢過程可能被利用成DDOS攻擊。假設攻擊者已知被攻擊機器的IP地址,然后攻擊者使用該地址作為發送解析命令的源地址。這樣當使用DNS服務器遞歸查詢后,DNS服務器響應給最初用戶,而這個用戶正是被攻擊者。那么如果攻擊者控制了足夠多的肉雞,反復的進行如上操作,那么被攻擊者就會受到來自于DNS服務器的響應信息DDOS攻擊。
攻擊者擁有著足夠多的肉雞群,那么就可以使被攻擊者的網絡被拖垮至發生中斷。利用DNS服務器攻擊的重要挑戰是,攻擊者由于沒有直接與被攻擊主機進行通訊,隱匿了自己行蹤,讓受害者難以追查原始的攻擊來。
DNS緩存感染
攻擊者使用DNS請求,將數據放入一個具有漏洞的的DNS服務器的緩存當中。這些緩存信息會在客戶進行DNS訪問時返回給用戶,從而把用戶客戶對正常域名的訪問引導到入侵者所設置掛馬、釣魚等頁面上,或者通過偽造的郵件和其他的server服務獲取用戶口令信息,導致客戶遭遇進一步的侵害。
DNS信息劫持
TCP/IP體系通過序列號等多種方式避免仿冒數據的插入,但入侵者如果通過監聽客戶端和DNS服務器的對話,就可以猜測服務器響應給客戶端的DNS查詢ID。每個DNS報文包括一個相關聯的16位ID號,DNS服務器根據這個ID號獲取請求源位置。攻擊者在DNS服務器之前將虛假的響應交給用戶,從而欺騙客戶端去訪問惡意的網站。假設當提交給某個域名服務器的域名解析請求的DNS報文包數據被截獲,然后按截獲者的意圖將一個虛假的IP地址作為應答信息返回給請求者。原始請求者就會把這個虛假的IP地址作為它所要請求的域名而進行訪問,這樣他就被欺騙到了別處而無妨連接想要訪問的那個域名。
DNS重定向
攻擊者將DNS名稱查詢重定向到惡意DNS服務器上,被劫持域名的解析就完全在攻擊者的控制之下。
ARP欺騙
ARP攻擊就是通過偽造IP地址和MAC地址實現ARP欺騙,能夠在網絡中產生大量的ARP通信量使網絡阻塞,攻擊者只要持續不斷的發出偽造的ARP響應包就能更改目標主機ARP緩存中的IP-MAC條目,造成網絡中斷或中間人攻擊。ARP攻擊主要是存在于局域網網絡中,局域網中若有一臺計算機感染ARP病毒,則感染該ARP病毒的系統將會試圖通過”ARP欺騙”手段截獲所在網絡內其它計算機的通信信息,并因此造成網內其它計算機的通信故障。
ARP欺騙通常是在用戶局網中,造成用戶訪問域名的錯誤指向。如果IDC機房也被ARP病毒入侵后,則也可能出現攻擊者采用ARP包壓制正常主機、或者壓制DNS服務器,以使訪問導向錯誤指向的情況。
本機劫持
本機的計算機系統被木馬或流氓軟件感染后,也可能會出現部分域名的訪問異常。如訪問掛馬或者釣魚站點、無法訪問等情況。本機DNS劫持方式包括hosts文件篡改、本機DNS劫持、SPI鏈注入、BHO插件等方式。
總結
以上是生活随笔為你收集整理的自定义报文格式(自定义报文ddos)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaOne 2012:向上,向上和向
- 下一篇: Spring测试支持和上下文缓存