Dove WinSCP memorizza le informazioni o la password del sito? Non riesco a trovarlo in Documents and Settings ...
Dove WinSCP memorizza le informazioni o la password del sito? Non riesco a trovarlo in Documents and Settings ...
Risposte:
Il file di configurazione viene archiviato nel registro di Windows o, se si utilizza la versione portatile, in un file INI. ( Vedi la documentazione. ) L'ubicazione del registro è:
HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2
Puoi sempre esportare le impostazioni in un file INI premendo Export
nella finestra di dialogo delle preferenze.
Nota che le tue password non sono memorizzate nel testo, ma codificate. Sebbene difficile da decifrare, non è impossibile.
Prova questo metodo.
accedi alla tua sessione salvata
vai al menu della sessione
fai clic su genera URL
controlla solo le opzioni di nome utente e password (se hai bisogno del percorso corrente della directory clicca anche su questa opzione)
Sono disponibili più opzioni, URL / Script / .Net Assembly, selezionare desiderato.
clicca su copia negli appunti.
conterrà nome utente e password.
questo è tutto.
Questa è una versione semplificata di Cesar's
ottima risposta e presuppone che la tua password funzioni ancora in SCP.
Creare un file batch chiamato echo.cmd
che contenga quanto segue:
echo %*
pause
Posizionalo in un luogo adatto, come il tuo desktop.
Avvia WinSCP e connettiti al tuo sito. Clicca su Options -> Preferences
:
Nella finestra di dialogo Preferenze, vai a Integration -> Applications
. Sostituisci ciò che era precedentemente nel percorso PuTTY con il percorso del tuo echo.cmd
file batch appena creato . Seleziona anche l'opzione:
Remember session password and pass it to PuTTY (SSH)
Fare clic OK
.
Ora avvia PuTTY da WinSCP.
La password precedentemente memorizzata dovrebbe ora essere visualizzata sullo schermo!
Creare una nuova applicazione console C #, quindi digitare il seguente programma:
namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
foreach (var str in args)
System.Console.WriteLine(str);
System.Console.ReadLine();
}
}
}
Se non sei un programmatore C #, puoi farlo con facilità in qualsiasi altra lingua con cui potresti avere familiarità. Il punto è semplicemente stampare qualunque valore venga passato come argomento al tuo programma. Puoi persino farlo con uno script, se ti è più familiare.
Ora compila il tuo programma e prendi il tuo binario (come ConsoleApplication8.exe). Posizionalo in un luogo adatto, come il tuo desktop.
Ora, se la tua password funziona ancora, avvia WinSCP e connettiti al tuo sito. Fai clic su Opzioni -> Preferenze
Nella finestra di dialogo Preferenze, vai su Integrazione -> Applicazioni. Sostituisci ciò che era precedentemente nel percorso PuTTY con il percorso del tuo binario appena creato. Seleziona anche l'opzione "Ricorda la password della sessione e passala a PuTTY (SSH)".
Fare clic su OK, quindi provare ad avviare PuTTY da WinSCP.
La password precedentemente memorizzata dovrebbe ora essere visibile sullo schermo.
Avevo un caso d'uso molto strano, avevo bisogno di recuperare la mia password, ma i miei amministratori di sistema avevano bloccato il mio ambiente in modo da non poter eseguire file eseguibili non autorizzati e che includessero file .cmd.
La mia soluzione era invece quella di puntare la riga di comando Putty su Notepad ++.
Quando ha funzionato ha detto che "File -pw" non esiste, dovrei crearlo, tu dici di no.
Quindi dice "Il file {la password visualizzata qui} non esiste, dovrei crearlo" e di nuovo tu dici ora, e bam, c'era la password in chiaro.
ps
mostrerebbe le password se fossero specificate sulla riga di comando, anche per i processi secondari, se continuerebbero a funzionare per un po 'di tempo.)
È possibile utilizzare uno strumento come WireShark per "vedere" ciò che accade sul cavo. Voglio dire che è in esecuzione una sessione di acquisizione dei pacchetti (in WireShark) e quindi accedere al server FTP (utilizzando WinSCP, senza crittografia).
Quindi, guardando la sessione registrata in WireShark, si potrebbe facilmente identificare la "discussione" (filtrando ad esempio l'IP di destinazione) e quindi identificando la richiesta: USER blabla, e quindi RICHIESTA: PASS blabla, a livello FTP del "conversazione".
Sono arrivato a questa risposta durante la ricerca di un problema leggermente diverso, tuttavia questo è stato utile e volevo condividere ciò che ho fatto.
Il mio problema era che stavo usando WinSCP con le password salvate in Windows XP in un dominio Active Directory che poi è cambiato. Con il nuovo dominio di Active Directory, anche il mio profilo utente è cambiato e WinSCP non ha mostrato profili di accesso salvati.
Al fine di recuperare i precedenti profili di accesso WinSCP ho fatto quanto segue.
Ha avviato l' regedit
applicazione e ha effettuato la ricerca di tutte le chiavi con nome Martin Prikryl
. Dopo diverse false corrispondenze, ho trovato la chiave con quelli che sembravano i dati di sessione corretti.
Ho quindi esportato la chiave del Registro di sistema della sessione WinSCP utilizzando il regedit
comando export in un file di testo.
Successivamente ho modificato il testo esportato nel file di testo in modo che fosse utilizzato HKEY_CURRENT_USER
come inizio della chiave completa davanti alla sottochiave Software
Successivamente regedit
, ho importato i dati per modificare le chiavi di registro di Windows utilizzate da WinSCP per l'utente corrente.
Queste azioni hanno fatto quanto segue: (1) trovato i dati della sessione di accesso WinSCP per il vecchio profilo utente, (2) fatto una copia di tali dati, (3) modificato la chiave del registro di Windows per consentire un'importazione con regedit
modificare l'utente corrente, (4) importato i dati modificando le voci del registro WinSCP per il profilo utente corrente.
Dopo aver eseguito questa procedura sono stato in grado di accedere al mio server Web con WinSCP.
Probabilmente ci sono un paio di ragioni per cui questo è stato semplice e ha funzionato. Innanzitutto questo PC è stato utilizzato da una sola persona, quindi non è stato condiviso riducendo le false corrispondenze. In secondo luogo, ho avuto i privilegi di amministratore per il PC. Terzo, questo era Windows XP e non Windows 7/8.
Citando le domande frequenti su WinSCP Posso recuperare la password memorizzata nella sessione WinSCP? :
Un modo è recuperare la password è abilitare la registrazione della password nelle preferenze. Vedere Password di registro e altre opzioni di preferenza per le informazioni sensibili . Quindi ispezionare il file di registro della sessione per trovare la password memorizzata.
. 2017-06-13 07:41:11.313 ---------------------------------------------------------------
. 2017-06-13 07:41:11.313 WinSCP Version 5.9.5 (Build 7441) (OS 10.0.15063 - Windows 10)
. 2017-06-13 07:41:11.313 Configuration: HKCU\Software\Martin Prikryl\WinSCP 2\
. 2017-06-13 07:41:11.313 Log level: Normal, Logging passwords
...
. 2017-06-13 07:41:11.313 ---------------------------------------------------------------
. 2017-06-13 07:41:11.313 Session name: My server (Site)
. 2017-06-13 07:41:11.313 Host name: example.com (Port: 22)
. 2017-06-13 07:41:11.313 User name: martin (Password: mypassword, Key file: No)
È inoltre possibile abusare di una funzione Genera URL / codice sessione per recuperare la password salvata. Si noti che simboli speciali nella password potrebbero essere sfuggiti. È molto probabile che la password sia intatta nel codice assembly .NET , in cui vengono evitate solo le virgolette doppie (in tutte le lingue supportate).
Basta impostare il livello di registro al massimo in WinSCP e connettersi al server. I registri contengono una password semplice.