
OWASP Raider: a novel framework for manipulating the HTTP processes of persistent sessions

OWASP Raider a été développé dans le but d'améliorer les tests d'authentification web. Aujourd'hui, il a évolué et peut être utilisé pour toutes sortes de processus HTTP avec état. Il abstrait l'échange d'informations client-serveur sous forme d'une machine à états finis. Chaque étape comprend une requête avec des entrées, une réponse avec des sorties, des actions arbitraires à effectuer sur la réponse, et des liens conditionnels vers d'autres étapes. Ainsi, une structure en forme de graphe est créée. Raider vous permet de simuler des systèmes complexes tout en vous permettant de contrôler chaque donnée que vous entrez et sortez du système.
Raider définit un DSL pour décrire le flux d'informations entre le client et le serveur pour les processus HTTP. Chaque étape du processus est décrite par un Flow, qui contient la requête avec des entrées, la réponse avec des sorties, et des actions arbitraires incluant des liens vers d'autres Flows :

Enchaîner plusieurs Flows ensemble peut être utilisé pour simuler tout processus HTTP avec état. Les FlowGraphs indiquent le point de départ. Ils peuvent être placés sur n'importe quel Flow. Un FlowGraph exécute tous les Flows du lien jusqu'à ce que Success/Failure soit retourné ou s'il n'y a plus de liens.

La configuration de Raider s'inspire d'Emacs. Hylang est utilisé, un LISP basé sur Python. LISP est utilisé en raison de sa propriété « Le Code est une Donnée, la Donnée est du Code ». Grâce à la magie des macros LISP, la génération automatique de configuration devient simple. La flexibilité est dans son ADN, ce qui signifie qu'il peut être étendu indéfiniment avec du code réel. Vous pouvez l'utiliser par exemple pour créer, stocker, reproduire et partager facilement des preuves de concept pour les attaques HTTP. Avec Raider, vous pouvez également rechercher dans vos Projets, filtrer par hyfile, Flows, FlowGraphs, etc... Ensuite, vous exécutez soit une seule étape, soit une chaîne d'étapes, afin de pouvoir automatiser et exécuter des tests sur n'importe quel processus HTTP.

Vous pouvez l'utiliser par exemple pour créer, stocker, reproduire et partager facilement des preuves de concept pour les attaques HTTP. Avec Raider, vous pouvez également rechercher dans vos Projets, filtrer par hyfile, Flows, FlowGraphs, etc... Ensuite, vous exécutez soit une seule étape, soit une chaîne d'étapes, afin de pouvoir automatiser et exécuter des tests sur n'importe quel processus HTTP.
Vous pouvez également rechercher dans vos Projets, filtrer par hyfile, Flows, FlowGraphs, etc… Ensuite, vous exécutez soit une seule étape, soit une chaîne d'étapes, afin de pouvoir automatiser et exécuter des tests sur le processus HTTP.