taibeihacker
Moderator
PTH(Pass The Hash) 攻击
1 概述
獲取一台主機的本地管理員組成員賬號的口令NTLM 後,不需破解獲取口令明文,使用PTH 方式,將管理員賬號及NTLM 注入當前會話作為憑據,利用該憑證可以滲透獲取周圍主機的管理權限對方主機需存在相同的賬號,且是管理員組成員
在Windows NT 5.x 系統中,管理員組賬號的網絡登錄均能獲取系統管理權
在Windows NT 6.x 系統及更高的版本中,管理員組(SID非500)賬號的網絡登錄不能獲取系統管理權限,administrator(SID為500)賬號的網絡登錄能獲取系統管理權
這類攻擊適用於:
域/工作組環境
可以獲得hash,但是條件不允許對hash 爆破
內網中存在和當前機器相同的密碼
2 UAC
用戶帳戶控制(User Account Control) 是Windows Vista(及更高版本操作系統)中一組新的基礎結構技術,可以幫助阻止惡意程序(有時也稱為'惡意軟件')損壞系統,同時也可以幫助組織部署更易於管理的平台。使用UAC,應用程序和任務總是在非管理員帳戶的安全上下文中運行,但管理員專門給系統授予管理員級別的訪問權限時除外。 UAC 會阻止未經授權應用程序的自動安裝,防止無意中對系統設置進行更改。
用戶帳戶控制(UAC)是新版Windows 的核心安全功能,也是其最常被人誤解的眾多安全功能當中的一種。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\FilterAdministratorToken,UAC就是通過上面的註冊表鍵值來判斷,默認設置為0。如果設置為1,則SID 為500 的管理員也不能通過網絡登錄的方式獲取高權限。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\LocalAccountTokenFilterPolicy,如果在註冊表中有這個鍵值,並且設置為1,則所有的管理組成員都可以通過網絡登錄獲取高權限。且管上面的一個表項FilterAdministratorToken 的值。
3 攻击
mimikatz 的pth 功能需要本地管理員權限,這是由它的實現機制決定的,需要先獲得高權限進程lsass.exe 的信息對於8.1/2012r2,安裝補丁KB2871997 的Win 7/2008r2/8/2012,可以使用AES keys 代替NT hash
使用mimikatz 先獲取hash:
1
2
privilege:debug
sekurlsa:logonpasswords
得到hash 後
3.1 工作组
1sekurlsa

微軟也對pth 打過補丁,然而在測試中發現,在打了補丁後,常規的Pass The Hash 已經無法成功,唯獨默認的Administrator (SID 500) 賬號例外,利用這個賬號仍可以進行Pass The Hash 遠程ipc 連接。
3.2 域内用户
前提是:域用戶為本地管理組成員1
sekurlsa

域內用戶不受補丁影響。
4 KB2871997
Changes to this feature include: prevent network logon and remote interactive logon to domain-join ed machine using local accounts…
安裝KB2871997 補丁後,其他方面並沒有太多的變化。補丁會給本地賬號添加一個S-1-5-113 的SID,為管理組中的本地賬號添加一個S-1-5-114 的SID,這樣方便通過域策略進行管理,例如從域策略中全面禁止這類賬號的網絡登錄。
5 针对 RDP 的 hash 传递攻击
說起hash 傳遞攻擊(pth),想到一般的都是psexec wce mimikatz 等直接執行命令。本節紹了一種利用mimikatz + NThash 來啟動mstsc.exe 實現遠程登陸windows 桌面的方法,對不能執行命令又破解不出密碼的環境有很大的幫助。
其原理(條件)是遠程目標需要使用受限管理模式(Restricted Admin Mode),因為此模式下支持kerberos 認證,所以能使用hash 來登陸。
1
sekurlsa

如果受限管理模式被禁用,使用如下命令開啟:
1
mimikatz.exe 'sekurlsa


在彈出的powershell 窗口修改註冊表:
1
2
Enter-PSSession -Computer Target
New-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Lsa' -Name 'DisableRestrictedAdmin' -Value '0' -PropertyType DWORD -Force
6 防御
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Policies\System\FilterAdministratorToken,系統中一個有Admin ApprovalMode,UAC 就是通過上面的註冊表鍵值來判斷,默認設置為0。如果設置為1,則SID 為500 的管理員也不能通過網絡登錄的方式獲取高權限。