Esistono misure di sicurezza resistenti a un attacco di forza bruta?

7

Non sto parlando in particolare della crittografia, ma della sicurezza nel suo insieme. Ci sono delle misure di sicurezza che possono essere messe in atto per proteggere i dati e / o un sistema in grado di resistere anche a una quantità ipotetica di risorse che si oppone ad esso per un ipotetico periodo di tempo?

Penso che la risposta sia no, ma ho pensato di ricontrollare prima di dirlo apertamente alle persone perché non sono un esperto di sicurezza.

Dovrei sottolineare, non sto chiedendo questo perché ho bisogno di implementare qualcosa. È una curiosità oziosa. Dovrei anche menzionare che sto trattando bene con gli ipotetici qui. Sentiti libero di portare cose come il calcolo quantico nell'equazione se c'è qualche rilevanza.

    
posta gargantuan 17.03.2011 - 10:27
fonte

5 risposte

19

One-Time Pad e Shamir's Secret Sharing sono due esempi di algoritmi crittografici, in cui sono coinvolti alcuni valori segreti, che sono tuttavia immuni alla forza bruta, anche contro gli attaccanti con capacità di calcolo illimitate. La loro caratteristica principale è la "mancanza di ridondanza delle chiavi": non c'è modo di filtrare le chiavi "cattive". Ciò dimostra che OTP richiede che la chiave segreta sia lunga quanto i dati crittografati e che per la condivisione segreta di Shamir la dimensione totale delle "condivisioni" sia persino più lunga dei dati condivisi.

Probabilisticamente parlando, si ottiene la stessa proprietà da una crittografia AES, purché si cripta un singolo blocco e si usi una chiave più grande (es. AES-256 per crittografare un singolo elemento di dati a 128 bit). L'idea è che per un determinato testo cifrato, qualsiasi testo in chiaro può corrispondere (dato C e P , ci sono alcuni tasti K tale che AES K (P) = C ). Quindi l'attaccante non può scegliere il testo in chiaro "giusto", anche se sta esplorando l'intero spazio chiave. Naturalmente, riutilizzare la stessa chiave per qualsiasi altra cosa, anche crittografare un altro blocco di 128 bit con AES, darebbe all'aggressore tutta la ridondanza di cui ha bisogno per filtrare le chiavi, rendendo di nuovo vitale la forza bruta (per il nostro ipotetico attaccante con un computer più grande di una galassia, cioè).

Gli algoritmi che resistono alla forza bruta hanno un'applicazione limitata, proprio a causa della necessità di tasti molto lunghi. In pratica, contro gli attaccanti con tecnologia terrestre, gli attacchi di forza bruta vengono contrastati usando chiavi "abbastanza lunghe". Se si considera che un attaccante può radunare abbastanza potenza di calcolo per eseguire 2 n "operazioni elementari", allora si usano chiavi di almeno n bit ; se temi i computer quantistici, usi i bit 2n (per qualsiasi cosa simmetrica, come la crittografia simmetrica o l'hashing, un computer quantistico potrebbe teoricamente esplorare uno spazio chiave di dimensioni N con sforzo < em> sqrt (N) , ma non meglio, quindi, è sufficiente utilizzare una chiave due volte più grande). Tradizionalmente, abbiamo impostato n = 80 , ma i costanti progressi nella disponibilità della tecnologia stanno cominciando a forzare l'aumento di quel valore, se vogliamo mantenere un margine di sicurezza convincente. Poiché le potenze di due sono buone , è ormai usuale usare n = 128 , sebbene il limite effettivo per l'umanità nel suo insieme (in uno scenario fantascientifico improbabile in cui tutti gli umani cooperano e lavorano per questo obiettivo) possono essere stimati tra 90 e 100.

Gli algoritmi asimmetrici (crittografia asimmetrica, firme ...) sono molto più deboli, in quanto vi sono attacchi noti che sono molto meglio della "forza bruta" - e un computer quantico rende gli attacchi banali, per la maggior parte di essi. Ma dal momento che questa non è più forza bruta, è fuori dalla portata della tua domanda.

    
risposta data 17.03.2011 - 13:03
fonte
7

Copia la mia risposta dalla domanda su SO:
Sì, certo che ci sono.

Gli attacchi di forza bruta possono compiere due cose: "indovinare" una sorta di segreto (ad esempio password, chiave di crittografia, ecc.) e risorse travolgenti (ad esempio inondazioni o Denial of service - DoS).

Qualsiasi contromisura volta a prevenire qualsiasi altra forma di attacco, sarebbe irrilevante per la forza bruta.

Ad esempio, prendere le raccomandazioni standard per la protezione contro SQL Injection: convalida dell'input, stored procedure (o query parametrizzate), oggetti comando / parametri e simili. Cosa vorresti provare a bruteforce qui? Se il codice è stato scritto correttamente, non c'è un "segreto" da indovinare.

Ora, se stai chiedendo "Come prevenire gli attacchi di forza bruta?", la risposta dipenderà da ciò che l'attaccante sta tentando di applicare alla forza bruta. Supponendo che stiamo parlando di bruteforcing di una password / schermata di login, ci sono diverse opzioni: politica di password strong (per renderla più difficile), blocco account (per limitare il tasso di tentativi bruteforce), throttling (di nuovo limita il tasso di tentativo) e altro .

    
risposta data 17.03.2011 - 10:48
fonte
5

Una risposta - non proprio fasulla - è "sì, ce ne sono molti"

Un avvertimento: definisci resistente

La mia opinione è che se riesci a mettere le difese in posizione che fanno sì che un attacco di forza bruta duri abbastanza a lungo per essere rilevato e mitigato, allora hai resistito con successo a quell'attacco.

Nel classico mondo della sicurezza, ciò richiede una difesa approfondita. Calcolare per quanto tempo un attacco del caso peggiore si verificherà in un determinato livello. Se il tuo processo di rilevamento lo raccoglierà entro quel periodo di tempo, puoi fare qualcosa al riguardo.

Riesci a rallentare un attacco? Quando si tenta di attacchi di forza bruta su passcode su dispositivi mobili, se il dispositivo utilizza un algoritmo veramente lento, si ritarda l'attacco. Indipendentemente dal fatto che questo sia utile dipende dai tuoi prossimi passi. Se hai un processo per disabilitare il dispositivo mobile, un ritardo di un paio di ore potrebbe essere sufficiente.

Se per resistenza intendi "non si spezzerà mai" allora la mia risposta dovrebbe essere No.: -)

    
risposta data 17.03.2011 - 17:50
fonte
3

Beh, gli attacchi di forza bruta si riducono essenzialmente a un calcolo probabilistico. Determinate variabili nel calcolo possono essere controllate per ridurre la probabilità di un attacco riuscito, ad es. numero massimo di tentativi (blocco dell'account), dimensione dello spazio di ricerca (complessità della password) ecc. In definitiva, tuttavia, se viene fornito un controllo teorico completo (come si fa nella domanda) rispetto ad altre variabili (tempo), la probabilità alla fine ritorna a 1. Quindi nel mondo reale, sì, ci sono alcuni metodi molto efficaci per ridurre la praticità di un attacco di forza bruta, tuttavia in teoria rimarrà una probabilità statistica remota trascurabile di sfruttamento di successo.

Quanto sopra è inteso essere specifico per la forzatura bruta remota dei sistemi di autenticazione.

    
risposta data 17.03.2011 - 11:17
fonte
0

Stiamo parlando di forzatura bruta di una schermata di accesso o di un hash della password?

Se stiamo parlando di una schermata di accesso, può essere impostata per disabilitare il tuo account dopo 10 tentativi e basta. Dopo 10 tentativi, nemmeno la password corretta lo sbloccherà.

Se hanno l'hash della password, possono lanciare tutte le risorse che vuoi contro. Anche $ 100 in AWS, il motore di calcolo di Amazon, acquisteranno molto più tempo del computer di quanto tu possa permettervi di avere sul posto.

Le persone dicono che cose come questa impiegheranno più tempo rispetto all'età dell'universo per calcolare con le tecnologie esistenti. Sono fermamente convinto che le tecnologie a venire faranno ridere le generazioni future della nostra ignoranza. I computer quantistici sono molto limitati in questo momento, la maggior parte ha solo pochi bit e forse 20-30 nella fascia alta. Quando è perfetto e possiamo avere migliaia di bit che saranno un punto di svolta. Ci saranno più cambi di gioco dopo.

    
risposta data 01.12.2017 - 05:09
fonte

Leggi altre domande sui tag