All releases

Version 0.105.1

2026-08-30 08:31:32 UTC

HotfixBeta

Security

2
  • The public storage figures could be raised with blob ids that named nothing at all. They are now read back from the storage network before they are published.

    A blob id is 43 characters, and until now the server could only ask whether it had the right shape — an invented one and a real one look identical from here, so 4,096 made-up ids declaring 16 MiB each added exactly 64 GB to a figure printed as measured fact. The server now asks the public read endpoint for the first 72 bytes of every part before any counter moves, and that one request says whether the blob exists, how many bytes it really holds and whether NMTS wrote it; the file counts and the byte counts on the statistics screen both use that answer, so they no longer mean two different things. An upload therefore reaches the figures a minute or two late, and it is never refused — a file whose bytes cannot be read back is still stored, still listed and still downloadable. Naming somebody else's real blob is still allowed and still cannot inflate anything, because one blob counts once in the lifetime of the service.

  • The download figure could be raised without limit by asking for the same file again and again. It now counts the measured size.

    Asking for a file's download descriptor added whatever size the file claimed, and one row could claim 64 GB with nothing stored behind it — so repeating that request added 64 GB every time, without limit. The count now uses the size read back from the storage network, so a blob nobody stored adds nothing however often it is asked for, while two downloads of one real file are still counted twice because they really are two downloads. The same rule reached the shared-file route, which had gone on adding the claimed size for five weeks after the owned-file route stopped.

NMTS — cloud storage that encrypts in your browser