Ctrl K
ComunidadGuías…

SECURITY.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Security policy

## Reporting a vulnerability

**Please do not open a public issue for a security problem.**

Report it privately through GitHub:
[Report a vulnerability](https://github.com/flagraft-hq/flagraft/security/advisories/new).
That opens a draft advisory only the maintainers can see.

Useful things to include, as far as you have them: what an attacker can do, the
steps to reproduce, the version or commit, and whether it needs an authenticated
account or an API key.

You should get an acknowledgement within a week. If you do not hear anything,
assume the message was missed and open a public issue saying only that you are
waiting on a security response -- no details.

## Supported versions

Flagraft is pre-1.0 and has not had a security audit. Only the latest release
gets fixes; there are no backports to earlier versions.

| Version        | Supported |
| -------------- | --------- |
| Latest release | Yes       |
| Anything older | No        |

## Things that are not vulnerabilities

Flagraft is self-hosted, so some of its security depends on how you run it.
These are documented behaviors rather than bugs:

- **The default admin password.** First boot seeds an admin account with a
  published default password. The server refuses to start in production until
  `DEFAULT_ADMIN_PASSWORD` is changed. Leaving it set in a non-production
  deployment that is nonetheless reachable is a deployment mistake.
- **Client keys are low-privilege, but not public.** A client key is scoped to
  one project and environment and can only evaluate flags. It is still a
  credential: the SDK is server-side, and browser apps are expected to proxy
  evaluation through their own backend rather than ship the key to visitors. A
  client key found in a published frontend bundle is a real report.
- **Swagger UI at `/docs`.** Served outside production, disabled when
  `NODE_ENV=production`.
- **`TRUST_PROXY` left off behind a proxy.** Rate limits then count every caller
  as the proxy. That is a misconfiguration; see the README.

Known limitations we already track, including the gaps in regex constraint
screening and login throttling, are listed in
[docs/ROADMAP.md](docs/ROADMAP.md#known-limitations). Reports that restate those
are welcome but will be closed as known.

## Scope

In scope: the server, the admin UI, the SDK, and the published Docker image.

Out of scope: vulnerabilities in dependencies that have no exploitable path
through Flagraft, and anything requiring an attacker who already has workspace
owner access -- that role can already change everything by design.