v3.3.0
Security
- Block Server-Side Request Forgery (SSRF) (closes #41). The URL-fetch endpoints now resolve the target host and deny any request to private, loopback, link-local, CGNAT, or cloud-metadata address ranges (IPv4 and IPv6, including NAT64/6to4 embeddings). Every redirect hop is re-validated, and blocked requests return HTTP 403 before the cache is consulted. The guard covers the web fetch, Reddit short-link resolution, and the headless-browser sidecar dispatch.
- Self-hosters who intentionally fetch internal hosts can allowlist specific CIDRs and/or hostnames via
PULLMD_ALLOWED_HOSTS. Default is deny-all-internal; there is no global kill-switch. - Behind an outbound HTTP proxy, the proxy's egress rules are the authoritative layer.
Full changelog: see CHANGELOG.md.