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
ja4 — JA4+ est une suite de normes de fingerprinting réseau | Kitploit
Outils/GitHubGitHub/foxio-llc/ja4
Sniffing et Analyse de PaquetsOutils de Chiffrement/DéchiffrementSécurité IoTCartographie RéseauCriminalistique RéseauCollecte d'InformationsAnalyse de MalwareSécurité MobileRenseignement sur les MenacesDétection d'IntrusionUsurpation d'Empreinte NumériqueAnalyse DNS
2.0k184il y a 6 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 →
GitHubfoxio-llc/ja4

ja4

JA4+ est une suite de normes de fingerprinting réseau

Voir le dépôtSite web
Partager

logo

JA4+™ Empreintes Réseau

JA4+ est une suite de méthodes d'empreintes réseau par FoxIO qui sont faciles à utiliser et à partager. Ces méthodes sont à la fois lisibles par l'humain et la machine pour faciliter une chasse aux menaces et une analyse plus efficaces. Les cas d'utilisation de ces empreintes incluent la recherche d'acteurs malveillants, la détection de logiciels malveillants, la prévention du détournement de session, l'automatisation de la conformité, le suivi de localisation, la détection DDoS, le regroupement d'acteurs malveillants, la détection de shells inversés, et bien d'autres.

Pour une explication rapide de JA4+ et pour l'utiliser comme référence lors de l'analyse, voir :
JA4+ Cheat Sheet

Pour des détails approfondis, veuillez lire nos blogs sur le fonctionnement de JA4+, pourquoi cela fonctionne, et des exemples de ce qui peut être détecté/empêché avec :
JA4+ Network Fingerprinting (JA4/S/H/L/X/SSH)
JA4T: TCP Fingerprinting (JA4T/TS/TScan)
Investigating Surfshark and NordVPN with JA4T (JA4T)

Si vous aimez JA4+, envisagez d'acheter un t-shirt ou un sweat à capuche :
JA4+ Shirts, Hoodies, and Stickers

Table des matières

  • Méthodes actuelles et détails d'implémentation
  • Implémentations
  • Outils supportant JA4+
  • Exemples
  • Plugins
  • Binaires
    • Actifs de version
    • Installation de tshark
      • Linux
      • macOS
      • Windows
    • Exécution de JA4+
  • Base de données
  • Processus de version
    • Comment créer une version
  • Détails de JA4+
  • Licence
  • Q&R
  • JA4+ a été créé par

Méthodes actuelles et détails d'implémentation

Le nom complet ou le nom court peuvent être utilisés indifféremment. D'autres méthodes JA4+ sont en préparation...

Pour comprendre comment lire les empreintes JA4+, voir Détails techniques

Implémentations

Ce dépôt inclut JA4+ dans

  • Python
  • Rust
  • C, en tant que plugin Wireshark.
  • Zeek

Outils supportant JA4+

avec d'autres à annoncer...

Exemples

Pour plus d'exemples, voir ja4plus-mapping.csv
Pour une base de données complète, voir ja4db.com

Plugins

Wireshark
Zeek
Arkime

Binaires

Les binaires JA4 sont construits à partir de l'implémentation Rust de la suite. Pour garantir une fonctionnalité complète, tshark (version 4.0.6 ou ultérieure) est requis. Téléchargez les derniers binaires JA4 depuis la page des Versions. Les versions de l'implémentation Rust suivent le Semantic Versioning et sont marquées comme vX.Y.Z, contrairement aux versions du plugin Wireshark.

Actifs de version

Les actifs de version sont nommés selon le composant et la plateforme :

  • Rust :
    • ja4-vX.Y.Z-<architecture>-<platform>.tar.gz (p. ex., ja4-v0.18.5-x86_64-unknown-linux-musl.tar.gz)
  • Python :
    • ja4-python-vX.Y.Z.tar.gz (contient tout le répertoire python/)
  • Wireshark :
    • ja4.so.linux, ja4.so.macos, ja4.dll (attaché à une version nommée comme wireshark-vX.Y.Z)

Choisissez le fichier approprié pour votre système et votre composant.

Installation de tshark

Linux

Installez-le via votre gestionnaire de paquets (le nom du paquet tshark ou wireshark-cli dépend de la distribution). Par exemple, sur Ubuntu :

root@kitploit:~
sudo apt install tshark

macOS

  1. Téléchargez et installez Wireshark (inclut tshark).
  2. Ajoutez tshark à votre PATH :
    root@kitploit:~
    sudo ln -s /Applications/Wireshark.app/Contents/MacOS/tshark /usr/local/bin/tshark
    

Windows

  1. Téléchargez et installez Wireshark (inclut tshark.exe).
  2. Localisez tshark.exe (généralement dans C:\Program Files\Wireshark\tshark.exe).
  3. Ajoutez le dossier contenant tshark.exe à votre PATH système :
    • Ouvrez Propriétés système > Variables d'environnement > Modifier le Path.

Exécution de JA4+

Une fois que tshark et les binaires JA4+ sont disponibles, exécutez JA4+ avec la commande suivante :

  • Sur Linux et macOS :
    root@kitploit:~
    ./ja4 [options] [pcap]
    
  • Sur Windows, ouvrez l'invite de commandes et exécutez :
    root@kitploit:~
    ja4 [options] [pcap]
    

Pour plus de détails sur l'exécution de JA4+ et ses configurations avancées, reportez-vous au README de l'implémentation Rust, qui fournit des informations sur ses fonctionnalités, ses scénarios d'utilisation et ses options de personnalisation.

Base de données

La base de données officielle JA4+ des empreintes, des applications associées et de la logique de détection recommandée se trouve ici : ja4db.com
Cette base de données est en développement très actif. Attendez-vous à des ordres de grandeur supplémentaires de combinaisons d'empreintes et de données dans les prochains mois.

Un échantillon ja4plus-mapping.csv est également disponible pour une référence rapide.

Processus de version

JA4+ utilise GitHub Actions pour automatiser les versions de ses composants Rust, Python, Wireshark et Zeek. Les versions sont créées en poussant une balise avec un préfixe spécifique vers le dépôt, sauf pour Zeek, qui utilise une balise de version sémantique pure (semver). Les actifs de version sont nommés comme suit :

  • Rust : ja4-vX.Y.Z-<architecture>-<platform>.tar.gz
  • Python : ja4-python-vX.Y.Z.tar.gz
  • Wireshark : ja4.so.linux, ja4.so.macos, ja4.dll (dans une version nommée comme wireshark-vX.Y.Z)

Les workflows suivants sont disponibles :

  • Version Rust :
    Poussez une balise commençant par rust-, p. ex. rust-v0.18.5, pour déclencher une version des binaires Rust. Le workflow construira et téléchargera automatiquement les actifs de version.

  • Version Python :
    Poussez une balise commençant par python-, p. ex. python-v0.1.0, pour déclencher une version de l'implémentation Python. Le workflow créera une archive tar du répertoire python/ et la publiera comme actif de version.

  • Version du plugin Wireshark :
    Poussez une balise commençant par wireshark-, p. ex. wireshark-v0.1.1, pour déclencher une version des binaires du plugin Wireshark pour toutes les plateformes supportées.

  • Version Zeek :
    Poussez une balise qui est une version sémantique pure (p. ex. v1.2.3), sans préfixe, pour déclencher une version Zeek. Cela créera automatiquement une version sur packages.zeek.org.

Comment créer une version

  1. Assurez-vous que vos modifications sont fusionnées dans la branche main.

  2. Créez et poussez une balise pour le composant que vous souhaitez publier :

    • Pour Rust, Python ou Wireshark, utilisez le préfixe approprié (p. ex. rust-v0.18.5, python-v0.1.0, wireshark-v0.1.1).
    • Pour Zeek, utilisez une balise semver pure (p. ex. v1.2.3).

    Exemple :

    root@kitploit:~
    git tag v1.2.3
    git push origin v1.2.3
    

    (Pour Zeek)

    Ou, pour Rust :

    root@kitploit:~
    git tag rust-v0.18.5
    git push origin rust-v0.18.5
    
  3. Le workflow GitHub Actions correspondant s'exécutera et publiera automatiquement les actifs de version. Pour Zeek, la version apparaîtra sur packages.zeek.org.

Détails de JA4+

JA4+ est un ensemble d'empreintes réseau simples mais puissantes pour plusieurs protocoles, à la fois lisibles par l'humain et la machine, facilitant une chasse aux menaces et une analyse de sécurité améliorées. Si vous n'êtes pas familier avec les empreintes réseau, je vous encourage à lire mes blogs publiant JA3 ici, JARM ici, et cet excellent blog de Fastly sur l'État des empreintes TLS qui décrit l'historique de ce qui précède ainsi que leurs problèmes. JA4+ apporte un support dédié, maintenant les méthodes à jour à mesure que l'industrie évolue.

Toutes les empreintes JA4+ ont un format a_b_c, délimitant les différentes sections qui composent l'empreinte. Cela permet la chasse et la détection en utilisant seulement ab ou ac ou c uniquement. Si l'on souhaite simplement analyser les cookies entrants dans son application, on regarderait uniquement JA4H_c. Ce nouveau format préservant la localité facilite une analyse plus approfondie et plus riche tout en restant simple, facile à utiliser et en permettant l'extensibilité.

Par exemple, GreyNoise est un écouteur internet qui identifie les scanners internet et implémente JA4+ dans son produit. Ils ont un acteur qui scrute internet avec un seul chiffrement TLS changeant constamment. Cela génère une quantité massive d'empreintes JA3 complètement différentes, mais avec JA4, seule la partie b de l'empreinte JA4 change, les parties a et c restent les mêmes. Ainsi, GreyNoise peut suivre l'acteur en regardant l'empreinte JA4_ac (en joignant a+c, en supprimant b).

Pour une liste des méthodes JA4+ et leurs descriptions, voir Méthodes actuelles et détails d'implémentation.

Pour comprendre comment lire les empreintes JA4+, voir Détails techniques.

Licence

JA4 : Empreinte client TLS est open-source, BSD 3-Clause, comme JA3. FoxIO n'a pas de revendications de brevet et n'envisage pas de demander une couverture de brevet pour JA4 TLS Client Fingerprinting. Cela permet à toute entreprise ou outil utilisant actuellement JA3 de passer immédiatement à JA4 sans délai.

JA4S, JA4L, JA4LS, JA4H, JA4X, JA4SSH, JA4T, JA4TS, JA4TScan et toutes les futures additions (collectivement appelées JA4+) sont sous licence FoxIO License 1.1. Cette licence est permissive pour la plupart des cas d'utilisation, y compris à des fins académiques et commerciales internes, mais n'est pas permissive pour la monétisation. Si, par exemple, une entreprise souhaite utiliser JA4+ en interne pour sécuriser sa propre société, cela est autorisé. Si, par exemple, un fournisseur souhaite vendre l'empreinte JA4+ dans le cadre de son offre de produits, il devrait nous demander une licence OEM.

Toutes les méthodes JA4+ sont en instance de brevet.
JA4+ est une marque déposée de FoxIO

JA4+ peut et est implémenté dans des outils open source, voir la FAQ sur la licence pour plus de détails.

Cette licence nous permet de fournir JA4+ au monde d'une manière ouverte et immédiatement utilisable, tout en nous offrant un moyen de financer le support continu, la recherche de nouvelles méthodes et le développement de la base de données JA4+. Nous voulons que tout le monde ait la capacité d'utiliser JA4+ et sommes heureux de travailler avec les fournisseurs et les projets open source pour y parvenir.

Q&R

Q : Pourquoi triez-vous les chiffrements ? L'ordre n'a-t-il pas d'importance ?
R : Cela en a, mais dans nos recherches, nous avons constaté que les applications et les bibliothèques choisissent une liste de chiffrements unique plus souvent qu'un ordre unique. Cela réduit également l'efficacité du « cipher stunting », une tactique de randomisation de l'ordre des chiffrements pour empêcher la détection JA3.

Q : Pourquoi triez-vous les extensions ?
R : Plus tôt en 2023, Google a mis à jour Chromium pour randomiser l'ordre de ses extensions. Tout comme le cipher stunting, c'était une tactique pour empêcher la détection JA3 et « rendre l'écosystème TLS plus robuste aux changements ». Google craignait que les implémenteurs de serveurs supposent que l'empreinte Chrome ne changerait jamais et finissent par construire une logique autour d'elle, ce qui poserait des problèmes chaque fois que Google mettrait à jour Chrome.

Je veux donc clarifier ceci : les empreintes JA4 changeront au fur et à mesure que les bibliothèques TLS des applications sont mises à jour, environ une fois par an. Ne supposez pas que les empreintes resteront constantes dans un environnement où les applications sont mises à jour. Dans tous les cas, le tri des extensions contourne ce problème et l'ajout des algorithmes de signature préserve l'unicité.

Q : TLS 1.3 ne rend-il pas l'empreinte des clients TLS plus difficile ?
R : Non, cela la rend plus facile ! Depuis TLS 1.3, les clients ont un ensemble d'extensions beaucoup plus large et même si TLS 1.3 ne supporte que quelques chiffrements, les navigateurs et les applications en supportent encore beaucoup plus.

JA4+ a été créé par

John Althouse, avec les retours de :

Josh Atkins
Jeff Atkinson
Joshua Alexander
W.
Joe Martin
Ben Higgins
Andrew Morris
Chris Ueland
Ben Schofield
Matthias Vallentin
Valeriy Vorotyntsev
Timothy Noel
Gary Lipsky

Michael Barbine

Et des ingénieurs travaillant chez GreyNoise, Hunt, Google, ExtraHop, F5, Driftnet et autres.

Contactez John Althouse à [email protected] pour les licences et les questions.

JA4 et JA4+ sont des marques déposées de FoxIO, Inc.
Copyright (c) 2025, FoxIO

Télécharger l’outil
Nom completNom courtDescription
JA4JA4Empreinte client TLS
JA4ServerJA4SEmpreinte de réponse serveur / session TLS
JA4HTTPJA4HEmpreinte client HTTP
JA4LatencyJA4LMesure de latence client vers serveur / distance lumineuse
JA4LatencyServerJA4LSMesure de latence serveur vers client / distance lumineuse
JA4X509JA4XEmpreinte de certificat X509 TLS
JA4SSHJA4SSHEmpreinte de trafic SSH
JA4TCPJA4TEmpreinte client TCP
JA4TCPServerJA4TSEmpreinte de réponse serveur TCP
JA4TCPScanJA4TScanScanner actif d'empreintes TCP
JA4DHCPJA4DEmpreinte DHCP
JA4DHCPv6JA4D6Empreinte DHCPv6
Outil/ÉditeurSupport JA4+
WiresharkJA4+
ZeekJA4+
ArkimeJA4+
SuricataJA4+ (en développement)
GreyNoiseJA4+
HuntJA4+
DriftnetJA4+
GoLangJA4X
nzymeJA4+ (en développement)
Netresec's CapLoaderJA4+ (en développement)
Netresec's NetworkMinerJA4+ (en développement)
NGINXJA4+
F5 BIG-IPJA4+
nfdumpJA4+
ntop's ntopngJA4+
ntop's nDPIJA4
Team CymruJA4+
NetQuestJA4+
CensysJA4+
Exploit.org's NetryxJA4 et JA4H
CloudflareJA4
FastlyJA4+ (demandez-le)
MISPJA4+
OCSFJA4+
VercelJA4
SeikaJA4+
VirusTotalJA4
AWS CloudfrontJA4
ELLIOJA4+
WebscoutJA4+
RamaJA4 et JA4H
VectraJA4+
AWS WAFJA4
TacticlyJA4+
Palo Alto NetworksJA4+
ngrokJA4
Vertex SynapseJA4 et JA4S
Google Cloud ArmorJA4
FortinetJA4
AppOmniJA4+
IntelliGenesisJA4+
HAProxyJA4 et JA4H plugins par OXL
SentinelOneJA4
AkamaiJA4
Alibaba CloudJA4
Huawei CloudJA4
Google Cloud LBsJA4
eSentireJA4+
Microsoft Azure Front Door CDNJA4
Synapse par Gen0SecJA4X
ZscalerJA4
ExtraHopJA4+
ValidinJA4+
Auth0JA4
Security OnionJA4+
ApplicationEmpreintes JA4+
ChromeJA4=t13d1516h2_8daaf6152771_02713d6af862 (TCP)
JA4=q13d0312h3_55b375c5d22e_06cda9e17597 (QUIC)
JA4=t13d1517h2_8daaf6152771_b0da82dd1658 (clé pré-partagée)
JA4=t13d1517h2_8daaf6152771_b1ff8ab2d16f (sans clé)
IcedID Malware DropperJA4H=ge11cn020000_9ed1ff1f7b03_cd8dafe26982
IcedID MalwareJA4=t13d201100_2b729b4bf6f3_9e7b989ebec8
JA4S=t120300_c030_5e2616a54c73
Sliver MalwareJA4=t13d190900_9dc949149365_97f8aa674fd9
JA4S=t130200_1301_a56c5b993250
JA4X=000000000000_4f24da86fad6_bf0f0589fc03
JA4X=000000000000_7c32fa18c13e_bf0f0589fc03
Cobalt StrikeJA4H=ge11cn060000_4e59edc1297a_4da5efaf0cbd
JA4X=2166164053c1_2166164053c1_30d204a01551
SoftEther VPNJA4=t13d880900_fcb5b95cb75a_b0d3b4ac2a14 (client)
JA4S=t130200_1302_a56c5b993250
JA4X=d55f458d5a6c_d55f458d5a6c_0fc8c171b6ae
QakbotJA4X=2bab15409345_af684594efb4_000000000000
PikabotJA4X=1a59268f55e5_1a59268f55e5_795797892f9c
DarkgateJA4H=po10nn060000_cdb958d032b0
LummaC2JA4H=po11nn050000_d253db9d024b
EvilginxJA4=t13d191000_9dc949149365_e7c285222651
Reverse SSH ShellJA4SSH=c76s76_c71s59_c0s70
Windows 11JA4T=64240_2-1-3-1-1-4_1460_8
Epson PrinterJA4TScan=28960_2-4-8-1-3_1460_3_1-4-8-16
Windows 11JA4D=disco0000in_61-12-60-55_1-3-6-15-31-33-43-44-46-47-119-121-249-252
Sony ReceiverJA4D6=solct0010nn_8-1-3-6_24-23