Sample Full Scan Report

A simple scan, with expert context: what each finding means, why it matters, a practical fix and the official source. Shortened preview using a fictional Doha café website.

Last reviewed: 2026-10-18

Automated scan of publicly visible website signals. Not legal advice, not a security audit or penetration test.
Example report. A fictional demonstration for the made-up domain example-cafe.qa. Findings are illustrative, not from a real business.

Summary

Simple checks, explained. 2 high, 3 medium and 1 low-priority finding. HTTPS and certificate: OK (valid, expires in 61 days; HTTP redirects to HTTPS).

Findings

High Trackers load before consent

What we found: Meta Pixel and Google Analytics 4 load on the first page view, before the visitor makes any choice on the cookie banner.

Why it matters: Visitors' browsing data goes to advertising platforms before they have agreed. Common PDPPL guidance expects opt-in before cookies used for direct advertising, and the EU's ePrivacy rules require consent for non-essential cookies. For a café, it's also a trust issue: guests notice when a banner is just decoration.

Practical fix: Set your consent tool (or Tag Manager consent mode) so these tags fire only after "Accept". Add a "Reject all" button as easy to use as "Accept".

Official source: NCSA PDPPL guidelines (direct marketing) · ePrivacy Directive 2002/58/EC, Art. 5(3)

Consider asking: Licensed lawyer: whether your marketing set-up needs consent under the PDPPL for your specific case.

High Missing HSTS and Content-Security-Policy

What we found: The site uses HTTPS, but doesn't send Strict-Transport-Security or a Content-Security-Policy header.

Why it matters: Without HSTS, a visitor on public Wi-Fi can be downgraded to an insecure connection. Without CSP, an injected script (for example from a compromised plugin) runs with no restrictions, and that's where booking-form skimming starts.

Practical fix: Ask your host or CDN to add HSTS (start with max-age=31536000). Add a CSP in report-only mode first, review what it reports, then enforce it.

Official source: OWASP Top 10:2025, A02 Security Misconfiguration · MDN: Strict-Transport-Security

Consider asking: Qualified security professional: if you suspect a script has already been tampered with.

Medium Privacy notice missing common items

What we found: A privacy notice is linked from the footer, but doesn't say who receives the data (e.g. booking platform), how long it's kept, or how to withdraw consent or make a request.

Why it matters: Guests can't tell what happens to their details, and these are items PDPPL and GDPR guidance commonly expect a notice to cover. It's often the first thing a complainant points to.

Practical fix: Add sections on recipients and processors, retention, rights and how to exercise them, and a contact address. Use NCSA's Privacy Notice guideline as a checklist.

Official source: NCSA Privacy Notice guideline · GDPR Arts. 13–14 (for EU visitors)

Consider asking: Licensed lawyer: to review and approve the final notice wording.

Medium Booking form asks for health details; newsletter box pre-ticked

What we found: The booking form has a free-text "dietary or medical requirements" field and a pre-ticked newsletter checkbox.

Why it matters: Health data is special-nature data under the PDPPL, which carries stricter rules. A pre-ticked box isn't a clear opt-in for marketing.

Practical fix: Make the field optional, explain why you ask, and limit who sees it. Untick the newsletter box and keep marketing consent separate.

Official source: NCSA Special Nature Processing guideline · PDPPL, Law No. 13 of 2016 (Al Meezan)

Consider asking: Licensed lawyer: whether this processing needs NCSA permission in your case.

Medium DMARC set to monitor only

What we found: SPF is present (~all). DMARC exists with p=none and no reporting address. DKIM was found for the mail provider.

Why it matters: Anyone can still send email that appears to come from your domain, such as fake booking confirmations or payment requests, and mailbox providers aren't told to block it.

Practical fix: Add a rua= reporting address, review reports for 2–4 weeks, then move to p=quarantine and later p=reject.

Official source: RFC 7489 (DMARC)

Low CMS version exposed

What we found: /readme.html reveals the CMS version. No backups or .git folder were found.

Why it matters: It tells attackers which known vulnerabilities to try. On its own it's minor; with an outdated CMS it isn't.

Practical fix: Remove or block the file, and keep the CMS and plugins updated.

Official source: OWASP Top 10:2025

Scope statement

Passive checks only, on a verified, customer-owned domain. Automated scan of publicly visible website signals. Not legal advice, not a security audit or penetration test, not a certification of compliance. Official sources are linked so you can read the text yourself; see official law sources.

Request your full scan report Run free mini-scan

Find out what your website reveals

Run the free passive mini-scan in under a minute, or ask for a quote for the full report.