Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
filterforge — Outil de résolution de filtres BPF et de création de paquets basés sur ceux-ci. | Kitploit
Outils/GitHubGitHub/cloudflare/filterforge
Sniffing et Analyse de PaquetsAnalyse des VulnérabilitésRétro-ingénierieAnalyse ForensiqueFuzzingSécurité RéseauAnalyse de MalwareAnalyse de Binaires
GitHubcloudflare/filterforge

filterforge

Outil de résolution de filtres BPF et de création de paquets basés sur ceux-ci.

Voir le dépôt
63420il y a 6 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

filterforge

Ensemble d'outils Python pour le rétro-ingénierie du bytecode Berkeley Packet Filter (BPF). Étant donné des instructions BPF brutes — celles que l'on pourrait extraire d'un échantillon de malware, d'un filtre de capture de paquets ou d'un équipement réseau — filterforge les désassemble sous forme lisible, utilise Z3 pour résoudre l'ensemble des contraintes de paquets qui satisfont un chemin acceptant, puis exploite Scapy pour forger un paquet réseau concret qui passerait le filtre.

En bref : donnez-lui un programme BPF et il vous rendra un paquet entièrement formé (Ethernet, IPv4/IPv6, TCP/UDP/SCTP et au-delà) que le filtre accepte — prêt à être inspecté, sauvegardé au format PCAP ou envoyé sur le réseau.

Il est recommandé d'installer uv pour exécuter cet outil.

Utilisation

Veuillez vous référer aux exemples ci-dessous pour l'utilisation de l'outil ; il est probable que davantage de fonctionnalités soient ajoutées au fil du temps.

CLI

Pour obtenir rapidement des résultats pour un BPF donné, il est plus simple d'utiliser la ligne de commande. En raison de la manière dont certains outils de rétro-ingénierie restituent les données copiées, vous pouvez soit donner une chaîne hexadécimale brute, soit un tableau de valeurs hexadécimales, en utilisant le drapeau -d pour simplement afficher le désassemblage du BPF donné ;

# chaîne hexadécimale
uv run ff -d -b "280000000c00000015002900060800001500000bdd860000300000001400000015000027110000002800000038000000150024003500000015002300e91400001500220043000000150021009c690000150020006c07000015001f0089000000280000003600000015001d0fe91400001500001d0008000030000000170000001500000f11000000280000001400000045001900ff1f0000b10000000e0000004800000010000000150015003500000015001400e91400001500130043000000150012009c690000150011006c0700001500100089000000480000000e00000015000e00e914000015000d009c69000015000c006c07000015000b0c890000001500000b06000000280000001400000045000900ff1f0000b10000000e000000500000001a000000740000000400000024000000040000000c000000000000000700000000000000400000000e000000150000012054454706000000000004000600000000000000"

# tableau de valeurs hexadécimales
uv run ff -d -b "[0x28,0x0,0x0,0xc,0x15,0x0,0x1b,0x800,0x30,0x0,0x0,0x17,0x15,0x0,0x5,0x11,0x28,0x0,0x0,0x14,0x45,0x17,0x0,0x1fff,0xb1,0x0,0x0,0xe,0x48,0x0,0x0,0x16,0x15,0x13,0x14,0x7255,0x15,0x0,0x7,0x1,0x28,0x0,0x0,0x14,0x45,0x11,0x0,0x1fff,0xb1,0x0,0x0,0xe,0x48,0x0,0x0,0x16,0x15,0x0,0xe,0x7255,0x50,0x0,0x0,0xe,0x15,0xb,0xc,0x8,0x15,0x0,0xb,0x6,0x28,0x0,0x0,0x14,0x45,0x9,0x0,0x1fff,0xb1,0x0,0x0,0xe,0x50,0x0,0x0,0x1a,0x54,0x0,0x0,0xf0,0x74,0x0,0x0,0x2,0xc,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x48,0x0,0x0,0xe,0x15,0x0,0x1,0x5293,0x6,0x0,0x0,0xffff,0x6,0x0,0x0,0x0]"

Pour obtenir un aperçu de ce à quoi ressemblerait un paquet réseau s'il était fabriqué à partir du bytecode BPF donné, vous pouvez utiliser le drapeau -c :

uv run ff -c -b "280000000c0000001500000fdd8600003000000014000000150002008400000015000100060000001500002611000000280000003600000015002300fad5000015002200f6e500001500210012e90000150020005fd6000015001f0083e2000015001e0042fb000015001d006db2000015001c00fbf60000280000003800000015001a13fad500001500001a000800003000000017000000150002008400000015000100060000001500001611000000280000001400000045001400ff1f0000b10000000e000000480000000e00000015001000fad5000015000f00f6e5000015000e0012e9000015000d005fd6000015000c0083e2000015000b0042fb000015000a006db2000015000900fbf60000480000001000000015000700fad5000015000600f6e500001500050012e90000150004005fd600001500030083e200001500020042fb0000150001006db2000015000001fbf6000006000000ffff00000600000000000000"
2026-02-09 12:06:23,342 - INFO - Loaded 45 instructions
2026-02-09 12:06:23,342 - DEBUG - Found 50 accepting path(s)
2026-02-09 12:06:23,346 - DEBUG - Path 1 is satisfiable
2026-02-09 12:06:23,347 - INFO - Hexdump:
0000  00 00 00 00 00 00 00 00 00 00 00 00 86 DD 60 00  ..............`.
0010  00 00 00 00 84 00 00 00 00 00 00 00 00 00 00 00  ................
0020  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0030  00 00 00 00 00 00 D5 FA 00 00 00 00 00 00 00 00  ................
0040  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0050  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0060  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0070  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
2026-02-09 12:06:23,347 - INFO - Packet summary:
###[ Ethernet ]###
  dst       = 00:00:00:00:00:00
  src       = 00:00:00:00:00:00
  type      = IPv6
###[ IPv6 ]###
     version   = 6
     tc        = 0
     fl        = 0
     plen      = 0
     nh        = SCTP
     hlim      = 0
     src       = ::
     dst       = ::
###[ SCTP ]###
        sport     = 54778
        dport     = 0
        tag       = 0x0
        chksum    = 0x0
###[ Raw ]###
           load      = b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

Certains BPF peuvent utiliser la couche IP brute ; vous pouvez spécifier le type de liaison -l raw à cet effet (par défaut ethernet) ;

Télécharger l’outil