2009-02-22 13 views
29

Recentemente ho deciso di crittografare il mio log di ingegneria utilizzando la funzione di codifica di Xim: X . Ho annotato la password, ma evidentemente ho immesso in errore qualcosa o ho incasinato qualcosa perché decrittografare il file dà solo un inganno senza senso a . A peggiorare le cose, tutti i i miei backup sono in qualche modo corretti (non chiedere, non sono sicuro di come).Crittografia Vim: come romperlo?

Non ho intenzione di scusarmi: so che ho incasinato. In questo momento voglio che lo si concentri su come posso risolvere il casino che ho fatto.

Ecco che cosa ho provato:

  1. Usa vimzipper per avvolgere il file crittografato in un lampo in modo che possa essere incrinato dai cracker zip standard come fcrackzip, zipcracker, pkcrack, Advanced Zip Password Recovery , ecc. Sfortunatamente questo non ha funzionato. Ho recuperato una riga di testo in chiaro dal file utilizzando le informazioni rimanenti dai registri nel mio VIMINFO, ma l' non ha l'offset nel file per il testo in chiaro recuperato. Indipendentemente da ciò, lo zip cracking non ha funzionato, anche per un semplice file di test con una password vim di tre caratteri.

    (vedi http://zeus.phys.uconn.edu/refs/crackers/vimzipper.c)

  2. Recupero del file di swap non ha funzionato. Quando ho riaperto il file crittografato con la password errata, vim ha sovrascritto lo "buono" file di scambio .

  3. Eseguire unixcrypt-breaker con un ampio database di testo in chiaro (~ 30 libri da Project Gutenberg) come dati di riferimento. Ciò si traduce in incomprensione , anche se ho seminato solo unixcrypt-breaker con il testo in chiaro ripristinato. Inoltre, non riesco a rompere nemmeno un semplice file di test crittografato con vim utilizzando questo metodo. (FYI, I am stripping l'intestazione magica VimCrypt ~ 01! Prima di eseguire la decodifica e lo spoglio utilizzando vim in modalità PASTE quindi non lo faccio altrimenti modificare il contenuto del file).

  4. Immagino disperatamente ogni password e errore ortografico che riesco a immaginare. I hanno trascorso almeno sei ore a indovinare cosa potrei avere il scritto erroneamente. :)

Al fine di cercare rapidamente le password da un programma, ho provato la compilazione una vecchia copia di UNIX di crypt/makekey, ma il risultato di che non è la stesso lo stesso file vengono codificati usando vim di -x crittografia e la stessa password.

Se qualcuno può aiutare, lo apprezzerei moltissimo. In caso contrario, grazie per la lettura di . :)

+18

In qualche modo, spero che tu non abbia successo per tutti amor mio ... –

+1

recupera la copia che mantieni nel backup? – Zoredache

+1

@Zoredache, i backup sono tutti irrecuperabili, anche parzialmente. Ho provato. @Darryl - Capisco cosa intendi. Devo dire, tuttavia, che la crittografia di Vim è basata sulla crypt UNIX, che è un sistema di enigma a rotore singolo. Questo è ben noto per essere fragile. Anche i documenti di Vim lo avvertono. – Jurgen

risposta

21

Dal VIM documentation:

  • L'algoritmo utilizzato è fragile. Una chiave di 4 caratteri in circa un'ora, una chiave di 6 caratteri in un giorno (su un PC Pentium 133). Ciò richiede che tu conosca del testo che deve apparire nel file.Un esperto può romperlo per qualsiasi chiave. Quando il testo è stato decodificato, significa anche che la chiave può essere rivelata, e altri file crittografati con la stessa chiave possono essere decifrati.

Se fosse possibile su un Pentium 133, penso che tu abbia una buona possibilità. :)

Vorrei utilizzare #vim per chiedere dettagli sull'algoritmo o sfogliare il codice sorgente per capire come funziona la crittografia e quindi scrivere un programma di crittanalisi.

6

Non sono sicuro se questo può aiutare:

Spiega come rompere un file crittografato con "cripta", potrebbe dare un punto di partenza (almeno con le vecchie versioni di vi , la crittografia era basata sulla cripta).

4

Questo antico newsgroup post ha avuto un problema simile al vostro:

Il mio problema era che avevo accidentalmente crittografato uno script utilizzando VI e non riuscivo a ricordare la chiave. molte grazie a tutti quelli che hanno risposto.

Suggerimenti sono stati i seguenti:

  • uso vi -x e indovinare la chiave (avevo provato senza successo)
  • scrivere un programma che effettua una chiamata cripta e cerca le combinazioni di tasti probabili. la persona che ha suggerito questa calcola ci vorrebbero circa 5 minuti per rompere
  • scaricare CWB (interruttori cripta banco di lavoro) formano gli archivi che contribuirà a rompere
  • inviare il problema al sci.crypt.newsgroup tra cui il primo 128 byte del file dopo la crittografia e questi byte prima della crittografia (se potessi ricordare) e qualcuno nel gruppo potrebbe rompere per me
  • ri-tipo lo script

Un presepe si dispone verso rottura questo è ciò che la password "dovrebbe" essere stata. Quindi, anche se avevi un errore di battitura casuale, sarebbe comunque leggermente simile alla tua password prevista. Forse potresti iniziare da lì, scrivere un programma per generare tutte le possibili combinazioni della tua password prevista con aggiunte a 1 o 2 caratteri.

In ogni caso, che bel esercizio/diversione!

9

È possibile che si verifichino problemi di corruzione dei dati oltre ai problemi di crittografia?

Se avessi intenzione di usare la forza bruta, penso che avrei scritto un algoritmo che avrebbe iniziato a provare tutte le varianti delle password che avrei potuto usare prima di passare agli attacchi di dizionario. Eppure, dopo aver ascoltato la tua storia - ho questa sensazione fastidiosa che non hai dimenticato la tua password, ma piuttosto c'è stato un problema di corruzione dei dati da qualche parte lungo la strada che ha incasinato la tua password/crypttext/cryptokey/qualunque.

+2

Sai, sembra ovvio ora che lo dici, ma potresti avere assolutamente ragione. Questo spiegherebbe alcune cose. Faccio frequenti backup, ma non controlli di integrità. Non è malware (eseguo scansioni periodiche), ma è molto probabile che abbia un problema di corruzione dei dati. Lo esaminerò. Grazie per l'aiuto. – Jurgen