Loading…
🛡 Website Security Audit
A passive security scan of any public website HTTP security headers, TLS configuration, cookie flags, mixed content, server fingerprint, known CVEs via the NVD database, CMS detection, mail DNS records and security.txt, with no active payloads sent to your target. For domains you verify you own, an optional active testing tier confirms defences actually work live rate-limit, access-control, header-consistency and upload-filter checks.
Active testing (domains you've verified you own): once you prove control of a domain by adding a DNS TXT record or a well-known file, the same kind of verification Google Search Console and Let's Encrypt use you can run active checks that send real, but bounded and polite, requests to confirm your defences hold. These verify behaviour (does rate limiting actually throttle? are pages you expect protected reachable anonymously? are security headers consistent across the site? does your upload filter reject dangerous file types?). They are defence verification, not attacks still no exploit payloads, and they only ever run against a domain you have proven you control.
Why "this page." Real hardening happens one page at a time: you tighten a page, then you want to confirm that page is now clean not an averaged site figure that barely moves. Page scope checks the exact URL you enter and reports on that page alone, so the score reflects the work you just did. It's the mode you live in while you're fixing things, and (if you're signed in) your run history keeps each page's result so you can watch it climb as you go.
Why "whole domain." Once the individual pages are in order you still want the bird's-eye view the site root as a representative read of your overall posture, plus the domain-level facts (TLS, mail DNS, DNSSEC, CAA) that are true everywhere regardless of which page you land on. Domain scope answers "how is the site doing overall," where page scope answers "is this page done."
Every result is labelled with the scope that produced it, so a pass is never quietly stretched into a claim about pages it never looked at. Two honest questions, and you pick which one you're asking.
This audit runs those header checks and eleven further families, going well beyond what a headers-only grade covers:
- TLS / SSL live certificate validity, expiry and protocol version (via a real TLS handshake). In plain terms: checks the padlock in the browser bar is real, current and using modern encryption not expired, misconfigured or faked.
- Known CVEs detected software versions matched against the NIST National Vulnerability Database (NVD). In plain terms: if your site runs software with publicly known ways in, we flag it like checking whether your lock model is on a burglar's "easy to pick" list.
- Cookie flags Secure, HttpOnly and SameSite on every cookie. In plain terms: makes sure the little files that keep you logged in can't be stolen or read by an attacker.
- Mixed content http:// resources loaded on an https:// page. In plain terms: catches secure pages that quietly pull in insecure parts a locked front door with a window left open.
- Forms & input handling HTTPS form submission, CSRF-token presence and secure file-upload transport (passive; homepage forms only). In plain terms: checks that anything you type or upload is sent securely and can't be hijacked by a malicious site.
- Rate limiting & abuse protection presence of RateLimit-* / Retry-After response headers (a passive signal; the active tier can confirm enforcement on domains you own). In plain terms: whether your site slows down attackers trying thousands of password guesses and, if you own the domain, whether that limit actually kicks in.
- Mail security DNS SPF, DMARC and DKIM records that stop your domain being spoofed. In plain terms: stops scammers sending emails that look like they came from you.
- DNS security CAA (restricts which CAs may issue your certs) and DNSSEC (cryptographically signed DNS). In plain terms: controls who's allowed to issue certificates for your domain, and helps stop people being secretly redirected to a fake copy of your site.
- Server fingerprint version strings leaked in Server / X-Powered-By headers. In plain terms: checks your server isn't announcing exactly what software and version it runs information that helps attackers target it.
- CMS exposure WordPress / Drupal / Joomla version disclosure. In plain terms: makes sure your website builder isn't broadcasting its exact version, which tells attackers which known weaknesses to try.
- Well-known files robots.txt and security.txt (RFC 9116). In plain terms: checks you publish the standard files that tell search engines what to index and give security researchers a way to report problems to you.
And the technical version. Observatory totals up header points, so a single broken control gets diluted by everything that passes. Our first version scored much the same way which let a genuinely serious failure hide behind a wall of green ticks (an unsafe CSP could still leave a site at 90+). So we changed the model to reflect the seriousness of what fails, not just the count. The score starts at 100 and subtracts a penalty sized to each failure's real risk, and passing checks never dilute a failure one critical problem drops the grade no matter how many minor checks pass. A broken CSP or an invalid TLS certificate costs far more than a missing robots.txt. An unsafe CSP (one allowing
unsafe-inline / unsafe-eval in script-src) is treated as seriously as having no CSP at all it defeats CSP's core XSS defence either way and now carries a score-dominating penalty rather than counting as one tick among many. The result: a site can score lower here than on Observatory while being flagged for the same underlying issue in more detail, and weighted by real risk.
Beyond Observatory entirely active testing. Observatory, like the passive scan above, can only read what a site returns; it can never confirm whether a defence works. For domains you verify you own, this tool goes further: it actively checks that rate limiting really throttles repeated requests, that pages you expect to be protected aren't reachable anonymously, that security headers are applied consistently across the whole site (not just the homepage), and that file-upload endpoints reject dangerous types. Every active check is bounded, polite, and gated behind proof of domain ownership verifying your defences, never attacking them.
Headers & Content-Security-Policy top marks everywhere. Mozilla HTTP Observatory awards an A+, scoring 135 on a scale that tops out at 145, passing all ten of its tests and stacking bonus points for a clean CSP, Cross-Origin-Resource-Policy, Subresource Integrity, Referrer-Policy and frame-ancestors clickjacking protection. SecurityHeaders.com returns a straight A+ with every core header present. Google's own CSP Evaluator reads the policy as essentially clean every directive locked, no
unsafe-inline or unsafe-eval with only the standard note that any allowlist policy could theoretically go further with nonces. Webbkoll, which reimplements Observatory's CSP tests, returns a clean sweep and correctly treats the deprecated X-XSS-Protection header as one to omit rather than send the modern-correct posture, not a fault.
TLS confirmed A+ by both dedicated authorities. Qualys SSL Labs the definitive TLS grader awards an A+: TLS 1.2 and 1.3 only, every cipher suite forward-secret and using modern authenticated encryption, a trusted certificate chain, and every known TLS attack (BEAST, POODLE, ROBOT, Heartbleed and the rest) mitigated. CryptCheck, an independent grader, confirms the same A+ with the identical strong, forward-secret cipher suites. Two dedicated TLS authorities in full agreement.
The deep scanners agree with our own audit. Hardenize returns green across headers, TLS and CSP, flagging only the same items our audit already reports a pending HSTS preload submission and mail-transport records still propagating. internet.nl, the Dutch government-grade scanner and the strictest of all, "fails" the domain on three points, none of them an actual vulnerability: an absent IPv6 address (a completeness matter, not a weakness), DNSSEC (a known limitation of the domain's secondary-DNS arrangement), and cipher-suite order a tuning preference that SSL Labs, the actual arbiter, overrides with its A+. Sucuri SiteCheck confirms the page is clean of malware and clear on all nine blacklists.
And the outliers prove the rule. Two scanners returned poor grades, and in both cases the grade was built on false data. One scored the domain 50/100 on three findings that were each wrong a CSP complaint aimed at the wrong page, an "invalid HSTS" flag that was just a parsing failure, and outdated advice to enable a deprecated header. Another reported a server and a total absence of security headers that no other tool, and no direct check of the live site, could reproduce meaning it was scanning something other than the live server. When the only two low grades come from tools that misread the page, the conclusion is straightforward: this page is genuinely, verifiably well-hardened and we'd rather show you the full spread than cherry-pick the A+ results.
Rather than totalling points for everything you pass, it starts at 100 and deducts by real risk, so one serious failure moves the grade more than a wall of minor passes a broken CSP or an invalid certificate costs far more than a missing robots.txt.
The checks are grounded in the same standards the established authorities use:
- HTTP security headers (CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, CORP) are evaluated against Mozilla's HTTP Observatory scoring model and the OWASP Secure Headers Project.
- TLS / SSL is checked by a live handshake, following the Qualys SSL Labs and Mozilla TLS guidelines for protocol version, certificate validity and cipher strength with SSL Labs cited as the arbiter for cipher ordering.
- Known vulnerabilities are matched against the NIST National Vulnerability Database (NVD).
- Content-Security-Policy is analysed directive by directive, consistent with Google's CSP Evaluator and Mozilla's CSP guidance.
- Mail security (SPF, DMARC, DKIM, MTA-STS, TLS-RPT, DANE) follows the relevant IETF RFCs.
- DNS checks (CAA, DNSSEC) and security.txt (RFC 9116) follow their published specifications.
Public URLs only. Private/internal addresses are rejected.
These send real (but bounded & polite) requests to your verified domain to confirm your defences actually work. Every field below is optional fill in the ones that apply to your site and leave the rest blank. The header-consistency check always runs; the others only run if you give them something to test. Not sure whether you have one? Leave it empty and that check is simply skipped nothing breaks.
Drop a button into your own site so your visitors can run this security audit on the page they’re viewing. It opens the audit here with the URL already filled in — they just press Run. Two versions: a simple link, or a smart one that always audits whichever page it sits on.
Enter the page you want the button to audit, then copy the snippet into your CMS. Best for locked-down site builders (Wix, Squarespace, some WordPress) that strip scripts.
Your button’s audit link updates below as you type.
Paste this once. It automatically audits whichever page it’s on, so the same snippet works across your whole site. Needs a CMS that allows a small inline script (self-hosted WordPress, custom HTML blocks, raw-HTML embeds).
Check whether web content is out of date. Enter a URL and we fetch the page, or paste content directly. We identify time-sensitive claims and check each against current Google results. Works on any site and any content. This check can take between 2 and 10 minutes — each claim is verified against live search results, so it runs as a thorough background pass rather than an instant scan.
What each part of the audit checks, why it matters, and how to read the findings. If you've run a scan and want to understand a specific result, this covers the reasoning behind every check family.
1. What does a passive security audit actually check?
A passive audit inspects everything a website reveals about itself through the ordinary requests a browser and a DNS resolver already make no intrusive probing. It reads your HTTP response headers to see which browser-level protections are set: Content-Security-Policy, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy and the cross-origin isolation headers. It performs a real TLS handshake to confirm your certificate is valid, unexpired and negotiating a modern protocol version. It examines every Set-Cookie header for the Secure, HttpOnly and SameSite flags. It looks for mixed content insecure http:// resources loaded on a secure page. It fingerprints your server and any CMS from version strings they leak, then matches detected versions against the NIST National Vulnerability Database to flag known CVEs. On the DNS side it checks your mail-authentication records (SPF, DMARC, DKIM), your CAA record, and whether the zone is DNSSEC-signed. Finally it confirms you publish the expected well-known files, robots.txt and security.txt. Every one of these is read-only reconnaissance: the same traffic a normal visitor generates, plus public DNS lookups. Nothing is injected, nothing is brute-forced, and no endpoint is stressed. That's the deliberate boundary of the passive tier it tells you what your site advertises about its own posture, which is a surprising amount, without ever behaving like an attacker. To confirm that a defence actually works rather than merely being declared, you use the active tier on a domain you've verified you own.
2. What's the difference between passive and active testing?
The passive scan reads; the active tier verifies. A passive check can tell you a RateLimit header is present, or that a CSP is declared, or that a page returns a 401 but reading a response can never prove the underlying control actually enforces anything. A site can advertise rate-limit headers and still let an attacker make ten thousand login attempts; it can serve a strict-looking CSP on the homepage and a broken one three pages deep. Active testing closes that gap by sending real, bounded requests and observing behaviour. It confirms that rate limiting genuinely throttles repeated requests, that pages you expect to require authentication aren't reachable anonymously, that your security headers are applied consistently across multiple pages rather than just the homepage, and that a file-upload endpoint rejects dangerous file types. Crucially, active testing is still not attacking. There are no exploit payloads, no injection strings, no attempts to break in the checks are polite, rate-limited, and designed to confirm a defence holds, not to defeat it. Because these requests genuinely hit your infrastructure, the active tier is gated behind proof of domain ownership: you add a DNS TXT record or a well-known file, the same verification standard Google Search Console and Let's Encrypt use, and only then can active checks run against that domain. This means you can never point active testing at a site you don't control. The passive scan runs on any public URL in seconds (typically well under a minute); the active tier is the deliberate, authorised second step for confirming your own defences do what they claim.
3. How is the security score calculated, and why might I score lower than on other tools?
Most scanners total up points for everything you pass, which means a single dangerous failure gets diluted by a wall of green ticks you can "score 90" while your Content-Security-Policy is fundamentally broken. This audit does the opposite. You start at 100 and lose points weighted by how dangerous each specific failure actually is. Passing checks never inflate the score to hide a failure; one critical problem drops the grade hard regardless of how many minor checks pass, because in security a single unlocked door matters more than ten locked windows. The weighting reflects real risk: a broken CSP or an invalid TLS certificate costs far more than a missing robots.txt. A CSP that allows unsafe-inline or unsafe-eval in script-src is treated as seriously as having no CSP at all because it defeats CSP's core cross-site-scripting defence either way and carries a score-dominating penalty rather than counting as one tick among many. This is why you can score lower here than on a tool like Mozilla Observatory while being flagged for the same underlying issue: the finding is the same, but it's weighted by consequence rather than counted. The intent is a score you can trust as a genuine risk signal. A high number here means the things that would actually hurt you are handled, not that you accumulated enough small passes to bury a serious one. If your score dropped after a change, look for a high-severity failure that single item is doing most of the work, and fixing it will move the grade far more than clearing several minor warnings.
4. What are HTTP security headers and which ones matter most?
HTTP security headers are instructions your server sends with every response that tell the browser how to behave defensively. They're one of the highest-leverage security controls available because they're enforced by the browser itself, on every visitor, without touching your application code. The audit checks the full set and weights them by impact. Content-Security-Policy is the most consequential: it restricts which sources of script, style and other resources the browser will load, and a well-formed CSP is the single strongest defence against cross-site scripting. Strict-Transport-Security (HSTS) forces browsers to use HTTPS and refuse to downgrade, defeating protocol-downgrade and SSL-stripping attacks; the audit also checks the policy is strong a long max-age with includeSubDomains because a weak HSTS policy barely sticks. X-Frame-Options (or a CSP frame-ancestors directive) prevents your pages being embedded in a malicious iframe, blocking clickjacking. X-Content-Type-Options stops browsers MIME-sniffing responses into an executable type. Referrer-Policy controls how much of your URL leaks to other sites. Permissions-Policy restricts access to sensitive browser features like camera, microphone and geolocation. The cross-origin isolation headers (CORP, and CORS behaviour) govern which other origins can embed or read your resources, mitigating a class of cross-origin data leaks. Of these, CSP and HSTS carry the most weight in the score because their absence or misconfiguration exposes the most serious attack classes. The others are important but lower-consequence. A common and dangerous mistake is declaring a CSP that still permits unsafe-inline scripts the header is present, but the protection it exists to provide is switched off, which is why the audit flags that case as severely as a missing policy.
5. What is a Content-Security-Policy and why does an "unsafe-inline" CSP fail?
A Content-Security-Policy is a header that tells the browser exactly which sources it's allowed to load scripts, styles, images, fonts and other resources from. Its central purpose is to neutralise cross-site scripting: even if an attacker manages to inject markup into your page, a strict CSP means the browser refuses to execute any script that didn't come from an approved source. This is why CSP is considered the strongest browser-level XSS defence available. The catch is that CSP only works if it's actually restrictive. The directive script-src 'unsafe-inline' tells the browser to execute any inline script it finds on the page which is precisely the mechanism most XSS attacks rely on. An injected <script> block or an onerror= handler will run happily under a policy that allows inline script. Similarly, 'unsafe-eval' permits eval() and equivalent dynamic code execution, reopening another injection avenue. So a CSP containing unsafe-inline in script-src is, for the threat it's meant to stop, no better than having no CSP at all the header is present and looks reassuring, but the protection is disabled. That's why this audit treats an unsafe-inline CSP as a serious failure carrying a score-dominating penalty, rather than counting it as a partial pass. Tools that simply check "is a CSP header present?" will mark it green, which is misleading. The correct fix is to remove unsafe-inline and unsafe-eval from script-src and instead use nonces or hashes for any inline scripts that genuinely must run inline. It's more work than pasting a permissive policy, but it's the difference between a CSP that protects and a CSP that only appears to.
6. What does the TLS/SSL check look at?
The TLS/SSL check performs a genuine handshake with your server not a header read and inspects the certificate and connection it gets back. First it confirms the certificate is valid: correctly formed, matching the hostname, and signed by a trusted certificate authority rather than self-signed or issued by an untrusted root. Second it checks expiry, and specifically flags certificates that are valid now but due to expire within the next thirty days, because an expired certificate takes a site offline for every visitor and the warning window is your chance to renew before that happens. Third it checks the negotiated protocol version, confirming your server uses a modern TLS version (1.2 or 1.3) and isn't still accepting the long-deprecated TLS 1.0 or 1.1, which have known weaknesses. It also verifies that a plain http:// request is redirected to https://, so a visitor who omits the scheme isn't silently served over cleartext. In plain security terms, this is the difference between the browser padlock being real and current versus expired, misconfigured or trivially spoofable. TLS failures are weighted heavily in the score because a broken or invalid certificate undermines the confidentiality and integrity of everything else if the encrypted channel itself can't be trusted, no amount of correct headers behind it helps. The check is read-only and completes in the same pass as the rest of the passive scan. Note that this validates the certificate and protocol as presented on the connection the scanner makes; a full cipher-suite enumeration and deep TLS configuration audit is a specialist task beyond the scope of a general passive scan, and tools like Qualys SSL Labs exist for that deeper analysis when you need it.
7. What are the cookie security flags (Secure, HttpOnly, SameSite)?
Cookies frequently hold session tokens the credentials that keep a user logged in so how they're protected directly determines how easily an attacker can hijack a session. The audit inspects every Set-Cookie header for three flags. The Secure flag tells the browser to send the cookie only over HTTPS, never over an unencrypted connection; without it, a cookie can leak in cleartext to anyone able to observe the network. The HttpOnly flag makes the cookie invisible to JavaScript, which means that even if an attacker manages to run a cross-site scripting payload on your page, they can't read the session cookie and steal the session HttpOnly is one of the most effective mitigations against XSS-driven session theft. The SameSite attribute controls whether the cookie is sent on cross-site requests: set to Lax or Strict, it prevents the browser from attaching your session cookie to requests originating from other sites, which is a core defence against cross-site request forgery. Together these three flags turn a session cookie from something an attacker can steal or abuse into something meaningfully harder to reach. The audit reports on each flag for each cookie; where a site sets no cookies at all, the checks pass by default, since there's nothing exposed. A common real-world failure is a session cookie missing HttpOnly, which quietly converts any XSS bug on the site into a full account-takeover vector. Because the impact is session compromise, these are meaningful findings even though the fix is usually a one-line configuration change in the framework or server that issues the cookie.
8. What is mixed content and why is it flagged?
Mixed content is when a page served over HTTPS loads one or more resources a script, stylesheet, image, font or iframe over plain HTTP. The problem is that the security of an HTTPS page is only as strong as its weakest sub-resource. If your page is encrypted but pulls in a script over http://, that script travels in cleartext and can be read or, worse, modified in transit by anyone positioned on the network. An attacker who can rewrite an insecurely-loaded script effectively controls your page, regardless of how well the main document is protected. That's why the audit flags it: a secure front door means little if there's an open window beside it. Mixed content also degrades the user's trust signal browsers downgrade or remove the padlock, and modern browsers block active mixed content (scripts, iframes) outright, which can silently break functionality. The audit inspects the page for http:// resource references on an https:// page and reports any it finds. The fix is straightforward in principle: serve every resource over HTTPS, update hardcoded http:// URLs to https:// or protocol-relative form, and for defence in depth add the upgrade-insecure-requests CSP directive, which tells the browser to automatically rewrite insecure sub-resource requests to secure ones. This check is passive and covers the page as fetched; because it inspects the delivered HTML and referenced resources, it catches the common cases where a template, plugin or third-party embed still points at an insecure URL. It's a low-effort, high-value fix closing it removes an entire class of in-transit tampering risk.
9. How does the CVE / known-vulnerability check work?
A CVE Common Vulnerabilities and Exposures is a publicly catalogued, uniquely identified security flaw in a specific piece of software. The danger of running software with a known CVE is that the vulnerability is documented, often with a working exploit, and automated scanners actively sweep the internet looking for versions known to be affected. The audit's CVE check works by first fingerprinting the software and versions your site discloses through Server headers, X-Powered-By headers, CMS generator tags and similar version strings and then matching those detected versions against the NIST National Vulnerability Database, the authoritative public record of known vulnerabilities. If a version you're running has published CVEs, they're flagged. The plain analogy is checking whether your specific lock model appears on a burglar's "easy to pick" list: the flaw is already public knowledge, so the only question is whether you've patched past it. The check's reach depends entirely on what your site reveals this is a passive method, so if your server and application don't leak version information (which is itself good practice, and something the fingerprint check rewards), there may be no versions to look up, and the check reports that no fingerprints were available rather than claiming you're vulnerability-free. That's an important honesty distinction: "no CVEs matched" means "nothing known matched what we could detect," not a guarantee of no vulnerabilities. The correct response to a CVE finding is to upgrade the affected software to a patched release and, separately, to reduce version disclosure so you're not advertising exactly what to target. Keeping software current and subscribing to vendor security advisories is the durable fix; the audit surfaces the specific, already-public exposures that matter most.
10. What is mail security DNS (SPF, DMARC, DKIM) and why is it in a security audit?
Mail-authentication DNS records determine whether someone can send email that appears to come from your domain and if they're missing or misconfigured, your domain can be spoofed in phishing and business-email-compromise attacks that damage your reputation and endanger your customers. That's squarely a security concern, which is why a thorough audit checks them even though they live in DNS rather than in HTTP responses. There are three records. SPF (Sender Policy Framework) is a DNS TXT record beginning v=spf1 that lists which mail servers are authorised to send on your domain's behalf; receiving servers check it to reject mail from unauthorised sources. DKIM (DomainKeys Identified Mail) attaches a cryptographic signature to your outgoing mail using a private key, which recipients verify against a public key published in your DNS proving the message genuinely came from you and wasn't altered in transit; the audit checks whether a signature resolves on common selectors. DMARC (Domain-based Message Authentication, Reporting and Conformance) ties SPF and DKIM together with a published policy telling receivers what to do with mail that fails authentication quarantine it, reject it, or merely report and is the record that actually turns SPF and DKIM into enforced anti-spoofing protection. Without DMARC, SPF and DKIM are advisory; with it, they have teeth. The audit confirms the presence of each. In plain terms, these records are what stop a scammer sending emails that look like they came from you a direct threat to anyone who trusts your domain. Publishing all three, with a DMARC policy set to at least quarantine, is the baseline for a domain that sends mail.
11. What are CAA and DNSSEC, and why might DNSSEC show a warning?
Both are DNS-level protections against different attacks on your domain's integrity. A CAA (Certificate Authority Authorization) record names which certificate authorities are permitted to issue certificates for your domain. Without it, any CA in the world can issue a certificate for your name, so if an attacker tricks or compromises any one of them, they can obtain a valid certificate for your site. A CAA record restricts issuance to the CAs you actually use, sharply narrowing that mis-issuance risk. DNSSEC (DNS Security Extensions) cryptographically signs your DNS records so that resolvers can verify the answers they receive genuinely came from you and weren't forged or tampered with in transit the defence against DNS spoofing and cache poisoning, where an attacker secretly redirects your visitors to a fake copy of your site. The audit checks CAA presence and whether your zone is DNSSEC-signed, verifying the latter through a validating resolver's authenticated-data flag. DNSSEC often shows a warning for a specific and legitimate reason: it can only be enabled where the primary DNS provider manages signing and can publish the corresponding DS record at your registrar. If your domain runs on secondary (slave) DNS where your provider merely mirrors a zone hosted elsewhere DNSSEC frequently can't be enabled there, because the DS record must be managed by the primary DNS provider, not the mirror. In that situation the warning isn't a mistake you can simply toggle away; enabling DNSSEC would require moving primary DNS to a provider that manages it, or accepting that DNSSEC isn't available on your current setup. The audit explains this caveat rather than just telling you to "enable DNSSEC," because on many real-world configurations that instruction isn't actionable as stated.
12. What does "server fingerprint" and CMS version disclosure mean?
Server fingerprinting is the practice of identifying exactly what software and which version a site runs, using the information the site volunteers about itself. The audit checks whether your server is leaking that information, because every precise version string you publish is a gift to an attacker. The Server response header sometimes advertises the exact web-server software and version; X-Powered-By can reveal the application platform and its version; and CMS platforms like WordPress, Drupal and Joomla often emit a generator meta tag stating their precise version. Individually these seem harmless, but together they let an attacker skip reconnaissance entirely: instead of probing to discover what you run, they read it off your responses, look up the known vulnerabilities for that exact version, and go straight to the exploits most likely to work. It's the difference between a burglar having to test your locks and being handed the make and model in advance. The audit flags verbose version disclosure and rewards its absence a Server header that says only nginx rather than nginx/1.2.3, no X-Powered-By, and a CMS that doesn't broadcast its version. This is also why the CVE check and the fingerprint check are related: reducing version disclosure both lowers your fingerprint risk and, as a side effect, means there's less for an automated CVE lookup to match against. The fix is configuration-level suppress or genericise these headers and remove generator meta tags and it costs nothing while removing a standing advantage from anyone scanning for easy targets. Reducing what you disclose won't fix an underlying vulnerability, but it removes the signposting that leads attackers to it.
13. What do the active tests actually do, and are they safe?
The active tests are the audit's way of confirming a defence genuinely works, rather than merely being declared and they are deliberately built to be safe. There are four. The rate-limiting test sends a bounded burst of requests to an endpoint you nominate (typically a login or form-submit URL) and observes whether the site actually throttles them, confirming brute-force protection is enforced rather than just advertised. The access-control test requests pages you've told it should require authentication and checks they aren't served to an anonymous visitor catching protected areas that are accidentally reachable. The header-consistency test fetches several pages and compares their critical security headers, catching the common case where the homepage is hardened but inner pages are not. The upload-filter test submits inert, benign files under risky filenames to an upload endpoint you nominate, checking that dangerous types are rejected. What makes these safe is their design and their gating. No test sends an exploit payload, injection string, or anything intended to compromise the site; the requests are bounded in number, spaced politely so they don't stress your infrastructure, and every check verifies a defence rather than attempting to defeat it. They will not trip a well-configured WAF as an attack, because they aren't one. And every active test is locked behind proof of domain ownership you verify control via a DNS TXT record or a well-known file before any active check can target the domain so the tests can only ever run against a site you've demonstrably shown you control. Every field is optional; the header-consistency check always runs, and the others run only if you supply the relevant endpoint, so you test exactly what applies to your site and nothing more.
14. Does this audit cover my whole site or just one page?
You choose. The audit has a scope selector with two modes. This page checks the exact URL you enter its HTTP security headers, Content-Security-Policy, cookie flags, mixed content and form handling all describe that specific page. Use it to confirm a single page you've just hardened, since a site can serve a strict posture on one page and a weaker one on another. Whole domain checks your site root (homepage) as a representative view of the site-wide posture. Either way, some checks are domain-wide by nature and their result applies to your entire site regardless of scope: TLS certificate validity, mail-authentication DNS (SPF, DMARC, DKIM), CAA and DNSSEC, and the presence of well-known files all describe the domain as a whole. The page-level checks (headers, CSP, cookies, mixed content, forms) reflect whichever target the scope selects. This matters because a site can be hardened unevenly a strict page beside a weaker one and page mode lets you verify each page independently while you clean them up one at a time. The result is always labelled with the scope that ran, so a passing result is never overstated into a claim about pages that weren't examined. For deliberate cross-page comparison, the active header-consistency test fetches multiple pages and compares their security headers directly catching the hardened-here-but-not-there problem that a single scan can't. And if you're signed in, your run history saves each audit so you can track a page's score as you improve it. The honest summary: domain-level findings always cover the whole site; page-level findings cover exactly the scope you chose; and you pick page or domain depending on whether you're confirming one page or surveying the site.
Your past security audits, active tests and content checks saved to your account so you can track changes over time.