2026-08-13

Attack Surface Management

Fingerprint Network Services

Identify the service on each open port. Service fingerprinting returns protocol, banner, product, and version for misconfig and credential tests.

Agent

What Fingerprint Network Services does

Service fingerprinting turns an open port into a named service. Once you know which ports answer, the next question is what is actually listening on them: the protocol, the banner, the product, and the version. This module speaks each protocol and returns a typed record that downstream misconfig and credential scans nest on.

You feed port-details, not a host list. The module speaks the protocol on each open port and writes protocol, banner, product, version, TLS, and transport as network-service-details. Open 22 is not SSH until this step says so. Weak-credential testing cannot skip this face.

Where it fits in the pipeline

Illustrative excerpt. Each node is a Trickest module.

Upstream

Scan for open ports is the producer of port-details. This module does not scan hosts.

Downstream

Scan network services for misconfigurations can consume enriched records here, or skip this hop and take raw port-details. Scan network services for weak credentials must consume network-service-details. Findings from those scans feed the scan report.

Parallel

None on this input. Probe live HTTP(S) runs on hosts, not port-details. Identify CMS, CDN, and WAF runs on live web URLs. Do not cross into the web tail.

Network tail (this page is the middle hop): hosts -> open-ports -> network FP -> (misconfig | weak-creds). Never hosts -> probe-web -> web FP.

When to use this

Nest this after scan for open ports has produced port-details, and before any weak-credential test. Misconfig can take raw port records and skip this step. Weak credentials cannot. If you still have a host list, you are one hop too early.

Inputs and outputs

Required
  • port-details (FILE): JSONL port-discovery records from scan for open

Outputs
  • network-service-details: JSONL records (ip_address, port, protocol,

Data

The tables this module produces. Sample rows are illustrative.

network-service-details9 columns · 3 sample rows

Named service on each open port: protocol, banner, product, version, TLS, and transport.

ip_addresstext
portint
protocoltext
transporttext
tlsbool
bannertext
productsjson
versiontext
hostnametext
1203.0.113.1022sshtcpfalseSSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.4Array[1]8.9p1host1.example.com
2203.0.113.10443httpstcptrueHTTP/1.1 200Array[1]1.18.0host1.example.com
3198.51.100.2580httptcpfalseApache/2.4.52 (Ubuntu)Array[1]2.4.52host2.example.com

How it differs from similar modules

Artifact class it owns

Which TCP ports answer

Upstream it needs

hosts

Fingerprint Network Services

Artifact class it owns

Protocol, banner, product on each open port

Upstream it needs

port-details

Artifact class it owns

Setup issues on named (or raw) services

Upstream it needs

port-details (FP optional)

Artifact class it owns

Vendor/default/weak logins on five protocols

Upstream it needs

network-service-details (FP required)

Identify CMS, CDN, and WAF is the web-tail fingerprint. Different input, different tail.

questions

Fingerprint Network Services questions

No. Scan network services for misconfigurations accepts raw `port-details` from the open-port scan. Fingerprinting still helps you read what you found, but it is optional for that sibling. Weak credentials is the one that cannot skip this face.

Nest Fingerprint Network Services in a workflow

Drop this module into a Trickest workflow and connect it to your upstream and downstream nodes. The face contract above is the wiring.

Get a personalized demo

See Trickest in Action

A 30-minute walkthrough. We map the platform to your stack and answer pricing and deployment questions for your environment.