20199310 2019-2020-2 《網絡攻防實踐》第5周做業

做業課程: https://edu.cnblogs.com/campus/besti/19attackdefense
做業要求: https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10553
課程目標: 學習《網絡攻防技術與實踐》教材第五章,並完成課後做業
本次做業實現目標: 學習TCP/IP網絡協議攻擊技術和實踐操做

做業正文:

1 知識點梳理

1.1 網絡安全

網絡安全:網絡系統的硬件、軟件及其系統中的數據受到保護,不受偶然的或者惡意的緣由而遭受破壞、更改、泄露,系統連續可靠正常運行,網絡服務不被中斷。
網絡安全屬性web

  • 機密性:網絡中的信息不被非受權實體獲取和使用,一般基於加密算法進行保障。
  • 完整性:信息未經受權不能進行改變的特性,即信息在存儲和傳輸過程當中保持不被修改、不被破壞和丟失的特性。
  • 可用性:被受權實體訪問並按需求使用的特性,即當須要時可以正常地存取和訪問所需的信息與服務。
  • 真實性:被受權實體訪問並按需求使用的特性,即當須要時可以正常地存取和訪問所需的信息與服務。
  • 不可抵賴性:在通訊中確保任何一方沒法抵賴本身曾經作過的操做的安全特性,包括對本身行爲的不可抵賴及對行爲發生時間的不可抵賴。

網絡攻擊基本模式算法

  • 截獲:一種被動攻擊模式,其目的是獲取網絡通訊雙方的通訊信息內容,是對機密性的違反,具體攻擊技術爲嗅探與監聽。
  • 中斷:一種主動攻擊模式,導致正常的網絡通訊和會話沒法繼續,是對可用性的破壞,具體攻擊技術爲拒絕服務。
  • 篡改:一種主動攻擊模式,對網絡通訊過程的信息內容進行修改,是的通訊一方或雙方接收到篡改後的虛假信息,是對完整性的違背,具體技術爲數據包篡改,通常須要結合身份欺騙進行中間人攻擊。
  • 僞造:一種主動攻擊模式,假冒網絡通訊方的身份,欺騙通訊對方達到惡意目的,是對真實性屬性的背離,具體攻擊技術爲欺騙。
  • 中間人攻擊:一種主動攻擊模式,經過各類技術手段與通訊雙方創建起各自獨立的會話鏈接,並進行消息的雙向轉發。

TCP/IP網絡協議棧的安全缺陷與攻擊技術


apache

2 實驗內容

2.1 網絡層協議攻擊

2.1.1 IP地址欺騙

IP地址欺騙:攻擊者僞造具備虛假源地址的IP數據包進行發送,以達到隱藏發送者身份、假冒其餘計算機等目的。
攻擊示意圖
windows

  • 1.對受信任主機進行拒絕服務供給,使其喪失工做能力;
  • 2.對目標主機的TCP初始序列號(ISN)進行取樣與猜想;
  • 3.僞造源地址爲受信任主機IP的SYN數據包,發送給目標主機;
  • 4.等待目標主機將SYN/ACK包發給已癱瘓的受信任主機;
  • 5.再次假裝成被信任主機向目標主機發送ACK包,設置發送數據包的ACK值爲預測目標哦主機ISN+1;
  • 6.鏈接創建,假冒被信任主機與目標主機通訊。


    防範措施
  • 使用隨機化的初始序列;
  • 使用網絡層安全傳輸協議如IPsec,對傳輸數據包進行加密;
  • 避免採用基於IP地址的信任策略,以基於加密算法的用戶身份認證機制來替代這些訪問控制策略;
  • 在路由器和網關上實施包過濾是對抗IP源地址欺騙的一種主要技術。

2.1.2 ARP欺騙

ARP欺騙:攻擊者在有線以太網或無線網絡上發送僞造ARP消息,對特定IP所對應的MAC地址進行假冒欺騙,從而達到惡意目的的攻擊技術。
攻擊示意圖
緩存

  • 1.源節點A經過廣播的形式在局域網內發送ARP請求包,詢問節點B的IP地址所映射的MAC地址;
  • 2.局域網內的攻擊節點雖然不是ARP包的目標IP地址,但不斷向源節點發送ARP響應包;
  • 3.雖然B節點也向源A發出了ARP響應,可是源節點上會強制以節點C發送的響應包中的信息來更新ARP緩存;
  • 4.源節點A再次發送數據包到目的節點B時,根據錯誤的映射記錄,會直接把數據包發送給節點C;
  • 5.利用相同的方法,攻擊節點C也能夠對節點B假冒節點A,造成中間人攻擊。


    防範措施
  • 靜態綁定關鍵主機IP地址與MAC地址映射;
  • 使用ARP防範工具;
  • 使用VLAN虛擬子網細分網絡拓撲;
  • 以加密傳輸數據以下降ARP欺騙攻擊的危害後果。

2.1.3 ICMP路由重定向

ICMP路由重定向攻擊:攻擊者假裝成路由器發送虛假的ICMP路由路徑控制報文,使得受害主機選擇攻擊者指定的路由路徑,從而進行嗅探或假冒攻擊的一種技術。
ICMP報文安全

  • 差錯報告報文:目的站不可達,數據報超時,數據包參數錯誤。
  • 控制報文:請求/應答報文,通知報文。
    攻擊示意圖
  • 1)攻擊節點利用IP源地址欺騙技術,冒充網關IP地址,向被攻擊節點發送ICMP重定向報文,並將指定的新路由器IP地址設置爲攻擊節點;
  • 2)被攻擊節點選擇攻擊節點做爲其新路由器(網關);
  • 3)攻擊節點能夠開啓路由轉發,充當中間人;


    防範措施:設置防火牆過濾,對ICMP重定向報文判斷是否是來自本地路由器

2.2 傳輸層協議攻擊

2.2.1 TCP RST攻擊

TCP重置報文:一種假冒干擾TCP通訊鏈接的技術方法,reset標誌位爲1時主機將斷開這個TCP會話鏈接。
攻擊示意圖

攻擊機能夠發送TCP重置報文致使通訊雙方TCP鏈接斷開,達到拒絕服務的效果。

服務器

2.2.2 TCP會話劫持攻擊

TCP會話劫持:劫持創建TCP通訊的會話鏈接,假冒其中一方與另外一方進一步通訊,該攻擊繞過了應用層的身份認證。
ACK風暴:在網絡中來回發送ACK,構成死循環,直到其中一個ACK因爲網絡擁塞或其餘緣由丟失。
攻擊示意圖



防範措施網絡

  • 1)優化初始序列號隨機化;
  • 2)禁用主機上的源路由;
  • 3)採用靜態綁定IP-MAC映射表以免ARP欺騙;
  • 4)引用和過濾ICMP重定向報文,採用網絡層加密機制。

2.2.3 TCP SYN Flood拒絕服務攻擊

TCP SYN Flood拒絕服務:使服務器不可以爲正常訪問的用戶提供服務。
正常的三次握手創建TCP鏈接

攻擊示意圖

利用TCP三次握手協議的缺陷,攻擊時大量發送SYN報文,向目標主機發送大量的僞造源地址的SYN鏈接請求,消耗目標主機的鏈接隊列資源,從而不能爲正經常使用戶提供服務。


防範措施tcp

  • 1)SYN-Cookie技術;
  • 2)防火牆地址狀態控制技術。

3.實踐做業

  • 請在網絡攻防實驗環境(以SEED_VM做爲攻擊機,Linux Metasploitable/Windows Metasploitable做爲靶機)中完成TCP/IP協議棧重點協議的攻擊實驗,具體包括ARP緩存欺騙攻擊、ICMP重定向攻擊、SYN Flood攻擊、TCP RST攻擊及TCP繪畫劫持攻擊(bonus)。

3.1 ARP緩存欺騙攻擊

攻擊機SEED:IP爲192.168.200.4,MAC地址爲00:0c:29:8f:cc:a9

靶機1Linux Metasploitable:IP爲192.168.200.102,MAC地址爲00:0c:29:c8:14:8b

靶機2win2kServer:IP爲192.168.200.103,MAC地址爲00:0c:29:bb:a0:45

一開始靶機之間沒有ARP映射關係,經過靶機2ping靶機1,讓靶機2得到靶機1的ARP映射信息


工具

使用命令netwox 33 -b 00:0c:29:bb:a0:45 -g 192.168.200.102 -h 00:0c:29:bb:a0:45 -i 192.168.200.103替換ARP緩存,其中兩個MAC地址都是靶機2的MAC地址,第一個IP地址爲靶機1的IP地址,第二個IP地址爲靶機2的IP地址,攻擊機截獲了靶機2的ARP請求包,向靶機2不斷髮送ARP響應包,由此修改了本來ARP緩存靶機1的MAC地址。



在靶機2上經過arp -a命令能夠看到靶機1的IP地址沒變,可是MAC地址已經被替換爲攻擊機的MAC地址:


3.2 ICMP重定向攻擊

首先在windows靶機中用命令route print查詢當前默認網關爲192.168.200.1:


而後在攻擊機Kali上經過命令netwox 86 -f 「host 192.168.200.10」 -g 192.168.200.7 -i 192.168.200.1,以原默認網關192.168.200.1的名義向源IP地址192.168.200.10發送一個ICMP重定向數據包,把默認網關的MAC地址改成攻擊機192.168.200.7的MAC地址:


查詢靶機的route跳轉記錄,能夠發現通過攻擊機192.168.200.7:


3.3 TCP RST攻擊

使用netwox第78號工具發起攻擊,執行命令netwox 78 -i 192.168.200.4,對dees機進行TCP RST攻擊,冒充靶機向目的IP發送大量RST標誌位1的數據包,致使TCP鏈接斷開,靶機與目標服務器斷開通訊:



能夠看到靶機已與百度網頁斷開通訊:


3.4 SYN Flood攻擊

使用netwox中的76號工具進行攻擊,執行netwox 76 -i "192.168.200.4" -p 23對靶機的23號端口進行SYN Flood攻擊:


在wireshark上進行抓包,發現攻擊機向靶機發送大量虛假SYN鏈接請求,這些請求沒有MAC地址,沒法查詢攻擊者:


對靶機進行telnet鏈接,顯示鏈接失敗:


3.5 TCP會話劫持攻擊

安裝ettercap命令apt-cache search ettercap,apt-get install -y ettercap-graphical,啓動web服務/etc/init.d/apache2 start,/etc/init.d/apaches2 status:


修改/etc/ettercap/etter.dns配置文件,添加欺騙的A記錄和PDR記錄:


輸入ettercap -G開啓ettercap,選擇eth0網卡,點擊開啓服務,而後選擇HostsHosts list,而後點擊Scanf for hosts,能顯示當前網段內的掃描的主機IP,將windows靶機192.168.200.3添加爲Target1,將SEED靶機192.168.200.4添加爲Target2:


而後選擇ARP posisoning,勾選Sniff remote connections,開始遠程嗅探:


靶機之間ARP查詢,對方MAC地址已經變爲攻擊機MAC地址:




靶機之間進行ping操做,嗅探結果以下:


靶機之間進行telnet鏈接,嗅探結果以下:


靶機登陸百度,嗅探結果以下:


4.學習中遇到的問題及解決

  • 問題1:登陸kali機後發現eth0不見了
    問題1解決方案:不知道是什麼緣由,查詢網上的解決方案/etc/network/interfaces文件中添加eht0的自動啓動,並從新配置了DNS服務器。

  • 問題2:ICMP路由重定向攻擊失敗
    問題2解決方案:原來的靶機用的是僅主機模式,將其修改成NAT模式重定向就能夠成功

  • 問題3:netwox和ettercap的使用
    問題3解決方案:netwox的使用語法參考主要參考了教材,ettercap的安裝和配置稍顯複雜,參考了這篇ettercap入門學習博客

5.學習感悟和思考

本次學習內容主要包括TCP/IP網絡協議中的常見攻擊技術,並對其在配置的虛擬機環境中進行了測試實踐。感受netwox仍是一個比較全面的網絡攻擊軟件,其中包括的命令不止以上實踐所展現的,有時間還能夠好好研究下,可是netwox沒有很好的交互性,這就須要經過wireshark和其餘的操做來對數據包進行嗅探和分析。

參考資料

相關文章
相關標籤/搜索