Capabilities

Twenty-two controls, documented one by one.

What each control evaluates, why it matters to a small business, and an example of the evidence it produces. Nothing here is advertised unless the engine implements it — and the eight controls in the recorded public run are marked as such.

22controls in the catalog
5categories, each with a score weight
8controls covered by the recorded public run
0exploits, logins or payloads sent

20% of the score

DNS & domain integrity

5 controls

Whether the name resolves as intended, whether answers can be tampered with in transit, and whether the zone leaks control to a stranger.

C01 Address resolution and record presenceA/AAAA resolution
In recorded run weight 4 / 5 DNS
What it evaluates

Whether the apex name publishes resolvable A and AAAA records, whether the answers are consistent across resolvers, and whether the name is reachable at all.

Why it matters

Everything else in an external assessment depends on this. A name that does not resolve is either a misconfiguration or an outage - both are visible to customers before they are visible internally.

Example evidence
Resolved example.com -> 104.20.23.154, 172.66.147.243, 2606:4700:10::ac42:93f3, 2606:4700:10::6814:179a
C02 DNSSEC chain validationDNSSEC validation
In recorded run weight 4 / 5 DNS
What it evaluates

Whether the zone is signed, whether a DS record exists at the parent, and whether the chain validates when queried through a validating resolver.

Why it matters

Without DNSSEC, a forged DNS answer is indistinguishable from a real one for most clients. It does not encrypt traffic; it makes tampering detectable.

Example evidence
Zone signed with validated RRSIG and parent DS delegation.
C03 CAA authorisationCAA policy
Full engine weight 3 / 5 DNS
What it evaluates

Whether the domain publishes CAA records, which certificate authorities they name, and whether the policy includes a reporting address.

Why it matters

CAA restricts which CAs may issue for your name. It reduces - but does not eliminate - the chance of an unauthorised certificate being issued by a compliant CA.

Example evidence
example.org. 300 IN CAA 0 issue "letsencrypt.org"
C04 Zone transfer exposureAXFR/IXFR
Full engine weight 3 / 5 DNS
What it evaluates

Whether each authoritative nameserver answers an AXFR or IXFR request from an unauthorised client.

Why it matters

A zone that transfers to anyone publishes the complete map of internal hostnames and services. Modern DNS servers refuse this by default; older or misconfigured ones do not.

Example evidence
AXFR example.org @ns1.example.org -> REFUSED (expected); IXFR -> NOTIMP
C05 Name record hygieneStale pointers
Full engine weight 3 / 5 DNS
What it evaluates

Dangling CNAMEs, records pointing at decommissioned hosting, orphaned service records and unexpected wildcard answers.

Why it matters

A record that points at a name nobody controls any more is the classic subdomain-takeover path. It is quiet, cheap to fix and easy to miss from inside.

Example evidence
www.example.org. CNAME shop.example-host.io. -> NXDOMAIN (hosting account closed)

25% of the score

Email authentication

5 controls

Whether a stranger can send mail that looks like it came from your domain - the exposure behind invoice fraud and business email compromise.

C06 SPF policy strengthSPF enforcement
In recorded run weight 5 / 5 Email
What it evaluates

Whether an SPF record exists at the apex, which mechanisms it authorises, and whether the policy ends in a hard fail (-all), a soft fail (~all), or no enforcement at all.

Why it matters

SPF tells receiving servers which hosts may send your mail. A soft policy tells them to be suspicious; a hard fail tells them to reject.

Example evidence
v=spf1 -all (strict no-mail policy for reserved domain).
C07 SPF record validitySPF syntax and limits
Full engine weight 4 / 5 Email
What it evaluates

Multiple SPF records, recursive lookup count against the RFC 7208 limit of 10 DNS-querying mechanisms, void lookups, and syntax errors that cause permerror.

Why it matters

An SPF record that errors out is worse than a simple strict one: receivers fall back to a permerror result and policy enforcement becomes unpredictable.

Example evidence
2 TXT records matched v=spf1 -> permerror per RFC 7208 section 4.5
C08 DMARC enforcementDMARC policy
In recorded run weight 5 / 5 Email
What it evaluates

The published _dmarc policy (none, quarantine or reject), the subdomain policy, alignment modes (adkim/aspf), and the reporting addresses.

Why it matters

DMARC is the policy layer: it tells receivers what to do when SPF or DKIM fails. p=none asks for reports; p=reject actually stops spoofed mail.

Example evidence
v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s
C09 DKIM presence and key strengthDKIM selectors
Full engine weight 4 / 5 Email
What it evaluates

Whether discoverable selectors publish keys, the key type and length, and whether weak or revoked keys are still in use.

Why it matters

DKIM signs the message itself, so a forged message cannot carry a valid signature. Short or misconfigured keys weaken that guarantee.

Example evidence
selector1._domainkey -> v=DKIM1; k=rsa; p=... (2048-bit, rsa-sha256)
C10 MX and null-MX postureMX routing
In recorded run weight 3 / 5 Email
What it evaluates

Whether MX records exist, where they point, whether a null MX (RFC 7505) is published for domains that do not accept mail, and whether the routing is internally consistent.

Why it matters

A domain that does not send mail should say so. A missing or contradictory MX is an invitation for forged mail to be delivered to a fallback host.

Example evidence
MX 0 . published indicating domain does not accept e-mail.

20% of the score

Transport security

4 controls

How the site proves its identity and which protocols and ciphers it is willing to negotiate with a visitor's browser.

C11 TLS protocol versionsTLS 1.2/1.3
Full engine weight 4 / 5 TLS
What it evaluates

Which protocol versions the endpoint negotiates, and whether deprecated versions (TLS 1.0/1.1, SSLv3) are still accepted.

Why it matters

Old protocol versions carry known weaknesses and are deprecated by every major standards body. A modern baseline is TLS 1.2 with TLS 1.3 preferred.

Example evidence
TLS 1.3 negotiated; TLS 1.0 and TLS 1.1 refused by the endpoint.
C12 Certificate validity and hostname coverageCertificate
In recorded run weight 5 / 5 TLS
What it evaluates

Trust chain, expiry, hostname or SAN coverage, and whether the presented certificate is the one a browser will accept without a warning.

Why it matters

An expired or mismatched certificate trains users to click through warnings - which is exactly the habit phishing relies on.

Example evidence
Valid X.509 certificate covering example.com over TLS 1.3.
C13 Cipher suites and forward secrecyCipher policy
Full engine weight 3 / 5 TLS
What it evaluates

Whether modern AEAD suites are offered, whether ephemeral key exchange (ECDHE) is available, and whether legacy CBC or export-grade suites remain enabled.

Why it matters

Forward secrecy means a stolen private key cannot decrypt traffic recorded earlier. Legacy suites are the first thing removed in a hardening pass.

Example evidence
TLS_AES_256_GCM_SHA384 preferred; ECDHE available; no CBC or RC4 suites offered.
C14 HTTPS redirect and downgrade pathHTTPS redirect
Full engine weight 3 / 5 TLS
What it evaluates

Whether plain HTTP on port 80 redirects to HTTPS, whether the redirect is permanent, and whether any resource is still served unencrypted.

Why it matters

A site that answers HTTP without redirecting gives an attacker on the path a free opportunity to intercept or rewrite the first request.

Example evidence
http://example.org -> 301 https://example.org/ (single hop, no body served).

15% of the score

Browser security headers

4 controls

The instructions a server sends to the browser. They are cheap to add, commonly missing, and directly affect how much a single scripting mistake can do.

C15 Strict-Transport-SecurityHSTS
In recorded run weight 4 / 5 Headers
What it evaluates

Whether HSTS is sent over HTTPS, the max-age it declares, whether it covers subdomains, and whether it is submitted for preloading.

Why it matters

HSTS tells the browser to refuse plain HTTP for this host in future. It is the only control that protects the very first request of a later visit.

Example evidence
Strict-Transport-Security header not enforced on reference landing page.
C16 Content-Security-PolicyCSP
In recorded run weight 4 / 5 Headers
What it evaluates

Whether a CSP is present, whether it restricts script sources, and whether it uses unsafe-inline, unsafe-eval or a wildcard that would defeat the purpose.

Why it matters

CSP is the main browser-side mitigation against cross-site scripting. It does not fix an injection bug, but it limits what the injected script can do.

Example evidence
Content-Security-Policy header absent on static reference response.
C17 Clickjacking and MIME-sniffing protectionFraming & sniffing
Full engine weight 3 / 5 Headers
What it evaluates

X-Frame-Options or CSP frame-ancestors, and X-Content-Type-Options: nosniff.

Why it matters

Framing protection stops a page being embedded invisibly behind a click target. nosniff stops a browser guessing a content type and executing something it should not.

Example evidence
X-Frame-Options: DENY; X-Content-Type-Options: nosniff
C18 Referrer, permissions and version disclosureDisclosure
Full engine weight 2 / 5 Headers
What it evaluates

Referrer-Policy, Permissions-Policy, and whether Server or X-Powered-By headers advertise exact software versions.

Why it matters

Version banners save an attacker reconnaissance. Referrer and permissions policies limit what a page leaks or is allowed to use on the visitor's device.

Example evidence
Server: nginx/1.18.0 and X-Powered-By: PHP/7.4.3 disclosed in response headers.

20% of the score

Network & service exposure

4 controls

Whether high-risk services answer on the public internet. Detection is protocol-level only: no login, no share listing, no payload.

C19 High-risk port reachabilityPort reachability
Full engine weight 5 / 5 Exposure
What it evaluates

Whether a defined set of high-risk services (FTP 21, Telnet 23, SMTP 25, direct database ports 3306/5432/6379/27017) accepts a TCP connection from the public internet.

Why it matters

These services were never designed to face the internet. Reachability alone is a finding; the assessment never attempts authentication.

Example evidence
TCP 3306 connection accepted from assessment vantage point (MySQL banner suppressed).
C20 SMB negotiate exposure (445)SMB 445
Full engine weight 5 / 5 Exposure
What it evaluates

Whether port 445 completes a single unauthenticated SMB2 negotiate, and which dialect and signing requirements are advertised in the response.

Why it matters

SMB exposed to the internet is the ingress path behind several ransomware campaigns. The check reads the negotiate response only: no session, no shares, no credentials.

Example evidence
SMB2 negotiate answered on 445; dialect 3.1.1; signing required -> service exposed.
C21 Remote Desktop reachability (3389)RDP 3389
Full engine weight 5 / 5 Exposure
What it evaluates

Whether TCP 3389 accepts a connection and completes a protocol handshake, and whether the negotiated security layer is current.

Why it matters

Internet-facing RDP is routinely brute-forced. Even with strong passwords, exposure widens the attack surface to anyone with a scanner.

Example evidence
RDP negotiation answered on 3389 (NLA required) from the public internet.
C22 Database and admin interface exposureAdmin interfaces
Full engine weight 5 / 5 Exposure
What it evaluates

Whether common management interfaces (phpMyAdmin, admin panels, Elasticsearch, Docker API) answer on standard ports without a network-level restriction.

Why it matters

An admin panel reachable from the internet is one credential away from full control. Network restriction is usually the cheapest available fix.

Example evidence
HTTP 200 with admin login form at :9200/_plugin/... on a public address.

Coverage

What the public edition actually runs.

The recorded public assessment covers eight controls across DNS, email, transport and headers. The remaining fourteen belong to the full engine, and the public sandbox does not execute them. The catalog above is the product; the coverage column is the honesty.

Coverage is stated per control. A control listed as “Full engine” is implemented in the private engine and is not executed by the published sandbox.
IDControlCategoryCoverage
C01Address resolution and record presenceDNSRecorded run
C02DNSSEC chain validationDNSRecorded run
C03CAA authorisationDNSFull engine
C04Zone transfer exposureDNSFull engine
C05Name record hygieneDNSFull engine
C06SPF policy strengthEmailRecorded run
C07SPF record validityEmailFull engine
C08DMARC enforcementEmailRecorded run
C09DKIM presence and key strengthEmailFull engine
C10MX and null-MX postureEmailRecorded run
C11TLS protocol versionsTLSFull engine
C12Certificate validity and hostname coverageTLSRecorded run
C13Cipher suites and forward secrecyTLSFull engine
C14HTTPS redirect and downgrade pathTLSFull engine
C15Strict-Transport-SecurityHeadersRecorded run
C16Content-Security-PolicyHeadersRecorded run
C17Clickjacking and MIME-sniffing protectionHeadersFull engine
C18Referrer, permissions and version disclosureHeadersFull engine
C19High-risk port reachabilityExposureFull engine
C20SMB negotiate exposure (445)ExposureFull engine
C21Remote Desktop reachability (3389)ExposureFull engine
C22Database and admin interface exposureExposureFull engine

Read-only by design

DNS queries, TLS handshakes, HTTP header reads and, for exposure controls, a single protocol-level connection. There is no authentication attempt and no payload.

Inconclusive is a result

A control that returns no conclusive answer inside its timeout is reported as inconclusive and excluded from the score. Silence is never turned into a failure.

Evidence is mandatory

Every conclusive finding carries the record, header or handshake that produced it, so a technical reader can reproduce the observation independently.

Check the catalog against a real report.

The recorded example.com assessment shows eight of these controls with their actual evidence, score and grade.