Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
mallory — Proxy HTTP/HTTPS su SSH | Kitploit
Strumenti/GitHubGitHub/justmao945/mallory
Utilità GenericheProxy Web e IntercettazioneSicurezza di Rete
GitHubjustmao945/mallory

mallory

Proxy HTTP/HTTPS su SSH

Vedi Repository
32467652 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

mallory

Proxy HTTP/HTTPS su SSH.

Installazione

  • Macchina locale: go install github.com/justmao945/mallory/cmd/mallory@latest
  • Server remoto: serve il nostro vecchio amico sshd

Configurazione

File di configurazione

Il percorso predefinito è $HOME/.config/mallory.json, può essere impostato all'avvio del programma

mallory -config path/to/config.json

Contenuto:

  • id_rsa è il percorso del nostro file di chiave privata, può essere generato con ssh-keygen
  • local_smart è l'indirizzo locale per servire il proxy HTTP con rilevamento intelligente dell'host di destinazione
  • local_normal è simile a local_smart ma invia tutto il traffico attraverso il server SSH remoto senza rilevamento dell'host di destinazione
  • remote è l'indirizzo remoto del server SSH
  • blocked è un elenco di domini che necessitano del proxy, tutti gli altri domini si collegheranno direttamente al loro server
{
  "id_rsa": "$HOME/.ssh/id_rsa",
  "local_smart": ":1315",
  "local_normal": ":1316",
  "remote": "ssh://[email protected]:22",
  "blocked": [
    "angularjs.org",
    "golang.org",
    "google.com",
    "google.co.jp",
    "googleapis.com",
    "googleusercontent.com",
    "google-analytics.com",
    "gstatic.com",
    "twitter.com",
    "youtube.com"
  ]
}

L'elenco dei domini bloccati nel file di configurazione verrà ricaricato automaticamente quando aggiornato, e puoi farlo manualmente:

# send signal to reload
kill -USR2 <pid of mallory>

# or use reload command by sending http request
mallory -reload

Configurazione di sistema

  • Imposta sia il proxy HTTP che HTTPS su localhost con porta 1315 per usare con la lista dei blocchi
  • Imposta le variabili d'ambiente http_proxy e https_proxy su localhost:1316 per l'uso nel terminale

Ottenere il nome del suffisso corretto per un dominio

mallory -suffix www.google.com

Un semplice comando per inoltrare tutto il traffico per la porta data

# installalo: go get github.com/justmao945/mallory/cmd/forward

# tutto il traffico attraverso la porta 20022 verrà inoltrato a destination.com:22
forward -network tcp -listen :20022 -forward destination.com:22

# puoi fare ssh su destination:22 attraverso localhost:20022
ssh root@localhost -p 20022

TODO

  • restituire un errore HTTP quando impossibile connettersi
  • aggiungere automaticamente l'host all'elenco quando impossibile connettersi
  • supportare più server remoti

Contenitore Docker

Considerando il seguente file di configurazione:

$ cat mallory.json
{
  "id_rsa": "/tmp/id_rsa",
  "local_smart": ":1315",
  "local_normal": ":1316",
  "remote": "ssh://[email protected]:22"
}

Puoi eseguire il contenitore (zoobab/mallory) montando il file di configurazione, la chiave SSH, e mappando le 2 porte:

$ docker run -v $PWD/mallory.json:/root/.config/mallory.json -p 1316:1316 -p 1315:1315 -v $PWD/.ssh/id_rsa:/tmp/id_rsa zoobab/mallory
mallory: 2020/03/30 16:51:10 main.go:22: Starting...
mallory: 2020/03/30 16:51:10 main.go:23: PID: 1
mallory: 2020/03/30 16:51:10 config.go:103: Loading: /root/.config/mallory.json
mallory: 2020/03/30 16:51:10 main.go:30: Connecting remote SSH server: ssh://[email protected]:22
mallory: 2020/03/30 16:51:10 main.go:38: Local normal HTTP proxy: :1316
mallory: 2020/03/30 16:51:10 main.go:48: Local smart HTTP proxy: :1315

Il mio caso d'uso era connettersi a un cluster Kubernetes (Openshift) installato dietro un bastion SSH:

$ export http_proxy=http://localhost:1316
$ export https_proxy=https://localhost:1316
$ oc login https://master.mycluster.zoobab.com:8443
Authentication required for https://master.mycluster.zoobab.com:8443 (openshift)
Username: bhenrion
Password:
Login successful.
Scarica lo strumento