web-dev-qa-db-fra.com

Comment simuler des attaques DDoS depuis Internet?

L'idée derrière les tests de sécurité est simple. Vous voulez savoir ce qu'un pirate peut faire - vous engagez un expert en sécurité qui agit comme un pirate pour voir jusqu'où il peut aller. Vous voulez savoir ce qu'un administrateur maléfique peut faire - vos experts en sécurité obtiennent des privilèges d'administrateur et font son travail de cette façon.

Je suis conscient qu'il existe d'autres et peut-être de meilleures façons d'effectuer un audit, mais ce sont des approches courantes qui fonctionnent. Malheureusement, cela devient difficile lorsque la menace n'est pas une seule personne ou une équipe de pirates, mais un réseau de bots distribué qui vous envoie des requêtes plus ou moins intelligentes. Comment pouvez-vous tester un tel scénario? Disons que mon infrastructure est prête et je suis convaincu que mes systèmes peuvent résister à une certaine pression due à une attaque DDoS. Maintenant, je veux vérifier mes attentes et effectuer un test DDoS à partir d'Internet.

Où puis-je obtenir légalement un simulateur DDoS? Je ne veux pas acheter des ressources d'un bot-net illégal et je veux seulement travailler avec des experts dans ce domaine. Y a-t-il des entreprises qui effectuent de tels tests pour vous ou pouvez-vous au moins louer des systèmes suffisamment puissants pour simuler une attaque DDoS? Je suis conscient des problèmes juridiques tels que l'information de toutes les parties impliquées, comme les fournisseurs et autres - cette question porte sur la manière dont un tel test peut être effectué. Je suis également pas à la recherche d'une liste d'entreprises qui peuvent le faire, je suis intéressé par l'état de l'art dans ce domaine et les services disponibles sur le marché.

22
Demento

Je pense que vous recherchez l'utilisation d'un générateur de paquets et d'un nombre correspondant de systèmes générant des paquets pour correspondre à la charge que vous recherchez. Utilisez des adresses IP valides aléatoires pour les adresses source des paquets et vous devriez vous retrouver assez ennuyé quand vient le temps de filtrer.

Vous pouvez faire tout cela sans jamais en envoyer un peu sur le lien de votre FAI. Si vous obtenez DDOS de telle manière que la bande passante soit maximisée plutôt que les services, votre FAI devra étouffer le trafic avant qu'il n'atteigne votre lien.

17
Jeff Ferland

Vous ne recherchez pas d'entreprises capables de le faire, mais vous souhaitez connaître les services disponibles? Pouvez-vous clarifier?

Ce que vous demandez vraiment, c'est un test de charge dans ce cas particulier. Combien d'utilisateurs (accédant le plus possible) les serveurs peuvent-ils supporter? À quel seuil tout cela se termine-t-il? Fondamentalement, vous commencez avec un petit nombre "d'utilisateurs" et vous augmentez jusqu'à ce que le site abandonne.

Chaque fois que nous exécutons des tests comme celui-ci, nous utilisons des agents de test de charge Visual Studio hébergés sur Amazon, ce qui nous donne une assez bonne idée des systèmes qui répondront. Il existe bien sûr de nombreuses alternatives à Visual Studio - c'est exactement ce que nous utilisons.

3
Steve

J'ai fait des tests de charge sur les applications voip, y compris la simulation de DDoS, sans jamais faire passer de trafic en dehors du laboratoire de test.

Une autre réponse mentionne les générateurs de paquets. Vous pouvez acheter ou louer de l'équipement pour ce faire (par exemple, des smartbits), ou vous pouvez écrire du code pour générer le trafic dont vous avez besoin. Le testeur de charge Web d'un pauvre homme est aussi simple qu'une boîte Linux (ou une poignée d'entre eux) avec un tas d'interfaces réseau différentes configurées (pour simuler plusieurs sources de trafic) et plusieurs scripts curl (ou autres) pour frapper votre application Web. Vous pouvez devenir aussi sophistiqué que vous le souhaitez - votre générateur de paquets pourrait être une application multithread émettant des paquets bruts (voir libnet ) pour varier les sources et les types de paquets. Ajoutez la charge en ajoutant des boîtes (ou, si vos boîtes sont liées à la bande passante au lieu de liées au processeur, ajoutez une carte réseau).

2
bstpierre

Il existe deux types de stratégies de protection DDoS et chacun répond différemment aux différents types de charges. Vous devez donc rendre votre test réaliste pour le type de trafic contre lequel vous souhaitez vous protéger.

Capacité écrasante
Un mécanisme de défense consiste simplement à avoir plus de capacité que votre attaquant. C'est très simple et très robuste, mais aussi très cher. Pour tester ce type de système, vous pouvez simplement utiliser n'importe quel ancien générateur de charge car vous testez simplement la capacité de vos serveurs à supporter de fortes charges de trafic.

Identifier et déposer
Un autre mécanisme populaire consiste à identifier le trafic DDoS et à l'empêcher d'atteindre vos serveurs. C'est plus facile, moins cher et beaucoup plus fragile que ce qui précède. Dans ce cas, tester signifie tester à la fois la quantité de trafic qui peut être examinée et abandonnée, ainsi que la qualité des techniques d'examen. Pour tester cela, vous devez trouver un vrai logiciel DDoS à tester (google Gootkit ddos system par exemple pour trouver du code). Louez ensuite quelques dizaines de serveurs virtuels pendant un certain temps auprès de divers fournisseurs de cloud et exécutez votre attaque. Plus vous testez de systèmes DDoS, plus vous pouvez faire confiance à vos mesures de prévention.

1
tylerl

Beaucoup de FAI proposent cela dans le cadre de leur capacité de test de charge. Les sociétés de protection DDoS ont également tendance à fournir un test de charge en tant que service.

1
Rory Alsop