Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
PcapPlusPlus — Bibliothèque C++ multiplateforme pour la capture, l'analyse, la création et l'analyse de paquets réseau haute performance. Prend en charge libpcap, DPDK, AF_XDP, PF_RING, et inclut le réassemblage TCP, l'empreinte digitale TLS et le décodage de protocole. | Kitploit
Outils/GitHubGitHub/seladb/pcapplusplus
Sniffing et Analyse de PaquetsCartographie RéseauCriminalistique RéseauAnalyse ForensiqueSécurité RéseauUtilitaires et FrameworksCrawlerAnalyse DNS
GitHubseladb/pcapplusplus

PcapPlusPlus

Bibliothèque C++ multiplateforme pour la capture, l'analyse, la création et l'analyse de paquets réseau haute performance. Prend en charge libpcap, DPDK, AF_XDP, PF_RING, et inclut le réassemblage TCP, l'empreinte digitale TLS et le décodage de protocole.

3.1k751il y a 2 joursVé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
Voir le dépôt
Site web

Logo PcapPlusPlus

Statut du workflow GitHub Statut du workflow GitHub Codecov Scorecard OpenSSF Contributeurs GitHub

Suivre sur X Étoiles GitHub

PcapPlusPlus est une bibliothèque C++ multiplateforme pour la capture, l'analyse et la création de paquets réseau. Elle est conçue pour être efficace, puissante et facile à utiliser.

PcapPlusPlus permet le décodage et la création d'une grande variété de protocoles réseau. Elle fournit également des wrappers C++ faciles à utiliser pour les moteurs de traitement de paquets les plus populaires tels que libpcap, WinPcap, Npcap, DPDK, eBPF AF_XDP, WinDivert et PF_RING.

Traductions : Anglais · 正體中文 · 한국어 · 日本語 · Русский

Table des matières

  • Table des matières
  • Téléchargement
    • Page de version GitHub
    • Homebrew
    • Vcpkg
    • Conan
    • Construire vous-même
    • Vérifier vos paquets
  • Aperçu des fonctionnalités
  • Pour commencer
  • Documentation de l'API
  • Support multiplateforme
  • Protocoles réseau pris en charge
    • Couche de liaison de données (L2)
    • Couche réseau (L3)
    • Couche de transport (L4)
    • Couche de session (L5)
    • Couche de présentation (L6)
    • Couche d'application (L7)
  • Prise en charge de DPDK et PF_RING
  • Benchmarks
  • Donner votre avis
  • Contribuer
  • Licence

Téléchargement

Vous pouvez choisir de télécharger depuis la page de version GitHub, d'utiliser un gestionnaire de paquets ou de construire PcapPlusPlus vous-même. Pour plus de détails, veuillez consulter la page Téléchargement sur le site web de PcapPlusPlus.

Toutes les versions GitHub

Page de version GitHub

https://github.com/seladb/PcapPlusPlus/releases/latest

Homebrew

root@kitploit:~
brew install pcapplusplus

Formule Homebrew : https://formulae.brew.sh/formula/pcapplusplus

Vcpkg

Windows :

root@kitploit:~
.\vcpkg install pcapplusplus

MacOS/Linux :

root@kitploit:~
vcpkg install pcapplusplus

Port Vcpkg : https://github.com/microsoft/vcpkg/tree/master/ports/pcapplusplus

Conan

root@kitploit:~
conan install "pcapplusplus/[>0]@" -u

Le paquet dans ConanCenter : https://conan.io/center/pcapplusplus

Construire vous-même

Clonez le dépôt git :

root@kitploit:~
git clone https://github.com/seladb/PcapPlusPlus.git

Suivez les instructions de construction selon votre plateforme sur la page Construire à partir des sources du site web de PcapPlusPlus.

Vérifier vos paquets

Les versions de PcapPlusPlus plus récentes que v23.09 sont signées avec une attestation GitHub. Toutes les attestations se trouvent ici. Vous pouvez vérifier l'attestation de ces paquets avec GitHub CLI. Pour vérifier les paquets, vous pouvez suivre les instructions les plus récentes de gh attestation verify. Pour des instructions simples, vous pouvez utiliser la commande suivante :

root@kitploit:~
gh attestation verify <chemin-vers-le-fichier-paquet> --repository seladb/PcapPlusPlus

et vous devriez voir la sortie suivante dans votre terminal :

root@kitploit:~
✓ Verification succeeded!

Aperçu des fonctionnalités

  • Capture de paquets via un wrapper C++ facile à utiliser pour les moteurs de capture de paquets populaires tels que libpcap, WinPcap, Npcap, Intel DPDK, eBPF AF_XDP, WinDivert, PF_RING d'ntop et les sockets bruts [En savoir plus]
  • Analyse et création de paquets incluant l'analyse détaillée des protocoles et des couches, la génération de paquets et l'édition de paquets pour une grande variété de protocoles réseau [En savoir plus]
  • Lecture et écriture de paquets depuis/vers des fichiers aux formats PCAP et PCAPNG [En savoir plus]
  • Traitement de paquets à vitesse ligne via un wrapper C++ efficace et facile à utiliser pour DPDK, eBPF AF_XDP et PF_RING [En savoir plus]
  • Support multiplateforme - PcapPlusPlus est entièrement pris en charge sur Linux, MacOS, Windows, Android et FreeBSD
  • Réassemblage de paquets - implémentation unique du Réassemblage TCP qui inclut la retransmission TCP, les paquets TCP hors ordre et les données TCP manquantes, et Fragmentation et défragmentation IP pour créer et réassembler des fragments IPv4 et IPv6 [En savoir plus]

Pour commencer

Écrire des applications avec PcapPlusPlus est très facile et intuitif. Voici une application simple qui montre comment lire un paquet depuis un fichier PCAP et l'analyser :

root@kitploit:~
#include <iostream>
#include "IPv4Layer.h"
#include "Packet.h"
#include "PcapFileDevice.h"

int main(int argc, char* argv[])
{
    // open a pcap file for reading
    pcpp::PcapFileReaderDevice reader("1_packet.pcap");
    if (!reader.open())
    {
        std::cerr << "Error opening the pcap file" << std::endl;
        return 1;
    }

    // read the first (and only) packet from the file
    pcpp::RawPacket rawPacket;
    if (!reader.getNextPacket(rawPacket))
    {
        std::cerr << "Couldn't read the first packet in the file" << std::endl;
        return 1;
    }

    // parse the raw packet into a parsed packet
    pcpp::Packet parsedPacket(&rawPacket);

    // verify the packet is IPv4
    if (parsedPacket.isPacketOfType(pcpp::IPv4))
    {
        // extract source and dest IPs
        pcpp::IPv4Address srcIP = parsedPacket.getLayerOfType<pcpp::IPv4Layer>()->getSrcIPv4Address();
        pcpp::IPv4Address destIP = parsedPacket.getLayerOfType<pcpp::IPv4Layer>()->getDstIPv4Address();

        // print source and dest IPs
        std::cout << "Source IP is '" << srcIP << "'; Dest IP is '" << destIP << "'" << std::endl;
    }

    // close the file
    reader.close();

    return 0;
}

Vous pouvez trouver beaucoup plus d'informations sur la page Pour commencer du site web de PcapPlusPlus. Cette page vous guidera à travers quelques étapes simples pour avoir une application opérationnelle.

Documentation de l'API

PcapPlusPlus se compose de 3 bibliothèques :

  1. Packet++ - une bibliothèque pour analyser, créer et éditer des paquets réseau
  2. Pcap++ - une bibliothèque pour intercepter et envoyer des paquets, fournir des informations sur le réseau et la carte réseau, des statistiques, etc. C'est en fait un wrapper C++ pour les moteurs de capture de paquets tels que libpcap, WinPcap, Npcap, DPDK, AF_XDP, WinDivert et PF_RING
  3. Common++ - une bibliothèque avec des utilitaires de code commun utilisés à la fois par Packet++ et Pcap++

Vous pouvez trouver une documentation complète de l'API dans la section documentation de l'API du site web de PcapPlusPlus. Si vous voyez des données manquantes, veuillez nous contacter.

Support multiplateforme

PcapPlusPlus est actuellement pris en charge sur Windows , Linux , MacOS , Android et FreeBSD . Veuillez visiter le site web de PcapPlusPlus pour voir toutes les plateformes prises en charge et reportez-vous à la section Téléchargement pour commencer à utiliser PcapPlusPlus sur votre plateforme.

Protocoles réseau pris en charge

PcapPlusPlus prend actuellement en charge l'analyse, l'édition et la création de paquets des protocoles suivants :

Couche de liaison de données (L2)

  1. Cisco HDLC
  2. Ethernet II
  3. IEEE 802.3 Ethernet
  4. LLC (Seulement BPDU pris en charge)
  5. Null/Loopback
  6. Trailer de paquet (a.k.a. footer ou padding)
  7. PPPoE
  8. SLL (Linux cooked capture)
  9. SLL2 (Linux cooked capture v2)
  10. STP
  11. VLAN
  12. VXLAN
  13. Wake on LAN (WoL)
  14. NFLOG (Linux Netfilter NFLOG) - analyse uniquement (pas de capacités d'édition)

Couche réseau (L3)

  1. ARP
  2. GRE
  3. ICMP
  4. ICMPv6
  5. IGMP (IGMPv1, IGMPv2 et IGMPv3 sont pris en charge)
  6. IPv4
  7. IPv6
  8. MPLS
  9. NDP
  10. Raw IP (IPv4 et IPv6)
  11. VRRP (IPv4 et IPv6)
  12. WireGuard

Couche de transport (L4)

  1. COTP
  2. GTP (v1 et v2)
  3. IPSec AH et ESP - analyse uniquement (pas de capacités d'édition)
  4. TCP
  5. TPKT
  6. UDP

Couche de session (L5)

  1. SDP
  2. SIP

Couche de présentation (L6)

  1. SSL/TLS - analyse uniquement (pas de capacités d'édition)

Couche d'application (L7)

  1. Décodeur et encodeur ASN.1
  2. BGP (v4)
  3. Décodeurs de clés cryptographiques
  4. DHCP
  5. DHCPv6
  6. DNS
  7. DoIP
  8. FTP
  9. En-têtes HTTP (requête et réponse)
  10. LDAP
  11. Modbus
  12. MySQL - analyse uniquement (pas de capacités d'édition)
  13. NTP (v3, v4)
  14. Décodeur et encodeur PEM
  15. Protocole fil PostgreSQL (PGWire) - analyse uniquement (pas de capacités d'édition)
  16. Radius
  17. Communication S7 (S7comm)
  18. SMTP
  19. SOME/IP
  20. SSH - analyse uniquement (pas de capacités d'édition)
  21. Telnet - analyse uniquement (pas de capacités d'édition)
  22. Certificats X509 - analyse uniquement (pas de capacités d'édition)
  23. Charge utile générique

Prise en charge de DPDK et PF_RING

Le Kit de développement du plan de données (DPDK) est un ensemble de bibliothèques du plan de données et de pilotes de contrôleur d'interface réseau pour le traitement rapide de paquets.

PF_RING™ est un nouveau type de socket réseau qui améliore considérablement la vitesse de capture de paquets.

Les deux frameworks offrent un traitement très rapide des paquets (jusqu'à la vitesse de la ligne) et sont utilisés dans de nombreuses applications réseau telles que les routeurs, les pare-feu, les répartiteurs de charge, etc. PcapPlusPlus fournit une couche d'abstraction C++ sur DPDK et PF_RING. Cette couche d'abstraction offre une interface facile à utiliser qui élimine une grande partie du code passe-partout impliqué dans l'utilisation de ces frameworks. Vous pouvez en savoir plus en visitant les pages de support DPDK et PF_RING sur le site web de PcapPlusPlus.

Benchmarks

Nous avons utilisé le projet packet-capture-benchmarks de Matias Fontanini pour comparer les performances de PcapPlusPlus avec d'autres bibliothèques C++ similaires (telles que libtins et libcrafter).

Vous pouvez voir les résultats sur la page Benchmarks du site web de PcapPlusPlus.

Donner votre avis

Nous serions ravis de recevoir vos retours, n'hésitez pas à nous contacter par l'un des moyens suivants :

  • Ouvrir un ticket GitHub
  • Publier un message dans le groupe Google PcapPlusPlus : https://groups.google.com/d/forum/pcapplusplus-support
  • Poser une question sur Stack Overflow : https://stackoverflow.com/questions/tagged/pcapplusplus
  • Envoyer un e-mail à : [email protected]
  • Suivez-nous sur X : https://x.com/seladb

Si vous aimez ce projet, merci de nous mettre une étoile sur GitHub — cela aide ! ⭐ ⭐

Veuillez visiter le site web de PcapPlusPlus pour en savoir plus.

Contribuer

Nous apprécierions grandement toute contribution à ce projet. Si vous êtes intéressé à contribuer, veuillez visiter la page de contribution sur le site web de PcapPlusPlus.

Licence

PcapPlusPlus est publié sous la licence Unlicense.

GitHub

Télécharger l’outil
  • Filtrage de paquets qui rend les filtres BPF de libpcap beaucoup plus conviviaux [En savoir plus]
  • Empreinte digitale TLS - une implémentation C++ de l'empreinte digitale TLS JA3 et JA3S [En savoir plus]