Skip to content

ReceiptPi v1.2.2 — Security Hardening

Choose a tag to compare

@HostisHumani HostisHumani released this 25 Sep 12:55
· 48 commits to main since this release
b6935e0

ReceiptPi v1.2.2 - Security Hardening

This patch release focuses on security hardening and safer handling of credentials, redirects, file paths, and error responses.

🔐 Mealie token protection

ReceiptPi now handles Mealie credentials more defensively.

  • Stored API tokens are only reused for the exact configured Mealie base URL.
  • Changing the Mealie URL requires entering the token again.
  • Authorization headers are stripped on cross-origin redirects.
  • Same-origin redirects continue to work normally.

This prevents a saved Mealie token from being forwarded to an unexpected host.

🖨️ Safer logo handling

Logo file handling now uses a fixed slot-to-path mapping instead of constructing file paths dynamically from request values.

This removes the possibility of unsafe path manipulation while keeping the existing logo workflow unchanged.

🖼️ Safer image and upload errors

Detailed Pillow/Base64 exceptions are no longer returned directly through the API.

  • Users receive a generic error message.
  • Full technical details remain available in the server logs via journalctl

This avoids exposing unnecessary internal implementation details.

🔑 SSH host key pinning

Password-authenticated system report hosts now pin SSH host keys on the first successful connection.

  • First contact behaves like StrictHostKeyChecking=accept-new
  • Future connections Verify the stored host key.
  • Changed host keys are rejected instead of silently accepted
  • SSH keys are stored separately in ReceiptPi's state directory.

This replaces the previous permissive Paramiko host-key behavior.

📚 Documentation

The English and German documentation has been updated to reflect the stricter Mealie token behavior.


Full Changelog: v1.2.1...v1.2.2