# Passive security review — Award Winning Flapjacks | Gluten Free Food Gifts | Flapjackery
Run: 510f0ce7-d9c2-477e-9904-d4b49196efae
Status: **partial**
Reviewed: `flapjackery.co.uk`, `www.flapjackery.co.uk`
Started: 2026-10-26T19:35:11.940Z
Requests: 17 of 40 budgeted, at most 1/s
Discovered pages: 3
Tier: 1 — +1 no WAF observed
## Summary
**2** configuration issues: 0 high, 1 medium, 1 low.
### Pages fetched
- https://www.flapjackery.co.uk/contact-us/ → HTTP 200
- https://www.flapjackery.co.uk/privacy-policy/ → HTTP 200
- https://www.flapjackery.co.uk/terms-and-conditions/ → HTTP 200
## Checks
| Check | Host | Severity | Result |
| --- | --- | --- | --- |
| The site serves HTTPS | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| HTTP Strict Transport Security | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Content Security Policy | flapjackery.co.uk, www.flapjackery.co.uk | Medium | fail |
| MIME type sniffing is disabled | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Framing is restricted | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Referrer policy | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Cookie attributes | flapjackery.co.uk, www.flapjackery.co.uk | Low | fail |
| Server version disclosure | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Cross-origin resource sharing | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| HTTP redirects to HTTPS | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Exposure check: /.git/HEAD | flapjackery.co.uk, www.flapjackery.co.uk | Info | info |
| Environment file is not exposed | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
| Exposure check: /server-status | flapjackery.co.uk, www.flapjackery.co.uk | Info | info |
| Exposure check: /.well-known/security.txt | flapjackery.co.uk, www.flapjackery.co.uk | Low | info |
| TLS certificate | flapjackery.co.uk, www.flapjackery.co.uk | Info | pass |
## Findings
### 1. Content Security Policy (Medium)
No Content-Security-Policy header was returned.
**Suggested fix.** Start with Content-Security-Policy-Report-Only. Inventory external scripts and inline code, then test a site-specific policy before enforcing it.
### 2. Cookie attributes (Low)
Cookies [PHPSESSID, VPKSignature, shopping_cart] do not declare SameSite.
**Suggested fix.** Add SameSite=Lax or SameSite=Strict to session cookies.
## Patch
Configuration suggestions for staging review; see `patch/README.md` for placement and verification.
### _headers
```
# Review in staging. CSP is report-only and does not remediate the CSP finding.
/*
Content-Security-Policy-Report-Only: default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'; script-src 'self'
```
### nginx.conf
```
# Review in staging. CSP is report-only; tailor it before enforcement.
# Add inside the server { } block, then reload nginx.
add_header Content-Security-Policy-Report-Only "default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'; script-src 'self'" always;
```
### apache.conf
```
# Review in staging. CSP is report-only; tailor it before enforcement.
# Add inside the <VirtualHost> block or .htaccess, then reload Apache.
Header always set Content-Security-Policy-Report-Only "default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'; script-src 'self'"
```
## Requires site-specific review
- csp
- cookies
## Application findings (deep pass)
The deep pass did not finish (failed); app coverage is incomplete.
## Basis and limits
The baseline is passive: GET and HEAD against public addresses only. DNS is resolved once and connections are pinned; the site stays inside its own registrable domain; redirects are reported, never followed; the rate and request budget are enforced.
Checks cover transport, response headers, cookie flags, version banners, CORS, the certificate, and a few well-known exposure paths.
## What this review did not do
No exploitation, login, form submission, credential use, file upload, or application-logic testing in the passive baseline. No finding is confirmed exploitable; exposures are recorded as directly observed. Nothing was changed on the server.
## Delivery
`owner-email.md` and `github-issue.md` are generated from these findings. Nothing is sent unless the `send` command runs.
partial · Tier 1 · 2 findings
flapjackery.co.uk
Reviewed Mon, 26 Oct 2026 19:33:17 GMT. No delivery recorded.
Suggested patch
Review before applying.
# Review in staging. CSP is report-only and does not remediate the CSP finding. /* Content-Security-Policy-Report-Only: default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'; script-src 'self'