Je veux fuzz un protocole réseau avec sulley. Le problème est que le port que j'ai besoin de fuzz est choisi dynamiquement par le serveur. J'utilise une fonction pre_send pour contacter le serveur et recevoir le port dynamique. J'ai analysé le numéro de port hors de la réponse en utilisant re. Mais maintenant, je ne suis pas en mesure de mettre ce port comme port de destination pour les données de fuzz, parce que l'affectation du port de destination ...Fuzzing attribué ports dynamiques avec sulley
target = sessions.target("10.10.10.10", 10000)
... déjà a lieu avant la fonction pre_send. De plus, le port peut être différent à chaque test, ce qui le complique encore plus.
Je pensais écrire un script python autonome au lieu de la fonction pre_send, puis changer le port de destination dans le fichier sulley-session et le démarrer ensuite. Mais alors je devrais tuer la session après chaque cas et aussi ce serait très moche.
Est-ce que quelqu'un est déjà tombé sur quelque chose comme ça? Des suggestions?
Je fais du fuzzing RTP. SIP envoie le numéro de port via le protocole de description de session. J'ai réussi à faire fonctionner des choses avec un appel direct SIP à un autre client qui supporte les ports fixes. Mais toute application qui ne permet pas de définir des ports fixes pour RTP est toujours impossible à tester. Merci pour votre aide et je vais poster des demandes de fonctionnalités dès que possible ... dynamo – dynamo