Skip to main content
Fingerprints turn protocol behaviour into stable values that are useful for clustering related infrastructure. They help you pivot when IP addresses, domains, and certificates change. Several observed services connected by a shared fingerprint Infrawatch extracts fingerprints from observed services and exposes them as typed InfraQL fields. A fingerprint is evidence of shared behaviour, not proof that two systems have the same owner. There are two independent families. Behavioural fingerprints describe how a service talks. Content hashes describe what it served. They fail in different ways, which is what makes combining them a strong pivot: an operator who changes their TLS stack usually keeps their page, and an operator who rewrites their page usually keeps their stack.

The JA4 suite

Behavioural fingerprints, derived from the handshake and protocol exchange.
Not every protocol produces every fingerprint. A field is present only when the corresponding handshake, response, or certificate was observable.

MCP toolsets

An MCP server is identified by what it can do, so its toolset is hashed into a fingerprint of its own: Two servers sharing this value are running the same toolset, which is how you find every deployment of one MCP server across the internet, whoever stood it up. Pair it with AI surface to see the same class of exposure inside your own project.

Content hashes

Hashes over what the service actually returned. These survive infrastructure changes that break a behavioural fingerprint, so they are the better pivot when an operator moves hosts but redeploys the same application. Most are objects rather than single strings, carrying six algorithms each:
Available algorithms are md5, sha1, sha256, murmur3, ssdeep, and tlsh. murmur3 matches the favicon-style hashes used by other tooling, and ssdeep and tlsh are both fuzzy, so near-identical content still clusters. Reach for a fuzzy hash when an exact one stops matching. A single injected tracking script or a changed timestamp breaks sha256 completely, while ssdeep and tlsh still place the two pages together.

From the response

Captured from the HTTP response itself, so these are present whether or not the page was rendered. Each has a twin under http.redirects.* for the hops taken on the way.
Favicon hashing is the cheapest pivot in the product. An operator rebuilds the site, changes hosting, and reissues the certificate, then ships the same icon they have used for years.

From the rendered page

Captured only when the service was rendered in a browser.

Screenshots

The screenshot carries the usual six algorithms plus a perceptual hash for visual similarity, which matches pages that look the same even when nothing about their markup does:
The perceptual hash field is spelled perpetual_hash. A query written as perceptual_hash will not match anything.

Certificates

Only the http.browser.* hashes require a rendered observation. Favicon, response body, header, and HTML structure hashes are taken from the response itself, so they are present on services that were never rendered.

Find a redeployed application

The DOM hash ignores text, so it catches the same kit rebranded across hosts:
Combine a content hash with a behavioural one to raise confidence:

Find the same server stack

Search services for an exact JA4S value:
When searching hosts, prefix the service field and keep the conditions on one endpoint:
Add a time condition to focus on current infrastructure:

Pivot on certificate structure

JA4X describes the ordered structure of an X.509 certificate rather than its contents. It is useful for finding certificates created by the same tooling even when subjects, serial numbers, or keys differ. Search the complete JA4X value:
Or search one component independently:
The available components are:
  • issuer_rdn_hash
  • subject_rdn_hash
  • extension_oid_hash

Measure stack diversity

Host records expose distinct_ja4s, the number of different JA4S values across the host’s current services. Large values can reveal shared hosting, gateways, or a host serving several distinct TLS stacks.

Build a stronger pivot

Fingerprint matches are most useful when combined with independent evidence:
Use ASN, certificate, HTTP, tag, and observation-time fields to reduce false positives before attributing infrastructure.

Service fields

Browse every searchable fingerprint and protocol field.

Correlate services

Keep related conditions on the same observed service.