hacktricks/src/linux-hardening/privilege-escalation/ssh-forward-agent-exploitation.md

1.3 KiB

{{#include ../../banners/hacktricks-training.md}}

Riepilogo

Cosa puoi fare se scopri all'interno di /etc/ssh_config o all'interno di $HOME/.ssh/config questa configurazione:

ForwardAgent yes

Se sei root all'interno della macchina, puoi probabilmente accedere a qualsiasi connessione ssh effettuata da qualsiasi agente che puoi trovare nella /tmp directory

Impersonare Bob utilizzando uno degli ssh-agent di Bob:

SSH_AUTH_SOCK=/tmp/ssh-haqzR16816/agent.16816 ssh bob@boston

Perché funziona?

Quando imposti la variabile SSH_AUTH_SOCK stai accedendo alle chiavi di Bob che sono state utilizzate nella connessione ssh di Bob. Poi, se la sua chiave privata è ancora lì (normalmente lo sarà), sarai in grado di accedere a qualsiasi host utilizzandola.

Poiché la chiave privata è salvata nella memoria dell'agente in chiaro, suppongo che se sei Bob ma non conosci la password della chiave privata, puoi comunque accedere all'agente e usarlo.

Un'altra opzione è che l'utente proprietario dell'agente e root possano accedere alla memoria dell'agente ed estrarre la chiave privata.

Lunga spiegazione e sfruttamento

Controlla il ricerca originale qui {{#include ../../banners/hacktricks-training.md}}