1. 程式人生 > 其它 >PSattack:一個滲透測試中使用的萬能框架——還是有些過時啊,屬於整合類工具,將其他好用的模組放到一起

PSattack:一個滲透測試中使用的萬能框架——還是有些過時啊,屬於整合類工具,將其他好用的模組放到一起

PSattack:一個滲透測試中使用的萬能框架

嘶吼RoarTalk 網路安全觀察者

導語:這段時間以來,以powershell為載體,大牛們開發出了很多有趣的東西。比如Invoke-Phant0m日誌清除器就在其中。這篇文章就是用來講述一個將這些滲透測試指令碼集合起來的框架:PSattack。


什麼是PSattack?

PSattack是一個開源的,將滲透測試實踐過程中所有的指令碼結合起來形成的框架。更有趣的是使用攻擊型別的PowerShell指令碼並不會呼叫powershell.exe,而是通過.NET框架直接呼叫的PowerShell。另外,所有的模組都是加密處理的,並且不會寫入到硬碟當中,所以在一定程度上可以做到免殺。

PSattack中包括超過100個命令,通過以下工具中的模組進行提權,掃描,以及資料過濾:

PowerSploit
Nishang
Powercat
Inveigh
Invoke-TheHash
PowershellMafia

psattack提供的功能

以下是psattack中包含的模組

程式碼執行

1. Invoke-Shellcode.ps1:將shellcode注入到對應你選的pid程序當中,或者在正在執行的powershell程序中。
2. Invoke-WMICommand.ps1:在目標計算機上使用WMI作為C2通道執行powershell指令碼
3. Invoke-WMIExec.ps1:使用NTLMv2繞過hash認證並且在目標機器上執行WMI命令。
4. Invoke-SMBExec.ps1:使用NTLMv2繞過hash認證並且使用SMBExec方式執行命令。其中Invoke-SMBExec支援SMB1,SMB2,以及未簽名的SMB。

資料方面

1. Invoke-NinjaCopy.ps1:此指令碼可以通過開啟一個讀方法,然後進入磁碟比如C盤,然後將檔案從NTFS中拷貝出來。不過這一指令碼需要使用者具有管理員許可權。
2. PowerView.ps1:這一指令碼可以資料匯出為.csv格式
3. Do-Exfiltration.ps1:使用此指令碼從目標站點獲取資料
4. Powercat.ps1:netcat的powershell版本
5. KeePassConfig.ps1:將KeePass觸發器在KeePass.config.xml或者Find-KeepPassConifg中新增或刪除。
6. Invoke-SMBClient.ps1:此指令碼通過繞過hash值驗證執行基本的檔案共享任務。這一模組只支援未進行簽名的SMB2.1版本。注意,這一指令碼與windows客戶端中執行,相對較慢。

檔案方面

1. VolumeShadowCopyTools.ps1:列出本地所有的碟符,以及其路徑。還可以建立,掛載一個新卷,或者將將其刪除。
2. PowerView.ps1:除了上述的這一指令碼的描述,還包含s Set-MacAttribute, Copy-ClonedFile, Get-PathAcl, Find-InterestingFile, Get-NetFileServer, Get-DFSshare, Invoke-FileFinder這些命

提權,留後門方面

1. powerview.ps1:列舉當前使用者所使用的代理伺服器,以及WPAD中的內容。以便獲取代理伺服器。
2. Gupt-Backdoor.ps1:Gupt是nishang中的後門,可以通過特定的網絡卡名稱執行命令以及指令碼程式。
3. PowerUp.ps1:支援Get-ServiceFilePermission, Write-HijackDll, Get-RegAlwaysInstallElevated, Get-UnattendedInstallFile, Get-Webconfig 以上命令。

獲取密碼方面:

1. Invoke-Mimikatz.ps1:這一指令碼利用MImikatz2.0以及Invoke-ReflectivePEInjection指令碼將mimikatz注入記憶體當中。這就可以讓你直接從記憶體中獲取資料,不需要在磁碟中寫入任何檔案。這一指令碼有一個ComputerName引數,可以同時對多個計算機執行命令。
2. Get-GPPPassword.ps1:可以檢測到通過組策略首選項推送的明文密碼或者其他資訊。
3. PowerUp.ps1:這一指令碼可以從系統上的applicationHost.config對加密應用進行解密以及找到虛擬目錄的密碼。
4. Get-WLAN-Keys.ps1:nishang中用於將本地wifi密碼匯出的指令碼
5. Inveigh.ps1:此指令碼可以通過欺騙LLMNR/NBNS對傳送到SMB的HTTP(s)或者SMB資料包進行捕獲。包括的命令為:Invoke-Inveigh, Get-Inveigh, Get-InveghLog, Get-InveighNTLM, Get-InveighNTLMv1, Get-InveighNTLMv2, Get-InveighStats, Stop-Inveigh, Watch-Inveigh.
6. Invoke-mimikittenz.ps1:使用windows函式ReadProcessMemory()從記憶體中挖掘更多資訊。
7. KeePassConfig.ps1:支援Find-KeePassConfig, Get-KeePassConfigTrigger, Add-KeePassConfigTrigger, Remove-KeePassConfigTrigger這些命令。
8. Invoke-Kerberoast.ps1:此指令碼將對本機請求可管理的服務票據,並且返回它提取的hash值。

所以你以後在滲透測試過程中只需要這一個工具就可以了。不過惟一的一個問題是如果在我的電腦下載PSattack,防毒軟體就會對它進行查殺。但是如果把PSattack框架單獨放到白名單中,他所攜帶的惡意指令碼就不會被查殺。這一框架還包括一個PSattack build tool,這一工具負責實時更新模組,下載檔案、加密檔案等操作。

工具地址:


本文翻譯自:PSAttack: A Offensive PowerShell Console! - PenTestIT,如若轉載,請註明來源於嘶吼: PSattack:一個滲透測試中使用的萬能框架 更多內容請關注“嘶吼專業版”——Pro4hou
釋出於 2017-07-14 10:29