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
ayaFlow — Un analyseur de trafic réseau haute performance basé sur eBPF et écrit en Rust. | Kitploit
Outils/GitHubGitHub/davidhavoc/ayaflow
Sniffing et Analyse de PaquetsCartographie RéseauSécurité RéseauSécurité CloudAnalyse DNS
GitHubdavidhavoc/ayaflow

ayaFlow

Un analyseur de trafic réseau haute performance basé sur eBPF et écrit en Rust.

Voir le dépôt
28165il y a 2 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

ayaFlow

ayaFlow est un analyseur de trafic réseau Rust + eBPF construit avec Aya. Il exécute un agent par nœud Linux, attache un classifieur TC à l'entrée et à la sortie, et expose les données de trafic en direct, l'historique basé sur SQLite et les métriques Prometheus.

Ce qu'il fait

  • Capture le trafic IPv4, IPv6, TCP et UDP avec un classifieur TC eBPF.
  • Maintient les statistiques de connexion en direct en mémoire et les enregistrements historiques dans SQLite.
  • Enrichit optionnellement le trafic avec le DNS inverse, les domaines de requête DNS et le TLS SNI.
  • Expose une API REST, un flux WebSocket et un point de terminaison Prometheus /metrics.
  • Livré avec des exemples Docker, Kubernetes, Prometheus et Grafana.

Flux de développement pris en charge

Le runtime de capture de paquets d'ayaFlow est uniquement Linux. Les flux de travail des contributeurs sont intentionnellement divisés :

  • Vérifications sécurisées pour l'hôte sur macOS ou Linux :
    • cargo test -p ayaflow-common
    • cargo test -p ayaflow
    • cargo xtask build-user
  • cargo xtask check-host
  • Construction et exécution uniquement Linux :
    • cargo xtask build-ebpf
    • cargo xtask build
    • cargo xtask run -- --deep-inspect
  • Si vous êtes sur macOS, utilisez Docker ou une VM Linux pour le flux de travail eBPF complet. Consultez HOW_TO_USE_LOCAL.md pour les deux chemins.

    Démarrage rapide

    1. Vérifier le support de l'hôte

    root@kitploit:~
    cargo xtask check-host
    

    2. Construire sur Linux

    root@kitploit:~
    cargo xtask build
    

    3. Exécuter sur Linux

    root@kitploit:~
    sudo ./target/debug/ayaflow --db-path /tmp/traffic.db
    

    Si --interface est omis, ayaFlow détecte automatiquement l'interface de route par défaut depuis /proc/net/route et revient à eth0 uniquement si la détection échoue.

    4. Vérifier

    root@kitploit:~
    curl http://localhost:3000/api/health
    curl http://localhost:3000/api/stats
    curl "http://localhost:3000/api/history?limit=5&row_type=raw"
    curl http://localhost:3000/metrics
    

    Options CLI

    DrapeauDescriptionValeur par défaut
    -i, --interfaceInterface à surveiller. Omettre pour détecter automatiquement l'interface de route par défaut sur Linux.détection automatique, repli eth0
    -p, --portPort du serveur API3000
    --db-pathChemin de la base de données SQLitetraffic.db
    --connection-timeoutNettoyage des connexions périmées en secondes60
    --data-retentionSupprimer automatiquement l'historique plus ancien que N secondesdésactivé
    --aggregation-windowStocker des fenêtres d'historique agrégées au lieu de lignes de paquets brutes0 (mode brut)
    --allowed-ipsCIDRs autorisés à accéder à l'APInon restreint
    -c, --configChemin du fichier de configuration YAMLaucun
    -q, --quietSupprimer les logs non-erreurfalse
    --deep-inspectActiver l'extraction des requêtes DNS et TLS SNIfalse
    --enable-ipv6Activer la capture de paquets IPv6false
    --resolve-dnsActiver les recherches DNS inversesfalse

    Référence API

    Point de terminaisonMéthodeDescription
    /api/healthGETÉtat de santé, compteurs de paquets et configuration d'exécution active
    /api/statsGETTemps de fonctionnement, débit, compteurs et configuration d'exécution active
    /api/liveGETTop 50 des connexions actives par nombre de paquets
    /api/historyGETTrafic historique filtrable avec métadonnées de pagination
    /api/streamWSStatistiques en direct chaque seconde
    /metricsGETFormat texte Prometheus

    /api/history prend en charge :

    • limit, offset
    • start_time, end_time
    • protocol
    • ip, src_ip, dst_ip
    • port, src_port, dst_port
    • direction
    • domain
    • row_type=raw|aggregated

    Exemple :

    root@kitploit:~
    curl "http://localhost:3000/api/history?limit=20&protocol=TCP&dst_port=443&row_type=raw"
    

    Structure du projet

    root@kitploit:~
    ayaflow/           Userspace runtime, API, storage, and host-safe tests
    ayaflow-common/    Shared packet/event types used by userspace and eBPF
    ayaflow-ebpf/      TC classifier and payload capture program
    xtask/             Build and workflow helpers
    k8s/               Kubernetes manifests
    monitoring/        Prometheus and Grafana assets
    

    L'arborescence src/ dupliquée à la racine est héritée et ne fait pas partie du chemin de construction pris en charge. Utilisez la crate ayaflow/ et les commandes cargo xtask ci-dessus.

    Guides de déploiement

    • Flux de travail Linux local et macOS+VM : HOW_TO_USE_LOCAL.md
    • Docker : HOW_TO_USE_DOCKER.md
    • Kubernetes : HOW_TO_USE_K8S.md

    Documentation technique

    • Architecture : ARCHITECTURE.md
    • Empreinte et notes de performance : PERFORMANCE.md

    Testé ici

    Le flux de travail sécurisé pour l'hôte passe désormais sur cette machine de développement macOS avec :

    • cargo test -p ayaflow-common
    • cargo test -p ayaflow
    • cargo xtask check-host

    La validation d'exécution uniquement Linux doit encore avoir lieu sur un hôte Linux ou un runner CI avec la chaîne d'outils eBPF installée.

    Licence

    Ce projet utilise trois licences différentes selon le composant :

    Composants espace utilisateur

    L'agent espace utilisateur et les bibliothèques communes (ayaflow et ayaflow-common) sont sous double licence :

    • Apache License, Version 2.0
    • MIT License

    à votre choix.

    Composants noyau

    Les composants noyau eBPF (ayaflow-ebpf) sont strictement sous licence GNU General Public License v2.0 (GPL) pour garantir la compatibilité avec le vérificateur du noyau Linux.

    Télécharger l’outil