Cosa può fare uno sviluppatore di applicazioni Web per proteggere le informazioni degli utenti da potenti avversari come la NSA o la Cina

7

Alcuni servizi di intelligence ben finanziati con dipendenti potenzialmente inaffidabili intercettano e archiviano dati crittografati per anni, nella speranza di incrinarli con la tecnologia del futuro. Cosa posso fare per renderlo più difficile per loro, e come posso limitare la portata di un attacco riuscito? Uso già SSL e memorizzo le password come hash salato, con sale unico. Io crittaggio i dati privati usando le chiavi più grandi che gli strumenti a disposizione consentono, ma non ho idea di quanta differenza faccia con un computer quantistico .

Alcune idee che mi sono venute in mente:

  • Invia alcuni suoni crittografati / lorem ipsum / supporti casuali prima e dopo le richieste HTTPS reali.
  • Implementa uno pazzo PGP su uno schema HTTPS. Lo scambio di chiavi pubbliche avviene durante la prima vera richiesta HTTPS, dopo alcuni falsi scambi. Le chiavi false sono conservate e utilizzate per comunicazioni false.

Come probabilmente puoi dire, non sono un ricercatore di sicurezza, sviluppo solo applicazioni web per una piccola startup. Ho appena scoperto OWASP grazie alla barra laterale "domande correlate", lo leggerò.

    
posta Dan Ross 11.09.2013 - 08:34
fonte

3 risposte

7

As you can probably tell, I'm not a security researcher, I just develop web apps for a small startup.

Questa è la tua risposta proprio lì. Non essere un Dave un inventare il tuo schema di crittografia. Basta attenersi a protocolli noti che sono stati ampiamente studiati. Sembra che tu stia già facendo questo.

Diciamo che la NSA ha backdoor in ogni singolo protocollo di crittografia (è solo un'ipotesi, probabilmente non è vero, quindi rilassati ...). Cosa ti fa pensare che la NSA che assume un sacco di persone molto intelligenti non possa rompere il tuo schema casalingo?

Continua a fare quello che hai fatto e sarai sicuro come lo sarai mai.

    
risposta data 11.09.2013 - 08:39
fonte
3

implementa HTPS in un modo sicuro :

  • SSL + PFS (perfetto segreto in avanti) sembra la via da seguire; si trattava di hashing salting per la protezione tramite password

  • usa una configurazione che non rientra negli scenari di attacco recenti più recenti (BREACH, CRIME, BEAST); il suggerimento su cipher-suite dipende dalla tua base utente e dall'implementazione utilizzata

  • esegui il tuo sito completamente in HTTPS, usa HSTS - intestazioni e https - reindirizza su http

  • ATTENZIONE dei suggerimenti che troverai sui pacchetti di crittografia ecc; prova QUALSIASI configurazione SSL di cui non sei sicuro con ssllabs.com

  • c'è dell'altro, ma i suggerimenti dipendono dall'implementazione.

risposta data 11.09.2013 - 09:48
fonte
1

Come detto prima, implementa SSL / TLS in modo corretto. Fornire l'autenticazione e la riservatezza è importante.

Detto questo, sei uno sviluppatore web. Quindi scrivi il codice, alcuni consigli utili

  • Dai un'occhiata a OWASP Top 10: link
  • Nella fase di test del tuo ciclo di sviluppo web dovresti includere test di integrazione della sicurezza utilizzando il proxy Zap
  • Se utilizzi un framework esistente, iscriviti alla mailing list (di sicurezza) e tieniti aggiornato.
  • Segui le best practice relative all'uso di password, schemi di sicurezza esistenti ecc.
  • Sviluppa da zero pensando alla sicurezza (vedi ZapProxy).
risposta data 11.09.2013 - 10:14
fonte

Leggi altre domande sui tag