Skip to content
fastbrowsefastbrowse

security

How the hosted service protects your data.

fastbrowse hosted runs a browser agent on the websites you send it to, often with your credentials. This page covers what the browser may reach, how secrets and keys are stored, where an irreversible action stops, and what is logged.

back to fastbrowse.ai

The model

  1. 01Pages are hostile

    Every page the agent opens is treated as hostile content. Nothing a page serves is trusted, and the agent's choices are constrained to indexed controls so a page cannot steer arbitrary actions.

  2. 02The browser cannot resolve private names

    Inside a run's browser, the cloud metadata endpoint and private service names under .internal fail to resolve, and Chrome resolves every other name through public DNS-over-HTTPS. A page cannot send the agent's browser to the host's own credentials or to the service's internal hostnames.

  3. 03One browser per run, then destroyed

    A browser serves a single run and is destroyed when that run ends. A later run starts on a fresh browser and inherits nothing from the page state of an earlier one.

  4. 04Chrome keeps its own sandbox

    The browser is Chrome with its own sandbox intact, so page content is contained by the browser's process isolation as it would be on your own machine.

  5. 05Secrets are encrypted and scoped

    Secrets you store are encrypted at rest with AES-256-GCM, bound to your organization and to the secret's name, and scoped to the origins you declare. A secret is resolved only for its allowed origin at the moment of typing, never returned by an API endpoint, and never included in a model prompt: the model sees only the secret's name.

  6. 06Keys and sessions

    API keys are stored only as a digest and are shown once, when they are created. Account passwords are hashed with Argon2id. Console sessions use cookies that are HttpOnly, SameSite=Lax and Secure.

  7. 07Money and irreversible actions stop for confirmation

    Paying, sending, submitting and deleting stop at needs_confirmation, where you can review them, unless the run was started with authorize, which lets the run proceed without asking. The classifier can miss an irreversible action.

  8. 09Signing in without the model seeing a password

    A run can sign in to a site you have an account for. Fastbrowse asks for a secret by name, for the origin it is about to type into, at the moment of typing: the value is resolved then, from an encrypted row, never returned by an endpoint and never put in a prompt. Secrets are stored with AES-256-GCM under a key derived per organization. KMS-backed storage, where each organization's data key is wrapped by a cloud KMS key, is available once AWS credentials are configured for the deployment; until they are, the console shows that provider as not configured rather than offering a control that would fail. Browser profiles let a run start already signed in, and the 1Password and Bitwarden vault connectors are available over the API. The credential management UI and vault import are coming soon.

  9. 08What is logged

    Run answers and page text are not logged; they are stored with the run and kept for your plan's history window. An audit log records changes to access and money, with who made each one and where it came from: sign-ins and password changes, members invited and removed, roles changed, keys created and revoked, secrets stored and deleted, plan changes and balance adjustments.

Report a vulnerability

Write to security@fastbrowse.ai with what you found and how to reproduce it. Reports are acknowledged within one working day.