Come fanno i servizi di accorciamento dell'URL come impedire in modo ostile gli attacchi ddos? [chiuso]

0

Sto lavorando su un progetto che deve abbreviare gli URL a circa ~ 25 caratteri di lunghezza. Sono in grado di creare id enigmistici che si associano a un URL di lunghezza completa e lo persistono in un DB. La mia unica preoccupazione è come posso impedire a qualcuno di generare casualmente tali id e bombardare il mio servizio.

Qualche suggerimento?

    
posta Blue 11.12.2016 - 18:42
fonte

4 risposte

1

Se non hai bisogno di un accesso, l'indirizzo IP è l'unico modo in cui puoi limitare le richieste. Se richiedi o consenti l'accesso, puoi anche limitare l'account. È normale, ad esempio, limitare il numero di chiamate a un servizio in un determinato periodo (ora, giorno), in particolare su un piano gratuito, quindi è possibile fornire un'opzione di tariffa più elevata per gli account a pagamento.

Probabilmente vorrai anche avere un monitor di servizio completo in esecuzione in modo da poter individuare picchi insoliti nelle richieste su più indirizzi IP. Questo è tipico degli attacchi più subdoli che usano le botnet in modo che ogni singolo IP sorgente stia funzionando al di sotto del limite.

    
risposta data 11.12.2016 - 19:02
fonte
2

Potresti richiedere prova di lavoro , richiedendo che ogni invio sia allegato con una prova di lavoro, una stringa che quando viene aggiunta all'URL originale, produce una stringa che, quando è stata sottoposta a hash, aveva un numero specificato di zeri binari. Il numero di zeri richiesti potrebbe essere configurato in base al carico del sistema.

Questo funziona per ridurre un attacco (D) DOS dall'inquinamento del database con URL di spam. Non protegge dall'attacco DDOS volumetrico, che porterà comunque il tuo servizio verso il basso. Per proteggersi dall'aspetto volumetrico del DDOS, dovrai replicare i tuoi server. Hai bisogno di un server in molte parti del mondo che verificherà che l'invio dell'URL sia valido (la prova di lavoro è valida), prima di inviare la richiesta al database centrale.

Inoltre, potresti anche voler controllare che l'URL espanso esista e sia accessibile prima di accettare l'invio, anche se ci sono dei motivi per cui l'URL che potrebbe non essere risolvibile potrebbe comunque essere utile ad altre persone (es. collegamenti a servizi interni, URL non HTTP).

    
risposta data 12.12.2016 - 01:31
fonte
1

In questa situazione non c'è davvero niente di speciale nei servizi di abbreviazione degli URL. Hai bisogno di guardare alle tradizionali strategie anti-DDOS.

Questa risposta contiene un riepilogo abbastanza informativo su come i principali siti impediscono gli attacchi DDOS. Il controllo degli accessi basato su IP deve prevenire solo contro DOS e questo non può essere d'aiuto se la parte di controllo degli accessi è quella che viene sottoposta a DDOS.

Sommario:  - Acquista una grande capacità di banda  - Acquista una soluzione WAF o / e anti-DDOS affidabile

    
risposta data 12.12.2016 - 03:06
fonte
0

Se un utente o un bot sta tentando di creare troppi URL per i collegamenti indesiderati o un particolare collegamento, è possibile interromperlo utilizzando captcha. Inoltre puoi mettere restrizioni basate su IP sul numero di URL che possono abbreviare.

    
risposta data 11.12.2016 - 23:15
fonte

Leggi altre domande sui tag