Can .htaccess e .htpasswd mi proteggono davvero?

13

Voglio creare una sorta di wiki personale in cui posso memorizzare varie informazioni sensibili. Tuttavia, per renderlo portatile al 100% e semplicemente convinente, lo voglio mettere su Internet. Sono sicuro che a questo punto molti di voi sono come "JESUS NO! ARE FOR REAL?" - da qui la domanda.

L'utilizzo di un prompt di accesso sarebbe davvero sufficiente per la sicurezza per me avere password e forse anche informazioni bancarie lassù? So che esiste l'ovvia forza bruta che è l'avvertenza a molti sistemi di login, ma quanto affidabile potrebbe essere il mio? Se ciò non fosse sufficiente, c'è un modo per crittografare il mio sito web?

    
posta n0pe 11.07.2011 - 13:52
fonte

4 risposte

16

I can store various sensitive information. However... I want to put it on the Internet

Yikes, come si dice ...

In questo scenario specifico, ci sono tre problemi:

  1. La sicurezza del tuo meccanismo di autenticazione. Probabilmente hai bisogno di usare TLS per proteggere questa risorsa, dal momento che l'autenticazione di base http è davvero semplice: testo semplice, su Internet. Allo stesso modo, digest auth invia digesti su Internet. Non molto meglio. C'è anche la minaccia di intercettazione a meno che non si utilizzi TLS, quindi in pratica TLS (https) è praticamente obbligatorio. Il prossimo passo è se le ripetizioni infinite sono una possibilità - in altre parole, puoi prevenire un attacco di dizionario? SSL funziona molto bene, ma a meno che non si utilizzino certificati lato client, chiunque può connettersi e provare ripetutamente le password, quindi è necessario assicurarsi che qualsiasi server Web che si sta utilizzando sia configurato per rifiutare le richieste dopo X tentativi. Quello che hai a disposizione e può far rispettare dovrebbe informare la tua decisione di procedere con questo.
  2. La sicurezza del meccanismo di archiviazione. Se stai utilizzando un VPS, il tuo provider di hosting può quasi sicuramente accedere e sicuramente avere accesso al tuo VM. Se hai un server dedicato, questo è un altro problema. Se stai pianificando su un host condiviso, tieni presente che un compromesso in uno degli altri 1000 siti Web in esecuzione da quella casella potrebbe potenzialmente esporre le tue informazioni. Crittografare quel contenuto richiederà di avere a disposizione una chiave per decodificarlo, sul server (questo problema si applica) o sul client (si applica il problema sottostante). Ancora una volta, quale configurazione hai a disposizione dovrebbe informare la tua decisione.
  3. La sicurezza del sistema su cui accedi a tali informazioni. Una domanda simile è spuntata qualche tempo fa per uno scopo diverso, ma fondamentalmente non c'è modo di costringere il sistema client a dimenticare in modo sicuro le informazioni, a meno che tu non abbia il pieno controllo su di esse. Come utente finale e utilizzando TLS, hai un'idea più chiara di cosa sta succedendo, ma anche così, se dovessi scegliere di accedere a tali informazioni in un cyber-cafe, ci sono degli scenari in cui è possibile recuperare tali dati. È probabile che qualsiasi lettura memorizzi localmente tali informazioni per l'elaborazione e debba decrittografarle localmente, anche se non è memorizzata nella cache, quindi esiste una minaccia di intercettazione. Quanta parte di una minaccia pensi che sia di nuovo dovrebbe essere qualcosa che prendi in considerazione.

Quanto di un problema questi fattori dipende dalla quantità di informazioni che stai conservando per te e in che misura pensi di essere a rischio. Ad esempio, i miei principali conti bancari online e di negozio online puntano tutti a una sola email. Non sarei a mio agio ad accedere a nessuno di questi, o ai loro dettagli di accesso, su un computer cyber cafè. Tuttavia, ho un'e-mail giornaliera per le mailing list e altre informazioni di questo tipo che sono molto meno critiche se compromesse. Quindi avrei meno problemi usando quello. Se il rischio è accettabile per te nel memorizzare queste informazioni su un wiki, fallo.

    
risposta data 11.07.2011 - 16:22
fonte
4

Non importa quanto cripti il tuo sito. Una volta che il server pensa che stai provando ad arrivare al contenuto, lo mostra a te. La crittografia protegge solo da persone che ignorano l'autenticazione.

Tuttavia, puoi crittografare il contenuto senza fornire al server alcuna chiave. Ciò significa che il server non è in grado di decrittografare il file dopo l'autenticazione; lo manda solo così com'è. Quindi si utilizza una chiave personale per decrittografarla localmente. In questo modo, hai una protezione a due livelli (cioè autenticazione / crea file utilizzabile)

Questo ha i seguenti vantaggi:
* nome utente / password limitano il download di file crittografati
* i file sono crittografati, quindi anche se qualcuno indovina o ruba una password, non può usarla.
* sei l'unica persona a possedere la chiave necessaria per aprire il file. Affinché una persona non autorizzata possa aprirla, sarebbe necessario rubare fisicamente il tuo computer / disco rigido o iniettare malware per ottenere la tua chiave.

Modifica

Ho appena notato la parte "wiki" della tua domanda. Ovviamente, se si desidera lavorare in remoto sul file mentre è sul server, non funziona in questo modo. In tal caso, la tua chiave personale deve essere sul server e il software wiki deve sapere come decrittografarlo.

    
risposta data 11.07.2011 - 15:04
fonte
1

@Mike e Ninefingers danno entrambe delle buone risposte.

Would using a login prompt really be enough security for me have passwords and maybe even banking information up there?

No. Lasciami dire così. Utilizzeresti un bancomat se notassi diverse persone sedute in auto con videoregistratori addestrati sul pad PIN? Questo è quello che stai facendo quando usi solo un nome utente e una password per consentire l'accesso ai tuoi dati bancari. Molte persone stanno guardando i dati inviati dal server a te e viceversa. È lo stesso con le password. Qualsiasi informazione inviata tra un server e te senza la crittografia è probabilmente controllata da qualcuno.

I know there is the obvious brute force which is the caveat to many login systems, but how reliable could mine be?

Il tuo sistema potrebbe essere molto sicuro se eri disposto a spendere per l'ordine di $ 10.000 (10 ^ 4 per la localizzazione), oltre ai costi operativi correnti. Tuttavia, immagino che tu stia cercando di farlo gratuitamente, o forse una piccola somma mensile. In tal caso, esiterei a memorizzare qualcosa di più sensato che la tua lista della spesa sulla tua wiki.

If that wouldn't be enough, is there some way of encrypting my website?

Sì, ci sono molte possibilità per la crittografia, ma come sottolinea @Mike, se vuoi che il server remoto faccia più di un semplice file, hai bisogno di una quantità significativa di infrastrutture. Torna al bancomat ... Aggiungendo la crittografia sarebbe come mettere una schermata di privacy tra te e le persone sospette con i registratori. Che si prenderà cura di qualcuno che vede il tuo numero PIN, ma del bancomat è racchiuso in cartoncino rigido, non appena esci, qualcuno strappa l'ATM e prende tutti i soldi.

Internet è comodo, ma è un ambiente ricco di minacce. Acquista invece un'unità flash USB, installa software di crittografia portatile e software Wiki portatile e esegui regolarmente il backup.

    
risposta data 12.07.2011 - 09:35
fonte
0

LastPass sarebbe sicuramente una soluzione migliore per archiviare piccoli bit di informazioni sensibili come password, numeri di carte di credito e numeri di conti bancari su Internet (aka Nel cloud), anche se nulla può proteggerti da un computer Internet Cafe malevolo. Anche l'uso di LastPass con una password unica esporterà tutte le password del sito che usi mentre sei sul computer, così come tutte le informazioni che ti sono state inviate quando sei loggato.

    
risposta data 18.05.2012 - 02:54
fonte

Leggi altre domande sui tag