Va bene usare solo username / password per proteggere una pagina di amministrazione per la moderazione di un sito web?

2

Esiste una pratica standard per proteggere una pagina di amministrazione per un'applicazione scritta in angular e nodejs o solo in generale? La pagina di amministrazione approverebbe / vieterebbe gli utenti e modererebbe i commenti.

Dovrebbe essere rivolto verso il Web, accessibile solo tramite un nome utente / password? O qualcosa di carino come ssh solo con l'inoltro X11?

In questo momento sono l'unico amministratore da quando ho scritto il software, ma alla fine potrei permettere ad altri di aiutare a moderare usando la loro combinazione di username / password. Questo potrebbe significare che gli utenti non tecnologici potrebbero usarlo, quindi ssh-only potrebbe essere troppo complesso.

C'è qualcosa di specifico sul server che dovrei fare per la pagina di amministrazione? Distribuirò su un server Linux (server Ubuntu).

    
posta fanhats 11.03.2015 - 20:26
fonte

3 risposte

1

Penso che sia perfetto avere un pannello con il lato del web a condizione che:

  1. Non è ipotizzabile, ad esempio www.example.com/admin . Non voglio che gli utenti famigerati tentino la forza bruta per due motivi:
    • Increase the brute-force succede.
    • Se hai un criterio di blocco dell'account in atto, quale dovresti, non vuoi essere bloccato da utenti noti.
  2. Utilizza password complesse che non saranno password di dizionario standard.
  3. Utilizza l'autenticazione fuori banda insieme al normale sistema di autenticazione. Ciò impedisce la forza bruta e il blocco dell'account.
  4. Limita il pannello di amministrazione a indirizzi IP specifici come il tuo indirizzo di subnet interno e accessibile solo tramite VPN, questo dovrebbe darti un ulteriore livello di protezione. Maggiori informazioni su questo: link .
  5. E HTTPS dovrebbe essere lo standard , se il cookie non ha il flag sicuro e la proprietà solo HTTP impostati e l'amministratore naviga su una pagina dopo aver effettuato l'accesso e non essersi disconnesso e questa pagina contiene uno script iniettato malevolo, un là XSS, può portare al furto del cookie e probabilmente l'autenticazione viene effettivamente resa inutilizzabile insieme agli attacchi di bypass CSRF ecc. Quindi, IMO, HTTPS dovrebbe essere implementato in tutta l'applicazione.
  6. Se ci sono più amministratori e il sistema di autenticazione ha un backb db SQL , utilizza query parametrizzate .

Questo è tutto ciò a cui riesco a pensare in questo momento. Il link che ho postato con il mio quarto punto dovrebbe darti maggiori informazioni.

    
risposta data 12.03.2015 - 16:53
fonte
0

Molte applicazioni si basano su una semplice combinazione nome utente / password. Questa non è la tecnica di cui dovresti preoccuparti, ma come la si implementa.

Devi assicurarti che le password siano abbastanza forti da non essere indovinate. Non dovrebbero essere archiviati in testo normale nel tuo database nel caso in cui vengano compromessi. Inoltre, si desidera evitare l'intercettazione della password (o degli hash) mediante una pagina di accesso HTTPS configurata.

Si applicano altre raccomandazioni relative alla password (non riutilizzare la password, ecc.)

Se sei veramente preoccupato del metodo, puoi aggiungere altro / usare altri modi per autenticare gli utenti (uso dell'autenticazione a 2 fattori, openid, ...)

    
risposta data 11.03.2015 - 20:42
fonte
0

Per siti di basso valore, nome utente e password sono ok. Ci sono molti siti che non valgono la pena di hackerare e dove il rischio / costo di un compromesso per te è abbastanza basso rispetto al costo di proteggerlo.

Per la maggior parte dei siti, tuttavia, è necessario richiedere l'uso di HTTPS o VPN quando si eseguono funzioni amministrative. Esistono ora alcune autorità di certificazione SSL che forniscono gratuitamente certificati di base convalidati dal dominio che sono considerati attendibili da tutti i principali browser, quindi non c'è davvero alcuna scusa per non usare SSL quando serve la sicurezza.

Per siti di alto valore, oltre alla crittografia della comunicazione, è necessario anche l'autenticazione a più fattori. Potrebbe essere necessario richiedere un certificato client o una password monouso o un token hardware. Ciò aumenta la difficoltà di amministrazione, ma questo è un riflesso di quanto tieni alla sicurezza.

È sempre un equilibrio tra sicurezza e usabilità.

    
risposta data 12.03.2015 - 01:47
fonte