Baltor Get started

Case study

How sign-up is protected.

An account should belong to whoever controls its email address. This is how Baltor's sign-up makes sure of that, and what the live checks of September 24, 2026 showed.

Checked on the live service on September 24, 2026 · 11 of 11 steps passed

The risk we found

On September 23, 2026 we probed our identity provider. Its own public sign-up kept the first password chosen for an address that was not yet confirmed. Whoever registered your address first could set its password, and you would activate their account by confirming it. Account creation stayed closed until the fix below was live.

What Baltor does

  1. Your address first. Get started asks for your email address and nothing else.
  2. Baltor's own link. Baltor sends the confirmation link itself, from accounts@mail.baltor.ai.
  3. Your password after the link. You choose your password on the page the link opens, so nobody sets it before you confirm.
  4. One way in. An account exists only when Baltor's sign-up created it. Any other account under the same address is refused at sign-in, then archived and replaced when the owner of the address signs up through Baltor.

The live check

Real accounts with disposable inboxes on the live service, at 13:03 UTC on September 24, 2026. No password, token or message body was recorded.

  • The message is Baltor's

    It came from accounts@mail.baltor.ai with the subject "Confirm your Baltor account", and its link opened the confirmation page.

  • The link signs the owner in

    Following the link confirmed the address, set the password and signed the owner in.

  • A back-door account is replaced

    An address first registered through the provider's own sign-up was taken over by Baltor's sign-up. After that, the first password no longer worked, and the one chosen on Baltor's page did.

Limits

The identity provider's own public sign-up is still open at the provider. The service refuses every account it did not create, as the check showed.

Today the link in the message opens the service at its hosting address on fly.dev rather than at baltor.ai. Both addresses reach the same service.