Skip to content

feat: add ja4db fingerprint lookup integration#7

Merged
Crank-Git merged 8 commits intomasterfrom
feat/ja4db-lookup
Mar 25, 2026
Merged

feat: add ja4db fingerprint lookup integration#7
Crank-Git merged 8 commits intomasterfrom
feat/ja4db-lookup

Conversation

@Crank-Git
Copy link
Copy Markdown
Owner

Summary

  • Bundled FoxIO ja4plus-mapping.csv database (66 entries: browsers, malware, C2, OS, IoT)
  • JA4DBClient with local caching (one lookup per unique fingerprint)
  • CLI --lookup flag for analyze, live, and cert subcommands
  • Optional remote lookup via ja4db.com API (requires pip install ja4plus[lookup])
  • Graceful degradation when requests not installed or API unavailable
  • 13 new tests

This PR includes merge commits combining all prior PRs. Merge last after PRs 1-6 land.

Adds optional fingerprint identification using FoxIO's ja4plus-mapping.csv
as a bundled local database, with optional remote lookup via ja4db.com API.

- JA4DBClient with local caching (one lookup per unique fingerprint)
- CLI --lookup flag for analyze and live subcommands
- Bundled database identifies Chromium, Firefox, Safari, Python, Windows,
  Linux, and known malware/C2 fingerprints
- Graceful degradation when requests not installed or API unavailable
- Install with: pip install ja4plus[lookup]
…t lookup

- Remove unused `import io` from ja4db.py
- Replace __import__ hack with normal import in cli.py cmd_cert
- Wire --lookup flag into cert subcommand (was missing)
- Replace bare except in _get_packet_source with specific types
@Crank-Git Crank-Git merged commit 8301a8c into master Mar 25, 2026
7 checks passed
@Crank-Git Crank-Git deleted the feat/ja4db-lookup branch March 25, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant