Drupal è sicuro contro gli attacchi di login a forza bruta?


9

Un attacco a forza bruta è un tentativo di ottenere un accesso non autorizzato a un sito Web generando e immettendo continuamente varie combinazioni di password. Questa attività viene generalmente eseguita dal software di automazione (un "bot") che cerca messaggi di successo o di errore e continua a provare nuove password fino a quando non riceve un messaggio di successo.

Drupal 7 è sicuro contro di esso per impostazione predefinita? qual è la configurazione più sicura per questo? Quale modulo può aiutarmi per un accesso più sicuro?


1
La risposta dipende dal tipo di attacco di cui stai parlando. Intendi un attacco di forza bruta in cui l'attaccante indovina che l'utente "admin" ha una password di "Password1" e quindi indovina che la password è "javagod"?
Greggles,

sì, come titolo della domanda attacco di forza bruta :(
Yusef

Risposte:


12

Come puoi vedere nel codice, la funzione user_login_final_validate registra un evento flood. Ciò significa che se uno stesso IP tenta di connettere un utente / password di accesso molte volte saremo "vietati" per un po '.

Questa è una delle protezioni che offre Drupal. Un altro, e penso che se succede al tuo sito web lo noterai molto velocemente, è il token CSRF che Drupal genera per ogni modulo.

Ciò significa che il bot attaccante dovrebbe generare il modulo, quindi ottenere il token e associarlo al modulo di invio. Ciò richiede molto tempo e probabilmente scoraggerà l'attaccante. Ma prima vedrai il tuo server iniziare a diventare più caldo.


per il modulo di login di simulazione basta copiare / incollare il modulo di login di drupal. è possibile testarlo, se si copia / incolla html di un altro sito di drupal nel file di test locale (solo che l'azione del modulo è assolutamente reindirizzata a domain.com/user/ login ), eseguilo localmente riempilo con un utente valido e passa vedi accesso !!!!!
Yusef,

Questo modulo funzionerà finché Drupal sarà il token (e il modulo) memorizzati nella cache del suo database. Una volta scaduta la cache, il modulo non funzionerà.
yvan,

Ho cancellato la cache ma il lavoro continua
Yusef

1
La protezione CSRF può essere disabilitata ed è disabilitata nel modulo di accesso. Inoltre è disabilitato nel modulo di ricerca. Ma, come affermato da Yvan, la protezione dalle inondazioni impedisce attacchi di forza bruta sulla forma stessa. Ciò non impedirebbe un attacco distribuito da qualcuno che avesse accesso a una botnet, ma l'analisi del registro (qualcosa come Droptor) che cerca accessi non riusciti ripetuti per lo stesso utente lo risolverebbe.
Greggles,

3

Oltre alle buone misure che Drupal 7 implementa per fermare i tentativi di accesso, suggerirei di installare il modulo Spambot , che si occupa specificamente dei nuovi tentativi di registrazione dell'utente.

Ad ogni nuova registrazione utente, quel modulo interrogherà il server Stop Forum Spam per vedere se l'utente che sta tentando la registrazione è un bot noto.

Se lo desideri, puoi contribuire a bloccare lo spam del forum con i tentativi di registrazione del tuo sito web.


3

C'è il controllo dell'inondazione

Questo progetto ha lo scopo di aggiungere un'interfaccia di amministrazione per le variabili nascoste di controllo delle inondazioni in Drupal 7, come i limitatori dei tentativi di accesso e eventuali variabili nascoste future.

Le funzioni per definire e interagire con il sistema centrale di controllo delle inondazioni

Il sistema di allagamento ci offre tre funzioni:

flood_register_event($name, $window = 3600, $identifier = NULL)

Registrare un evento per l'attuale visitatore del meccanismo di controllo delle inondazioni.

flood_clear_event($name, $identifier = NULL)

Fai dimenticare al meccanismo di controllo delle inondazioni un evento per l'attuale visitatore.

flood_is_allowed($name, $threshold, $window = 3600, $identifier = NULL)

Verifica se l'utente è autorizzato a procedere con l'evento specificato. Fondamentalmente, controlliamo se un utente ha accesso chiamando flood_is_allowed. Se restituisce FALSO, lancia un 'Accesso negato'. Ogni volta che un utente esegue l'azione, chiamiamo flood_register_event.

Per impostazione predefinita controlla l'indirizzo IP dell'utente. Ma potremmo passare qualche altro identificatore univoco come l'id utente.

Sopra copiato da Gioco con il sistema di inondazioni di Drupal


1
Per favore, non copiare e incollare dal Web senza una corretta attribuzione
Clive

1
@Clive mi occuperò di questo d'ora in poi. Ed è quello che voglio trasmettere però.
Niksmac,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.