如何使用ADLab搭建活动目录实验环境来练习渗透测试技术
關于ADLab PowerShell模塊
ADLab是一個功能強大的PowerShell模塊,該工具可以自動化實現一個活動目錄實驗環境,以幫助廣大研究人員更好地學習和研究內部網絡環境內的滲透測試技術。
工具準備
首先,我們需要使用下列命令將該項目源碼克隆至本地:
git clone https://github.com/xbufu/ADLab.git接下來,我們需要將該模塊移動至PSModulePath。
顯示PSModulePath:
$env:PSModulePath.split(";")移動模塊至該路徑:
Move-Item .\ADLab\ "C:\Windows\system32\WindowsPowerShell\v1.0\Modules\"私信回復“資料”找我領取一份安全學習資料【點擊查看】
導入模塊
導入全局模塊:
Import-Module ADLab導入本地模塊:
Import-Module .\ADLab.psm1初始化實驗環境
Invoke-DCPrep
這個功能函數用于準備當前的虛擬機或計算機設備,并將其當作一個域控制器來使用。它回設置一個靜態IP地址,并設置本地localhost主機為DNS服務器,然后對本地計算機進行重命名。
使用默認配置運行當前虛擬機,并顯示Verbose輸出:
Invoke-DCPrep -Verbose設置自定義主機名并使用Google DNS作為外網訪問:
Invoke-DCPrep -Hostname "DC" -NewIPv4DNSServer "8.8.8.8"使用自定義IP和默認網關,并顯示Verbose輸出:
Invoke-DCPrep -Verbose -NewIPv4Address "192.168.1.99" -NewIPv4Gateway "192.168.1.1"Invoke-ForestDeploy
該功能函數將安裝AD DS功能,并設置新的活動目錄森林,整個過程自動完成,無需用戶輸入信息,完成后將會重啟計算機。
安裝新的森林,使用默認DSRM密碼-“Password!”:
Invoke-ForestDeploy -Domain bufu-sec.local安裝新的森林,使用DSRM密碼-“P@ssword!”,并顯示調試信息:
Invoke-ForestDeploy -Domain "bufu-sec.local" -DSRMPassword "P@ssword!" -VerboseInvoke-DNSDeploy
該功能從安裝DNS功能開始,然后添加主區域并配置服務器轉發器。
在當前主機上安裝并配置DNS,然后顯示Verbose輸出:
Invoke-DNSDeploy -Verbose -NetworkID 192.168.47.0/24 -ZoneFile "192.168.47.2.in-addr.arpa.dns" -ServerForwarder 1.1.1.1Invoke-DHCPDeploy
在本地DC上安裝并配置DHCP:
Invoke-DHCPDeploy -Verbose -ScopeName "Default" -ScopeID 192.168.47.0 -StartIP 192.168.47.100 -EndIP 192.168.47.200 -SubnetMask 255.255.255.0 -DNSServer 192.168.47.10 -Router 192.168.47.10在指定DC上安裝并配置DHCP:
Invoke-DHCPDeploy -Verbose -ScopeName "Default" -ScopeID 192.168.47.0 -StartIP 192.168.47.100 -EndIP 192.168.47.200 -SubnetMask 255.255.255.0 -DNSServer 192.168.47.10 -Router 192.168.47.10 -DCFQDN DC01.bufu-sec.local內容
Invoke-ADLabFill
該函數首先會創建一個組,并在全局Groups變量中定義OU。默認情況下,它會為每個OU生成10個用戶對象。
使用對象填充域森林,并顯示Verbose輸出:
Invoke-ADLabConfig -Verbose針對每個OU創建50個用戶,并顯示Verbose輸出:
Invoke-ADLabConfig -Verbose -UserCount 50攻擊向量
Set-ASREPRoasting
該函數從域中獲取一定數量的隨機用戶,并為每個用戶設置DoesNotRequirePreAuth標志,其中不包括管理員和krbtgt等默認帳戶。默認情況下,會獲取5%的ASREP-Roastable用戶。
獲取5%的ASREP-Roastable用戶,并顯示Verbose輸出:
Set-ASREPRoasting -Verbose獲取ASREP-Roastable域中的10個隨機用戶:
Set-ASREPRoasting -VulnerableUsersCount 10獲取ASREP-Roastable bufu用戶,并顯示Verbose輸出:
Set-ASREPRoasting -Users bufu -Verbose將提供的用戶列表設置為ASREP-Roastable用戶,并顯示Verbose輸出:
Set-ASREPRoasting -Users ("bufu", "pepe") -Verbose
Set-Kerberoasting
該函數從域中獲取一定數量的隨機用戶,并為每個用戶添加一個SPN,其中不包括管理員和krbtgt等默認帳戶。默認情況下,會獲取5%的kerberoastable用戶。
獲取5%的kerberoastable用戶,并顯示Verbose輸出:
Set-Kerberoasting -Verbose獲取kerberoastable域中的10個隨機用戶:
Set-Kerberoasting -VulnerableUsersCount 10獲取kerberoastable bufu用戶,并顯示Verbose輸出:
Set-Kerberoasting -Users bufu -Verbose將提供的用戶列表設置為kerberoastable 用戶,并顯示Verbose輸出:
Set-Kerberoasting -Users ("bufu", "pepe") -VerboseSet-BadACLs
該函數首先授予Chads組對域管理員的常見權限,然后授予Degens組對Chads組的常見權限。最后,它將Degens組的一些用戶的常見權限授予Normaies組的一些用戶。
創建存在安全問題的ACL并顯示Verbose輸出:
Set-BadACLs -VerboseSet-PSRemoting
該函數首先將GPO配置為允許WinRM通過TCP端口5985連接到加入域的系統,然后通過GPO啟用PS遠程處理。
啟用PS遠程功能并顯示Verbose輸出:
Set-PSRemoting -Verbose總結
以上是生活随笔為你收集整理的如何使用ADLab搭建活动目录实验环境来练习渗透测试技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【安全漏洞】CVE-2021-42287
- 下一篇: 【网络安全】针对 HTTP/2 协议的H