Skip to content

v1.4.2 — security-review fixes: production engine paths, full metadata stripping, MCP guards

Choose a tag to compare

@Kayforkind Kayforkind released this 07 Sep 06:50
· 36 commits to main since this release

Independent security review found real issues; every confirmed one is fixed and verified.

Critical

  • OCR + MP3 export were 404 in production (engine scripts resolved against the origin root, not /tools/). Fixed by resolving against the page; CI now tests at the production URL shape so this class cannot hide again.
  • Photo Privacy Kit now strips XMP (APP1), IPTC (APP13) and JPEG comments in addition to Exif APP1 — plus PNG text/eXIf chunks and WebP EXIF/XMP (canvas re-encode). Proven on production with a crafted 4-channel JPEG: output contains none of them.

High

  • MCP endpoint: 1 MB request cap (413), per-IP rate limit (429), text_diff truncates inputs that would allocate >4M-cell LCS tables instead of OOMing.
  • LICENSE (MIT) + NOTICE (LGPL lamejs, Apache tesseract) committed — GitHub license detection now works and third-party licensing is honest.

Medium

  • Scan PDF pages sized at the documented 300 DPI; invoice taxes the discounted subtotal (labeled).
  • Metadata Checker: PDF XMP shown + stripped, encrypted-PDF warning; OOXML dates/custom.xml/thumbnails/comment authors; real .odt support.
  • E-Sign: encrypted-PDF warning; docs now say visual signature, not cryptographic.
  • README/EXAMPLES: OCR model is 11 MB (was misstated as 24 MB).
  • GitHub Pages mirror gets a meta CSP; scripts de-hardcoded (APPDATA paths, noreply email); account_id annotated as public routing info.

Gates: 82/82 unit · 28/28 E2E · 25/25 security — all at the production URL shape · CI green.