Utilità per creare un elenco di esclusione IP? [chiuso]

2

Ci sono delle utility là fuori che possono aiutare nella costruzione di un elenco di esclusione IP?

Scenario: recentemente ha subito un attacco di forza bruta in cui 50000 tentativi di accesso falliti provenivano da una moltitudine di indirizzi IP diversi.

Domanda: Esiste un'utilità là fuori che può richiedere un elenco di indirizzi IP e aiutare a creare un elenco di esclusione IP. IE ... Prendi le cose in comune dalla lista IP e costruisci un intervallo IP da bloccare?

Dichiarazione di non responsabilità: la sicurezza non è il mio background. Vengo da un passato di programmazione e ho lavorato con i computer per oltre 20 anni, ma mai con un focus primario sulla sicurezza. Quindi mi scuso in anticipo se la mia domanda non è all'altezza dei professionisti della sicurezza.

    
posta Jim P. 29.05.2015 - 18:28
fonte

3 risposte

3

Hai un requisito univoco. Ma la tua base potrebbe essere spenta.

Userò un incidente che ho avuto questa settimana come esempio. Ho scoperto un attacco da 50 indirizzi IP da un blocco di IP gestiti da una società di hosting di Hong Kong. Avrebbe senso, quindi, bloccare tutti gli IP da questa società di hosting, almeno temporaneamente. Credo che questo sia simile allo scenario che hai in mente.

Per fare ciò, dovresti eseguire un whois sugli IP, collegarli a un titolare comune e popolare il tuo elenco con il blocco di IP. Programmaticamente, questo è banale se il caso d'uso è come definito.

Ma cosa succede se il proprietario del blocco IP è AWS? Blocca tutti gli AWS? Per alcuni siti, questa potrebbe essere una cosa valida da fare. E se l'aggressore rilevasse il blocco (è una caratteristica comune nelle botnet) e passerà a un altro sito di hosting; aggiungi questo nuovo blocco alla lista? Proiettate questo processo nel futuro, dove ora state bloccando tutti i principali provider di hosting e anche alcuni ISP (se le botnet sono passate ai personal computer e il vostro script ha aggiunto i blocchi Comcast IP). Ora hai fatto il tuo servizio.

Il problema, quindi, non è il processo di aggiunta di blocchi IP, ma il problema non è aggiungere troppo.

Il modo tipico in cui i professionisti della sicurezza affrontano questo problema è bloccare ogni IP individualmente. Fail2ban è un'utilità comune per farlo.

Oppure, se sai che alcuni paesi non utilizzano normalmente il tuo servizio, puoi utilizzare i database geo-IP e solo consentire (o bloccare) determinati paesi.

    
risposta data 29.05.2015 - 20:27
fonte
1

Penso che sia necessario affrontare questo problema da una direzione diversa. Ci sono numero di problemi con la soluzione proposta

  • È un incubo di manutenzione.
  • È una soluzione reattiva piuttosto che proattiva. Aggiungerai solo IP bloccati una volta gli IP hanno cercato di entrare. Potrebbe essere troppo tardi
  • Ignora il problema che molti IP vengono assegnati dinamicamente. Solo perché tu sono stati attaccati ieri da un IP specifico, non è necessario che lo ritenga lo stesso l'individuo sta usando quell'IP oggi.

Generalmente, il punto di partenza con i firewall tradizionali è che inizi a bloccare tutto e quindi iniziare ad aprire solo ciò che è necessario. Quando questo inizia ad essere un problema, identifica frequentemente una debolezza dell'architettura sottostante.

Ad esempio, se ho un server, inizierò bloccando tutte le connessioni in entrata e poi guardare i servizi che sto correndo e valutare dove devono essere accessibili a partire dal. Se sto eseguendo un server web, ha bisogno di accedere da ovunque lo fa hai solo bisogno di accedere dalla mia rete aziendale o da una sottorete all'interno di quella rete?

Se è necessario l'accesso da qualsiasi luogo, consentirò a tutti gli indirizzi IP di accedere esso. Se è necessario accedere solo dalla rete della mia azienda, consentirò solo l'accesso da tale intervallo IP.

A seconda dell'architettura del sistema e dei requisiti dell'applicazione, un firewall di base potrebbe non essere sufficiente Ad esempio, hai un'applicazione web che in generale richiede essere aperti al mondo, ma ci sono URL all'interno dell'applicazione utilizzata per amministrazione che si desidera bloccare solo su un numero limitato di indirizzi IP. Nel In questo caso, l'applicazione fornirà il livello di controllo degli accessi di cui hai bisogno cioè serve un errore proibito di pagina per le richieste da qualsiasi IP di cui non fa parte l'elenco degli amministratori o si dispone di un firewall dell'applicazione che si trova tra il tuo boarder firewall e la tua applicazione.

A volte, il problema è che devi fornire l'accesso amministratore a una risorsa, ma non sai da che indirizzo IP verrà l'utente. In queste situazioni, tu potrebbe dover insistere sul fatto che l'amministratore persona utilizzi una società VPN, che consentirà loro connettersi da qualsiasi luogo, ma limiterà il loro indirizzo client a un intervallo all'interno la tua sottorete VPN. In alternativa, è possibile utilizzare una qualche forma di proxy inverso in cui il l'amministratore deve connettersi tramite un proxy autenticato e l'indirizzo IP per la risorsa è limitata all'IP del proxy. Il problema con questa soluzione è che probabilmente ora vedrai attacchi contro il tuo proxy. Tuttavia, questo potrebbe essere OK come hai aggiunto un altro strato di complessità che può fornire sufficiente protezione - ora gli aggressori devono prima compromettere il tuo proxy e comprometterti servizio di amministrazione (supponendo che utilizzino password diverse ovviamente).

Esistono anche firewall che forniscono servizi IDS + IPS. L'IDS cerca comportamento sospetto, ad esempio un numero elevato di richieste di autenticazione non riuscite a a servizio. Quando viene rilevato un evento di questo tipo, l'IPS viene attivato per inserire un valore temporaneo blocco / rilascio sull'IP sorgente. Tali sistemi possono essere molto buoni, ma possono essere difficili per essere configurato correttamente, spesso hanno bisogno di un po 'di manutenzione e devono essere monitorato per rilevare problemi con cose come i falsi positivi che potrebbero causare traffico legittimo bloccato.

L'altro approccio che puoi fare è valutare il limite della risorsa. Tentativi di forza bruta dipende dal poter eseguire un numero elevato di tentativi in un breve periodo. Se tu limitare il limite della richiesta, gli attacchi di forza bruta possono diventare poco pratici perché prendono troppo lungo. Un esempio comune è quello di avere una pagina di accesso in cui viene utilizzato un ritardo rispondere ai tentativi di accesso falliti. All'aumentare del numero di tentativi di accesso, il aumenti di ritardo.

Invece di bloccare gli indirizzi, sarei alla ricerca di una soluzione che ti permetta di farlo permetti solo indirizzi specifici alle aree che ti interessano. Se questo non è possibile perché è qualcosa come una pagina di accesso generale per i vostri clienti e voi non posso sapere da che indirizzi IP provengano, quindi guarderei cosa IDS / IPS aggiuntivi che potresti essere in grado di implementare nell'applicazione o livello del firewall dell'applicazione. Se non hai altra soluzione che bloccare gli indirizzi IP, Sarei alla ricerca di una soluzione che consenta il blocco temporaneo e che rimuoverà i blocchi dopo un periodo accettabile. Per essere efficace, il blocco deve essere un processo automatizzato - blocco degli indirizzi IP dopo un tentativo di attacco a forza bruta di solito chiudendo il cancello dopo che il cavallo è scappato.

    
risposta data 30.05.2015 - 03:15
fonte
-1

Se il tuo sito web è per lo più accessibile dagli Stati Uniti e non ti interessa il resto del mondo, allora è molto semplice ed efficace consentire solo i blocchi IP per paese e negare il resto del mondo.

È quello che faccio.

    
risposta data 30.05.2015 - 04:46
fonte

Leggi altre domande sui tag