Skip to content

v0.3.1

Latest

Choose a tag to compare

@Oaklight Oaklight released this 04 Jul 05:52

Security Patch

Fixed (CRITICAL)

  • SSRF via file:// protocol — Playwright page.goto() accepted arbitrary schemes, allowing local file reads (e.g. /etc/passwd)
  • SSRF via localhosthttp://127.0.0.1:9222 exposed CDP debug endpoints with WebSocket URLs enabling RCE
  • No URL validation — user-supplied URLs forwarded to Playwright without any sanitization

Fixed (MEDIUM)

  • data: URL injection — attacker could render arbitrary HTML content

Added

  • url_validator.py — scheme whitelist (http/https only), DNS resolution with private/reserved IP blocking (loopback, RFC1918, link-local, cloud metadata 169.254.x.x)
  • Fail2ban-style IP rate limiting — 3 auth failures in 5 min → 10 min ban, with X-Forwarded-For support

Changed

  • Reduce max_body_size from 10 MB to 64 KB
  • Promote blocked-request filter log from DEBUG to INFO

Upgrade strongly recommended. All users running VeilRender on shared/public networks should update immediately.

Full Changelog: v0.3.0...v0.3.1