# Passive security review — Konditor
Run: 4c3f58f6-7026-40ad-9329-d5d4f223a6da
Status: **completed**
Reviewed: `konditor.co.uk`, `www.konditor.co.uk`
Started: 2026-10-26T17:01:46.777Z
Requests: 17 of 40 budgeted, at most 1/s
Discovered pages: 3
Tier: 2 (limited writes) — +2 parameter surface, +2 sequential identifiers, +2 cart/checkout logic, +2 structured API
## Summary
**3** configuration issues: 0 high, 2 medium, 1 low.
### Pages fetched
- https://konditor.co.uk/pages/about-us → HTTP 200
- https://konditor.co.uk/ → HTTP 200
- https://konditor.co.uk/cart → HTTP 200
## Checks
| Check | Host | Severity | Result |
| --- | --- | --- | --- |
| The site serves HTTPS | konditor.co.uk, www.konditor.co.uk | Info | pass |
| HTTP Strict Transport Security | konditor.co.uk, www.konditor.co.uk | Medium | fail |
| Content Security Policy | konditor.co.uk, www.konditor.co.uk | Info | pass |
| MIME type sniffing is disabled | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Framing is restricted | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Referrer policy | konditor.co.uk, www.konditor.co.uk | Low | fail |
| Cookie attributes | konditor.co.uk, www.konditor.co.uk | Medium | fail |
| Server version disclosure | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Cross-origin resource sharing | konditor.co.uk, www.konditor.co.uk | Info | pass |
| HTTP redirects to HTTPS | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Git metadata is not exposed | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Environment file is not exposed | konditor.co.uk, www.konditor.co.uk | Info | pass |
| Server status page is not exposed | konditor.co.uk, www.konditor.co.uk | Info | pass |
| security.txt | konditor.co.uk, www.konditor.co.uk | Low | info |
| TLS certificate | konditor.co.uk, www.konditor.co.uk | Info | pass |
## Findings
### 1. HTTP Strict Transport Security (Medium)
Strict-Transport-Security max-age is 7889238; below the 180-day baseline.
**Suggested fix.** Raise max-age to at least 15552000 and add includeSubDomains once every subdomain supports HTTPS.
### 2. Cookie attributes (Medium)
Cookies [localization, cart_currency, _shopify_essential] are missing Secure and HttpOnly.
**Suggested fix.** Set Secure, HttpOnly and SameSite on every session cookie.
### 3. Referrer policy (Low)
No Referrer-Policy header was returned.
**Suggested fix.** Add Referrer-Policy: strict-origin-when-cross-origin.
## 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.
/*
Strict-Transport-Security: max-age=31536000; includeSubDomains
Referrer-Policy: strict-origin-when-cross-origin
```
### nginx.conf
```
# Review in staging. CSP is report-only; tailor it before enforcement.
# Add inside the server { } block, then reload nginx.
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" 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 Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
```
## Requires site-specific review
- cookies
## Application findings (deep pass)
The deep pass completed with no confirmed application findings. This does not establish complete coverage or prove the site is secure.
## 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.
completed · Tier 2 · 3 findings
konditor.co.uk
Reviewed Mon, 26 Oct 2026 16:45:27 GMT. Email: skipped.
Suggested patch
Review before applying.
# Review in staging. CSP is report-only and does not remediate the CSP finding. /* Strict-Transport-Security: max-age=31536000; includeSubDomains Referrer-Policy: strict-origin-when-cross-origin