Posso proteggere in modo sicuro gli archivi 7z protetti da password?

4

Dopo aver letto la domanda e le risposte di questo e questo , sono partito con un impressione generale da quello scorso che le cerniere erano considerate non sicure e il modo insicuro di condividere i dati.

Continuo a pensare che i file compressi protetti da password possano essere resi sicuri. Quindi fammi capire bene con questo

Scenario specifico

  • Stai utilizzando il comando 7z , versione 9 o successiva, in una macchina Linux. Non zip . Non rar .
  • Correggimi se ho torto, ma 7z usa AES-256 di default quando protetto da password, non importa se il formato dell'archivio sarà .zip o .7z
  • Vuoi creare un file autoestraente archive.exe dalla directory dir1 e vuoi che tutti i contenuti dei file, i nomi e tutte le intestazioni siano crittografati, quindi esegui

    7z a -mhe=on -psecretpassword -sfx archive.exe dir1

  • La password utilizzata era molto strong, si suppone entropia
  • Hai condiviso in modo sicuro la password con il destinatario del file. Solo voi due conoscete la password
  • Inoltre, condividi in modo sicuro l'hash SHA1 dell'archivio
  • Ora rendi questo file disponibile per la persona da scaricare

Dico questo

  • La persona può estrarre questo archivio anche in una macchina Windows senza alcun programma solo con la conoscenza della password
  • I nomi dei file nella directory criptata dir1 non possono essere letti se non conosci la password
  • L'archivio non può essere manomesso con la sostituzione dei file perché anche i nomi dei file e le intestazioni sono stati crittografati
  • Qualsiasi temperamento verrebbe notato se la persona ha controllato SHA1 dopo aver scaricato
  • In termini di riservatezza dei nomi e dei contenuti dei file, questo è sicuro quanto comprimere la directory con qualsiasi cosa (zip, rar, tar.gz) e applicare openssl aes-256-cbc su di esso
  • L'autoestrazione non aggiunge vulnerabilità e, se lo facesse, semplicemente rimuovendo -sfx o cambiandolo in -t7z lo risolverebbe, anche se in questo caso la persona avrebbe bisogno di 7-zip per estrarlo

Correggi o no?

    
posta Strapakowsky 31.05.2013 - 03:22
fonte

2 risposte

6

La domanda: un archivio autoestraente crittografato con una perfetta implementazione di AES, usando una chiave con sufficiente entropia sicura contro un intercettatore o un man-in-the-middle attivo, se un hash crittografico dell'archivio e la chiave sono trasmessi su un canale separato che si presume essere sicuro?

Sì.

Tuttavia, alcune di queste ipotesi potrebbero non valere nel mondo reale.

Esaminando la prima ipotesi, c'è una domanda rilevante su questo forum da quasi un anno: link

Secondo la discussione, 7z usa una strong funzione di derivazione della chiave basata su password e AES in modalità CBC (che va bene, perché stiamo assumendo che un hash SHA1 dell'archivio venga verificato prima che venga tentata la decifrazione; smettere di riempire gli attacchi di oracolo).

Tuttavia, la discussione precedente evidenzia anche la mancanza di documentazione e il codice di difficile lettura in 7z. Non sono a conoscenza di alcuna sostanziale crittanalisi eseguita su 7z; quindi, quando lo utilizzi, alla fine ti stai affidando al suo sviluppatore per aver corretto tutta l'implementazione crittografica.

    
risposta data 31.05.2013 - 15:09
fonte
3
  • The archive cannot be tampered with file substitution because filenames and headers were also encrypted
  • The self-extraction adds no vulnerability

Questo non è corretto: se il caso d'uso previsto è eseguendo l'archivio autoestraente, qualsiasi hacker in grado di manomettere il file .exe può anche modificare il codice di autoestrazione per modificare i file decompressi in qualsiasi modo che ritenga opportuno . (Naturalmente, può anche fare molto di più, come registrare la password o installare una backdoor)

Quindi, se ti trovi in una situazione in cui la manomissione è persino lontanamente possibile, gli archivi autoestraenti sono una pessima idea.

    
risposta data 02.08.2013 - 19:50
fonte

Leggi altre domande sui tag