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
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
2816128il 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

cargo xtask check-host

2. Construire sur Linux

cargo xtask build

3. Exécuter sur Linux

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

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 :

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

Structure du projet

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