Manipulation du trafic et des protocoles réseaux en userland (partie 1/2)

Magazine
Marque
MISC
Numéro
77
Mois de parution
janvier 2015
Domaines


Résumé
De nombreux outils permettent la manipulation du réseau en userland. Le plus connu est Scapy qui permet de coder, décoder,recevoir et envoyer des trames sur le réseau en fournissant une interface aux RAW sockets. Cet article montre les possibilités offertes en combinant une pile TCP/IP « stateful » basique avec Scapy pour la manipulation et la création de trafic réseau.

1. Introduction

1.1 Objectif

Cet article montre à travers l'implémentation d'une pile TCP/IP « stateful » basique au-dessus de Scapy comment il devient possible de manipuler le trafic d'une machine en profondeur. L'utilisation d'un outil appelé Pystack développé dans ce but permet ainsi en userland de créer et manipuler des connexions réseau tout en s'affranchissant de la dépendance au noyau. En effet, sauf à utiliser certaines options configurables avec setsockopt lors de la création d'une socket classique, on ne possède aucun contrôle sur les actions effectuées sous la couche applicative. L'utilisation d'une pile TCP/IP personnalisée permet de modifier à souhait le comportement des différentes couches réseau (Ethernet, IP, TCP/UDP, etc.). L'utilisation d'une pile « stateful » est particulièrement significative pour les protocoles à états comme TCP, car Scapy ne gère pas le comportement d'un protocole bien qu'il en assure le codage, le décodage, l'envoi et...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Les taxonomies se cachent pour ne pas mourir

Magazine
Marque
MISC
Numéro
113
Mois de parution
janvier 2021
Domaines
Résumé

« Attention, nouveau virus ! » Nombreux sont les articles à nous alerter régulièrement, par cette métonymie, sur l’émergence d’un nouveau malware. Pourtant, le terme de virus a-t-il encore un sens aujourd’hui ? Wannacry était-il un ver, ou un ransomware ? NotPetya, un wiper, ou bien un ver ? Et plus encore, au-delà de l’utilisation de termes et expressions se pose la question de la nécessaire catégorisation des incidents de cybersécurité ; pourquoi, comment, à quelles fins ? Essai (critique) de réponse.

Les difficultés du désassemblage sur ARM

Magazine
Marque
MISC
Numéro
113
Mois de parution
janvier 2021
Domaines
Résumé

Cet article aborde les problèmes spécifiques à l’architecture ARM qui se posent lorsqu’on désassemble un exécutable, c’est-à-dire lorsqu’on l’analyse statiquement pour en produire une représentation en langage assembleur. En effet, les particularités de l’architecture ARM peuvent rendre le désassemblage – déjà habituellement compliqué – particulièrement ardu.

Sûreté mémoire : le temps des cerises

Magazine
Marque
MISC
Numéro
113
Mois de parution
janvier 2021
Domaines
Résumé

L’étude et la compréhension des buffer overflow datent de 1972, et leurs premiers usages documentés de 1988 [1]. Près de 50 ans plus tard, où en sommes-nous ? Il nous faut bien admettre que la situation est déprimante : Microsoft et Google reconnaissent chacun ([2], [3]) que près de 2/3 des attaques utilisent à un moment ou un autre une vulnérabilité mémoire. Le ver Morris, qui n’était au départ qu’une preuve de concept, avait quand même coûté la bagatelle de quelques millions de dollars à l’époque… Aujourd’hui, les coûts sont abyssaux : sur le plan financier bien sûr, mais aussi pour nos vies privées, voire nos vies tout court. Face à ce problème, de nombreuses approches sont possibles : analyse statique du code, instrumentation et vérification à l’exécution, langages « sûrs »… Je vous propose d’explorer dans cet article un vieux concept remis au goût du jour, les capabilities, et tout ce qu’elles pourraient nous permettre de faire.