Skip to content

v0.4.1

Choose a tag to compare

@TadMSTR TadMSTR released this 20 Oct 20:33
· 3 commits to main since this release
5628e2f

Security

  • get_config no longer returns Backrest secrets. Before this release it passed Backrest's GetConfig response through unchanged. Backrest v1.13.0 masks only auth.users[].passwordBcrypt, so the tool returned:

    • repos[].password (the restic encryption key) in cleartext
    • env values and credential-bearing uri userinfo
    • restic flags and hook targets
    • the multihost sync block

    get_config now returns an allowlist projection built by the new backrest_mcp/redact.py. Unknown keys are dropped by construction. Secret-bearing fields become summaries: envKeys (names only), hasPassword, flagCount, backupFlagCount, and the hook action type.

    • Repo URIs lose userinfo, query strings and fragments, and are fully redacted when the userinfo boundary is ambiguous.
    • restic rclone: inline connection strings are redacted.

    If you called get_config on an earlier version, treat your repo password as disclosed to that session's transcript and any LLM tracing.

  • restore_snapshot sends and audit-logs the resolved target path. This narrows a check-to-restore symlink race; it does not close it. restore_snapshot is registered only with BACKREST_ALLOW_DESTRUCTIVE=true.

See CHANGELOG.md for details.