Société de Sécurité Informatique - Audit Firewall Appliances
La sécurité informatique - La sécurité des informations

web-traffic-generator, un générateur de trafic web simulant l'activité d'une personne


web-traffic-generator en bref


Un générateur de trafic "organique" HTTP/S

Explications en détail


Juste un simple script Python (mal écrit) qui "navigue" sans but sur Internet en commençant par des rootURL prédéfinis et en "cliquant" au hasard sur des liens sur les pages jusqu'à ce que le clickDepth prédéfini soit atteint.
Je l'ai créé en tant que générateur de bruit à utiliser pour une simulation de réponse aux incidents / de défense du réseau. Le seul problème est que mon environnement de simulation utilise plusieurs périphériques IDS / IPS / NGFW qui ne transmettent pas et ne consignent pas les sous-ensembles TCP simples du trafic pré-enregistré. J'avais besoin que le trafic soit aussi organique que possible, en imitant essentiellement les utilisateurs réels naviguant sur le Web.
Testé sur Ubuntu 14.04 et 16.04 minimum, mais devrait fonctionner sur tous les systèmes sur lesquels Python est installé.


Comment ça fonctionne ?


A peu près aussi simple que ça ...
Tout d'abord, spécifiez quelques paramètres en haut du script ...
L'intervalle entre chaque requête HTTP GET est choisi au hasard entre les deux variables suivantes ...

Dépendances


La seule chose dont vous avez besoin et que vous n'avez peut-être pas, ce sont les "requests". Prenez-les.
sudo pip install requests

Utilisation


Créez d'abord votre fichier de configuration:
cp config.py.template config.py

Exécutez le générateur:
python gen.py

Dépannage et débogage


Pour obtenir plus de données sur ce qui se passe sous le capot, changez la variable Debug dans config.py de False à True. Ceci fournit la sortie suivante
Traffic generator started...
----------------------------
https://github.com/ecapuano/web-traffic-generator

Clcking 5 links deep into 7 different root URLs,
waiting between 5 and 10 seconds between requests.

This script will run indefinitely. Ctrl+C to stop.
requesting: https://digg.com/
Page size: 388840
Data meter: 388840 bytes
Good requests: 1
Bad reqeusts: 0
Sleeping for 6 seconds...
------------------------------------------------------
config.blacklist: ['https://t.co', 't.umblr.com', 'messenger.com', 'itunes.apple.com', 'l.facebook.com', 'bit.ly', 'mediawiki', '.css', '.ico', '.xml', 'intent/tweet', 'twitter.com/share', 'signup', 'login', 'dialog/feed?', '.png', '.jpg', '.json', '.svg', '.gif', 'zendesk', 'clickserve']
URL: 1 / 7 -- Depth: 0 / 5
Choosing random link from total: 221
Link chosen: 64 of 221
requesting: http://nautil.us/issue/54/the-unspoken/physics-has-demoted-mass
Page size: 85012
Data meter: 473852 bytes
Good requests: 2
Bad reqeusts: 0
Sleeping for 7 seconds...
------------------------------------------------------
config.blacklist: ['https://t.co', 't.umblr.com', 'messenger.com', 'itunes.apple.com', 'l.facebook.com', 'bit.ly', 'mediawiki', '.css', '.ico', '.xml', 'intent/tweet', 'twitter.com/share', 'signup', 'login', 'dialog/feed?', '.png', '.jpg', '.json', '.svg', '.gif', 'zendesk', 'clickserve']
URL: 1 / 7 -- Depth: 1 / 5
Choosing random link from total: 16
Link chosen: 0 of 16
requesting: http://shop.nautil.us?utm_source=mainsite&utm_medium=popup&utm_campaign=springsale_2017
Page size: 58467
Data meter: 532319 bytes
Good requests: 3
Bad reqeusts: 0
Sleeping for 5 seconds...
------------------------------------------------------
config.blacklist: ['https://t.co', 't.umblr.com', 'messenger.com', 'itunes.apple.com', 'l.facebook.com', 'bit.ly', 'mediawiki', '.css', '.ico', '.xml', 'intent/tweet', 'twitter.com/share', 'signup', 'login', 'dialog/feed?', '.png', '.jpg', '.json', '.svg', '.gif', 'zendesk', 'clickserve']
URL: 1 / 7 -- Depth: 2 / 5
Choosing random link from total: 93
Link chosen: 88 of 93
requesting: http://shop.nautil.us/rss.php?action=popularproducts&type=rss
Page size: 25106
Data meter: 557425 bytes
Good requests: 4
Bad reqeusts: 0
Sleeping for 6 seconds...
------------------------------------------------------
config.blacklist: ['https://t.co', 't.umblr.com', 'messenger.com', 'itunes.apple.com', 'l.facebook.com', 'bit.ly', 'mediawiki', '.css', '.ico', '.xml', 'intent/tweet', 'twitter.com/share', 'signup', 'login', 'dialog/feed?', '.png', '.jpg', '.json', '.svg', '.gif', 'zendesk', 'clickserve']
URL: 1 / 7 -- Depth: 3 / 5
Choosing random link from total: 18
Link chosen: 15 of 18
requesting: http://shop.nautil.us/may-june-2017/
Page size: 62543
Data meter: 619968 bytes
Good requests: 5
Bad reqeusts: 0
Sleeping for 9 seconds...
------------------------------------------------------
config.blacklist: ['https://t.co', 't.umblr.com', 'messenger.com', 'itunes.apple.com', 'l.facebook.com', 'bit.ly', 'mediawiki', '.css', '.ico', '.xml', 'intent/tweet', 'twitter.com/share', 'signup', 'login', 'dialog/feed?', '.png', '.jpg', '.json', '.svg', '.gif', 'zendesk', 'clickserve']
URL: 1 / 7 -- Depth: 4 / 5
Choosing random link from total: 70
Link chosen: 16 of 70
requesting: http://shop.nautil.us/my-test/
Page size: 206
Data meter: 620174 bytes
Good requests: 6
Bad reqeusts: 0
Sleeping for 7 seconds...
^CException on URL: http://shop.nautil.us/my-test/ -- removing from list and trying again!

La dernière URL tentée fournit un bon exemple de moment où une URL particulière émet une erreur. Nous l’ajoutons simplement à notre tableau config.blacklist en mémoire et continuons à naviguer. Cela empêche une URL connue incorrecte de retourner dans la file d'attente.

Téléchargement



Partager cet article

Envoyer cet article par Email ! Imprimer cet article ! Exporter cet article en PDF ! Facebook Twitter Google Bookmarks

SecuriteInfo.com est une entreprise française de sécurité informatique. Nous proposons différentes solutions matérielles et prestations de services permettant de sécuriser les données des Systèmes d'Information d'entreprises ou de collectivités. Notre périmètre d'intervention couvre l'intégralité de votre système d'information : Sécurité périmétrique, réseaux, accès distants, VPN, solutions anti-spam et anti-malwares, différents audits réseaux et systèmes, vérification de la politique de sécurité, hébergement sécurisé ...
Facebook SecuriteInfo.com
Twitter de SecuriteInfo.com
Github de SecuriteInfo.com
Calculs scientifiques distribués contre les maladies, équipe SecuriteInfo.com
Profil Virustotal de SecuriteInfo.com
© 2004-2019 - Tous droits réservés - SecuriteInfo.com