通過自動指令碼提升Windows許可權
一、簡介
基本上,許可權提升是攻擊者攻陷受害者機器之後的一個階段,他試圖收集與系統相關的關鍵資訊,如隱藏密碼和弱配置服務或應用程式等。所有這些資訊都有助於攻擊者利用漏洞進行攻擊獲得更高許可權的shell。
二、許可權提升向量
以下資訊被視為Windows系統的關鍵資訊:
·作業系統版本
· 安裝或執行的有漏洞的軟體包
· 具有完全控制或修改訪問許可權的檔案和資料夾
· 對映的驅動器
· 潛在的感興趣檔案
· 服務路徑
· 網路資訊(介面,arp,netstat)
· 防火牆狀態和規則
· 執行的程序
· AlwaysInstallElevated登錄檔項檢查
· 儲存的憑證
· DLL劫持
· 計劃任務
在滲透測試中有幾個指令碼用於快速識別Windows系統上的潛在許可權提升向量,我們將詳細說明每個指令碼如何工作。
三、Windows-Exploit-suggester
如果擁有受害者的低許可權meterpreter或命令會話,那麼可以使用Exploit-Suggester。
該模組建議可以使用的本地meterpreter漏洞利用。根據使用者開啟shell的體系結構和平臺以及meterpreter中的可用漏洞來推薦可以使用的漏洞。值得注意的是,並非所有本地漏洞都會被觸發。根據以下條件選擇漏洞:會話型別,平臺,體系結構和所需的預設選項。
正如所看到的,它已經提出了一些針對易受攻擊的目標且可以提供更高許可權shell的後期漏洞利用。
四、Windows Gather Applied Patches
此模組嘗試列舉Windows系統的修補程式,根據WMI查詢的結果:SELECT HotFixID FROM Win32_QuickFixEngineering。
正如所看到的,它還表明目標可能容易受到可以提供更高許可權shell的推薦漏洞的攻擊。
五、Sherlock
它是一個Shell/">PowerShell指令碼,可以快速查詢缺少的本地許可權提升漏洞的軟體修補程式。它也像上面一樣類似於給出建議,目標可能容易受到可以提供更高許可權shell的推薦漏洞的攻擊。
使用以下命令從git hub下載它,並在受害者的meterpreter會話至少執行一次。
由於此指令碼應在power shell中執行,因此請載入power shell,然後匯入下載指令碼。
上面的命令顯示目標可能容易受到可用於獲取高許可權shell的推薦漏洞的攻擊。
六、JAWS
JAWS是PowerShell指令碼,旨在幫助滲透測試人員(和CTFers)快速識別Windows系統上潛在的許可權提升向量。它是使用PowerShell 2.0編寫的,因此可以在Windows 7之後的所有Windows版本上執行。
當前特徵
·網路資訊(介面,arp,netstat)
· 防火牆狀態和規則
· 執行的程序
· 具有完全控制或修改訪問許可權的檔案和資料夾
· 對映的驅動器
· 潛在的感興趣檔案
· 服務路徑
· 最近的檔案
· 系統安裝檔案
· AlwaysInstallElevated登錄檔項檢查
· 儲存的憑證
· 已安裝的應用程式
· 潛在的存在漏洞的服務
· MuiCache檔案
· 計劃任務
有了meterpreter shell後,上傳下載指令碼並使用命令shell執行上傳的指令碼。
它會將關鍵資訊儲存到名為“JAWS-Enum.txt”的文字檔案中
如上所述,JAWS-Enum.txt檔案必須已經儲存了可以導致許可權提升的向量,開啟並檢視結果。
七、PowerUp
PowerUp是一個PowerShell工具,用於協助Windows系統上的本地許可權提升。 PowerUp旨在成為依賴錯誤配置的常見Windows許可權提升向量的重量級程式。
執行Invoke-AllChecks將輸出任何可識別的漏洞以及任何濫用功能的規範。 -HTMLReport標誌還將生成報告的COMPUTER.username.html版本。
當前特徵
服務列舉:
· Get-ServiceUnquoted: – 返回名稱中包含空格的未加引號路徑的服務。
· Get-ModifiableServiceFile: – 返回當前使用者可以寫入路徑或其配置的服務。
· Get-ModifiableService: – 返回當前使用者可以修改的服務。
· Get-ServiceDetail: – 返回指定服務的詳細資訊。
服務濫用:
· Invoke-ServiceAbuse: – 修改易受攻擊的服務以建立本地管理員或執行自定義命令。
· Write-ServiceBinary: – 寫出修補的C#服務二進位制檔案,新增本地管理員或執行自定義命令。
· Install-ServiceBinary: – 將服務二進位制檔案替換為新增本地管理員或執行自定義命令的服務二進位制檔案。
· Restore-ServiceBinary: – 使用原始可執行檔案恢復已替換的服務二進位制檔案。
DLL 劫持:
· Find-ProcessDLLHijack: – 為當前正在執行的程序發現潛在的DLL劫持機會
· Find-PathDLLHijack: – 查詢服務%PATH% DLL劫持機會
· Write-HijackDll: – 寫出一個劫持的DLLrite-HijackDll : – writes out a hijackable DLL
登錄檔檢測:
· Get-RegistryAlwaysInstallElevated: – 檢查是否設定了AlwaysInstallElevated登錄檔項
· Get-RegistryAutoLogon: – 檢查登錄檔中的Autologon憑據
· Get-ModifiableRegistryAutoRun: – 在HKLM autoruns中檢查任何可修改的二進位制檔案/指令碼(或它們的配置)。
現在使用以下命令從git hub下載它,如上所述powerUp是powersploit的模組,因此需要下載powersploit包。