A scan run without credentials and the same scan run with a working login against the same host will not produce the same finding list. They will not even be close. If your vulnerability program still reports coverage as “hosts scanned” rather than “hosts authenticated,” you are likely publishing a risk picture that is missing most of the local-only issues an attacker with a foothold would actually use. This is the practical difference between the two modes, where each one still earns its place, and how to measure the gap on your own estate instead of guessing at it.
How each mode gathers evidence: network probing vs local host queries
Uncredentialed scanning is an outside-in process. The scanner opens TCP/UDP connections, grabs service banners, negotiates TLS to read certificate and cipher details, and fingerprints software by comparing response behavior against known signatures. A tool like Nmap’s -sV flag or a scanner’s built-in service detection engine infers “Apache 2.4.41” from an HTTP response header, then checks that string against a CVE dictionary. Nothing on the target host is asked anything directly; every conclusion is inferred from what crosses the wire.
Credentialed scanning is an inside-out process. The scanner authenticates over SSH, WinRM, or SMB and then runs local queries: on Windows, that means WMI calls such as Win32_QuickFixEngineering for installed hotfixes and registry reads under HKLMSOFTWAREMicrosoftWindowsCurrentVersionUninstall for installed software; on Linux, it means package manager queries like rpm -qa --last or dpkg -l, plus reads of configuration files that never touch the network, such as /etc/ssh/sshd_config or sudoers entries. The scanner is no longer guessing what software is running from the outside; it is asking the operating system directly what is installed and how it is configured.
The detection gap: patch levels, local privilege issues, client-side software, and missing registry or package data
The gap is not marginal, it is categorical. Several entire classes of vulnerability are structurally invisible to a network-only scan:
- Missing patches on non-listening components. A missing KB for a kernel-mode driver or a print spooler fix has no network signature at all. It only shows up when the scanner reads the patch database via
wmic qfe listor the equivalent WMI call. - Local privilege escalation bugs. CVE-2021-3156 (the sudo heap overflow) required checking the installed sudo binary version with
sudo -V, something no port scan will ever surface. Unquoted service path vulnerabilities on Windows require reading the service configuration table locally, not probing a port. - Client-side software. Browsers, PDF readers, archive utilities, Java runtimes, and other desktop applications rarely bind to a network port. An uncredentialed scan of a workstation typically returns almost nothing useful, because there is nothing listening to interrogate.
- Configuration weaknesses. World-writable files, weak file permissions on private keys, missing disk encryption, and misconfigured sudoers rules all live in local state that only a logged-in check can read.
If your scan estate is a mix of servers and endpoints and you are running uncredentialed only, your endpoint fleet is effectively unscanned for anything except open ports and TLS misconfiguration.
Measured false-positive difference between the two modes, with concrete examples
The other side of the coverage gap is precision. Uncredentialed scans infer a version string from a banner and then match that string against a CVE feed. That works cleanly for vendors who bump the visible version number with every fix. It breaks down for vendors who backport security fixes while keeping the upstream version string stable, which is standard practice for Debian, Ubuntu, and RHEL package maintainers. A Debian host running a patched OpenSSL build will still present as “OpenSSL 1.1.1n” in its banner, and a scanner matching on that raw string alone will flag CVEs that were fixed months earlier in that distribution’s backport. A credentialed check reads the actual installed package version, for example 1.1.1n-0+deb11u5 from dpkg -l, and can be matched against the distribution’s own security advisory feed instead of the upstream CVE-to-version mapping. That single mismatch, banner string versus package build, is the most common source of false positives in scan programs that rely on network fingerprinting alone, and it disproportionately affects any organization running long-term-support Linux distributions.
The same pattern shows up in reverse for false negatives: a host can present an old-looking banner because an administrator disabled version disclosure in a config directive, while the underlying binary is fully patched. Uncredentialed scanning has no way to resolve that ambiguity in either direction. Platforms that ingest both scan types, SITEY among them, cross-reference the locally reported package version against vendor advisory data during the AI Validation and Triage phase before a finding ever reaches an analyst’s queue, which is what actually reduces the recheck workload rather than just the raw finding count.
When uncredentialed is the correct choice
None of this makes uncredentialed scanning obsolete. There are situations where it is the only appropriate mode, and treating it as a lesser substitute for credentialed scanning in those cases is a mistake in the other direction.
- DMZ and internet-facing hosts. These are the assets an external attacker actually sees first. An uncredentialed scan from outside your perimeter tells you what that attacker’s reconnaissance would return, which is a different and equally necessary question from “what patches are missing.”
- Third-party and vendor-managed systems. You will not get SSH or WMI access to a SaaS vendor’s infrastructure or a partner’s appliance. Uncredentialed assessment, or attack surface monitoring, is the only lawful and practical option.
- First-contact discovery. Before you know an asset exists, you cannot have credentials loaded for it. An initial network sweep is how new hosts get identified and added to inventory before a credential set is assigned to them.
- M&A and shadow IT sweeps. Acquiring a new business unit or discovering an unsanctioned subnet both start with no accounts at all. Uncredentialed discovery is step one, credentialed depth follows once access is negotiated.
The mature posture is not “credentialed everywhere,” it is “credentialed wherever you control the asset, uncredentialed everywhere else, and both modes reconciled against the same asset inventory” so a host does not silently disappear from tracking because it moved from one scan type to the other.
Credential requirements per platform at a glance
Credential setup differs enough by platform that it is worth having a standing reference rather than relearning it per project.
| Platform | Access method | Minimum privilege | Common blocker |
|---|---|---|---|
| Windows | WinRM (5985/5986) or SMB/WMI (445) | Local admin, or a delegated group granted read access via GPO | UAC remote restrictions silently deny non-RID-500 accounts unless LocalAccountTokenFilterPolicy is set to 1 |
| Linux/Unix | SSH (22) | Non-root account with a narrow, passwordless sudoers entry limited to specific read commands (rpm, dpkg, uname, package and config reads) |
Full-root sudoers entries get rejected by change control; scoped entries need per-distro command paths |
| Network gear (Cisco IOS, Juniper Junos) | SSH with enable / privileged EXEC | AAA-authorized read-only command set at the appropriate privilege level | TACACS+ command authorization blocking show commands the scanner needs for version and config detail |
| Hypervisors (VMware ESXi/vCenter) | vSphere API over 443 | Read-only custom role at the vCenter or host level | Host-level lockdown mode blocking direct ESXi API calls even when vCenter access works |
Managing this credential sprawl by hand across hundreds of hosts is one of the reasons scan programs quietly drift back to uncredentialed defaults over time. A dedicated scan management layer that stores scoped credentials per asset group and rotates them on a schedule keeps the setup from decaying after the first quarter.
How to calculate your own credentialed coverage rate and set a target
Coverage rate is a simple ratio, but almost no team tracks it as a standing metric:
Credentialed coverage rate = (assets with a successful authentication in the last scan cycle ÷ total assets in inventory) × 100
To get the numerator, do not trust “scan completed” status alone, since a scan can complete successfully while every authentication attempt inside it fails. Pull the authentication result specifically: Nessus reports it in the plugin output for “Authentication Success/Failure” per host; Qualys exposes it through the Authentication Report; OpenVAS and most open-source scanners attach a Quality of Detection (QoD) score to each result, where credentialed local checks typically land at QoD 97-99 and remote-only checks land well below that, often in the 70-80 range. Filtering your last scan’s results by QoD or by explicit auth status gives you the real denominator without manual host-by-host review.
For a target, treat anything below roughly 90% credentialed coverage on your production Windows and Linux fleet as an open exception queue, not a rounding error. For each host that fails, classify the failure into one of four buckets so the fix is actionable rather than a repeat ticket next month: expired or rotated credential, firewall or security group blocking the auth port, disabled or locked account, or an overly narrow sudoers/WinRM permission that rejects the specific query the scanner needs. Re-run the coverage calculation after every credential rotation, not just after every scan, since rotation is the most common silent cause of a coverage regression. Some platforms, SITEY included, surface this percentage per asset group directly against the live scanner integrations feeding into a scan, so a drop in authentication success is visible on the day it happens rather than discovered a quarter later during an audit.
Getting credentialed coverage above 90% and keeping uncredentialed scanning in place for the assets you genuinely do not control is the actual goal, not choosing one mode as universally correct. The two modes answer different questions, and a program that only asks one of them is working from an incomplete map, regardless of how often it runs.
About SITEY
SITEY is an autonomous vulnerability management platform. It discovers, validates, prioritizes, remediates and re-tests vulnerabilities through an eight-phase automated pipeline, unifying output from 17 integrated scanners. SITEY is self-hosted: it runs in your own infrastructure and your findings are stored there. Outbound connections are limited to licence activation and the optional services you enable, such as an AI provider, CVE enrichment and patch catalogues. Pricing is 599 USD per month or 5,999 USD for a perpetual lifetime license. See pricing or how the platform works.