網絡安全之幾種常見的黑客攻擊手段

常見的黑客攻擊手段

常見的攻擊手段有:ARP攻擊,DoS攻擊,DDoS攻擊,SYN攻擊,緩衝區溢出攻擊,等等。下面我將對這幾種攻擊做個介紹。

1 ARP攻擊

ARP(Address Resolution Protocol)是地址解析協議,是一種利用網絡層地址來取得數據鏈路層地址的協議。ARP欺騙是黑客常用的攻擊手段之一,其中最常見的一種形式是針對內網PC的網關欺騙。它的基本原理是黑客通過向內網主機發送ARP應答報文,欺騙內網主機說:“網關的IP地址對應的是我的MAC地址”,也就是ARP應答報文中將網關的IP地址和黑客的MAC地址對應起來。這樣內網PC本來要發送給網關的數據就發送到了黑客的機器上了。

2 DoS攻擊

拒絕服務(Denial of Service,DoS)攻擊,其原理就是想辦法讓目標機器停止提供服務貨或資源訪問,這些資源包括磁盤空間、內存、進程甚至網絡帶寬,從而阻止正常用戶的訪向。
DoS的攻擊方式有很多種,根據其攻擊的手法和目的不同,有兩種不同的存在形式。
一種是以消耗目標主機的可用資源爲目的,使目標服務器忙於應付大量非法的,無用的連接請求,佔用了服務器所有的資源、造成服務器對正常的請求無注再做出及時響應,從而形成事實上的服務中斷。這是最常見的拒絕服務攻擊形式之一。這種攻擊主要利用的是網絡協議或者是系統的一些特點和漏洞進行攻擊,主要的攻擊方法有死亡之Ping 、SYN Flood、UDP Flood、ICMP Flood、Land、 Teardrop 等。針對這些漏洞的攻擊,目前在網絡中都有大量的工具可以利用。
另一種拒絕服務攻擊以消耗服務器鏈路的有效帶寬爲目的。攻擊者通過發送大量的有用或無用數據包,將整條鏈路的帶寬全部佔用,從而使合法用戶請求無法通過鏈路到達服務器。例如,蠕蟲對網絡的影響。具體的攻擊方式很多,如發送垃圾郵件,向匿名FTP塞垃圾文件,把服務器的硬盤塞滿;合理利用策略鎖定賬戶,一般服務器都有關於賬戶鎖定的安全策略,某個賬戶連續3次登錄失敗,那麼這個賬號將被鎖定。破壞者僞裝一個賬號,去錯誤地登錄,使這個賬號被鎖定,正常的合法用戶則不能使用這個賬號登錄系統了。

3 DDoS攻擊

分佈式拒絕服務(Distributed Denial of Service, DDoS)攻擊,是一種基於DoS的特殊式的攻擊,是一種分佈、協作的大規模攻擊方式,主要攻擊比較大的站點,如商業公司、搜索引擎和政府部]的站點。
DDoS藉助數百臺、甚至數千臺被植人攻擊守護進程的攻擊主機同時發起進攻,這種攻擊對網絡服務提供商的破壞力是巨大的。
攻擊準備:
(1)攻擊者攻擊諸客戶主機以求分析他們的安全水平和脆弱性。
(2)攻擊者進入其已經發現的最弱的客戶主機之內(“肉雞”),並且祕密地安置一個其可遠程控制的代理程序(端口監督程序demon)。
發起攻擊:
(3)攻擊者使他的全部代理程序同時發送由殘缺的數字包構成的連接請 求送至目標系統。
(4)包括虛假的連接請求在內的大量殘缺的數字包攻擊目標系統,最終將導致它因通信淤塞而崩潰。

SYN Flood攻擊

SYN Flood攻擊利用的是TCP缺陷。通常一次TCP連接的建立包括3個步驟:客戶端發送SYN包給服務器端;服務器分配一定的資源並返回SYN/ACK包,並等待連接建立的最後的ACK包;最後客戶端發送ACK報文。這樣兩者之間的連接建立起來,並可以通過連接傳送數據。攻擊的過程就是瘋狂地發送SYN報文,而不返回ACK報文。當服務器未收到客戶端的確認包時,規範標準規定必須重發SYN/ACK請求包,一直到超時,纔將此條目從未連接隊列刪除。SYN Flood 攻擊耗費CPU和內存資源,而導致系統資源佔用過多,沒有能力響應其他操作,或者不能響應正常的網絡請求。
由於TCP/IP相信報文的源地址,攻擊者可以僞造源IP地址,爲追查造成很大困難。如果想要查找,必須通過所有骨幹網絡運營商的路由器,逐級地向上查找。
SYN Flood攻擊除了能影響主機外,還危害路由器、防火牆等網絡系統。

4 緩衝區溢出攻擊

緩衝區是一塊連續的計算機內存區域,在程序中,通常把輸入數據存放在一個臨時空間內,這個臨時存放空間被稱爲緩衝區。在計算機內部,如果向一個容量有限的內存空間裏存儲過量得的數據,這時數據也會溢出存儲空間。
在程序編譯完以後,緩衝區中存放數據的長度事先已經被程序或者操作系統定義好,如果往程序的緩衝區寫超出其長度的內容,就會造成緩衝區的溢出,覆蓋其他空間的數據,從而破壞程序的堆棧,使程序轉而執行其他指令。
根據被覆蓋數據的位置的不同,緩衝區溢出分爲靜態存儲區溢出、棧溢出和堆溢出等3種。
發生溢出後,進程可能的表現有3中:一種是正常運行,被覆蓋的是無用的數據,並沒有發生訪問違例。二是運行出錯,包括輸出錯誤和非法操作等。三是受到攻擊,程序開始執行有害代碼,攻擊者就能獲取對系統的控制。
基本原理:黑客精心設計一個EIP(執行接口程序),使程序發生溢出之後改變正常流程,轉而去執行他們設計好的一段代碼,攻擊者就能獲取對系統的控制,利用ShellCode實現各種功能,如:監聽一個端口,添加一個用戶,等等。
緩衝區溢出源於程序執行時需要存放數據的空間,也即我們所說的緩衝區。 緩衝區的大小是程序執行時固定申請的。然而,某些時候,在緩衝區內裝載的數據大小是用戶輸入的數據決定的。程序開發人員偶爾疏忽了對用戶輸入的這些數據作長度檢查,由於用戶非法操作或者錯誤操作,輸入的數據佔滿了緩衝區的所有空間,且超越了緩衝區邊界延伸到緩衝區以外的空間。我們稱這個動作爲緩衝區溢出。
緩衝區溢出是由於系統和軟件本身存在脆弱點所導致的。 例如目前被廣泛使用的C和C++,這些語言在編譯的時候沒有做內存檢查,即數組的邊界檢查和指針的引用檢查,也就是開發人員必須做這些檢查,可是這些事情往往被開發人員忽略了;標準C庫中還存在許多不安全的字符串操作函數,包括:strcpy(),sprintf(),gets()等等,從而帶來了很多脆弱點,這些脆弱點也便成了緩衝區溢出漏洞。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章