Attack in progressA leaked CI key of ‹ci-deploy-bot› is being used to break in: 6 accounts and machines created.Open the case
Settings
Every setting Firekeeper has. A keeper (a person whose passkey approves changes) signs each change with a passkey; nothing else is needed.
Watching
What Firekeeper reads, how often, and what it checks.
What the last run could readEvery cluster, and whether Firekeeper can see inside it
AWS accounts Firekeeper watches
DefaultAll accounts
Every account is watched, because an attacker goes where no one looks.
Change
Details
- Setting name
- scope.accounts
- Read by
- the scheduled run
Regions Firekeeper watches
DefaultAll regions
Every enabled region is watched, because an attacker can use any of them.
Change
Details
- Setting name
- scope.regions
- Read by
- the scheduled run
Clusters Firekeeper watches
DefaultAll clusters
Every cluster that allows Firekeeper in is watched.
Change
Details
- Setting name
- scope.clusters
- Read by
- the scheduled run
How often the scheduled run starts
DefaultEvery day at 06:00 UTC
A full run a day keeps the bill small; urgent signals arrive between runs.
Change
Details
- Setting name
- scan.interval_seconds
- Read by
- the 15-minute check
Time of day the scheduled run is anchored to
Default06:00 UTC
One fixed time a day keeps runs predictable, and 06:00 UTC is before the working day in Europe.
Change
Details
- Setting name
- scan.anchor_utc
- Read by
- the 15-minute check
Whether the scheduled run is paused
DefaultNot paused
Firekeeper watches unless a keeper pauses it, and a pause always ends.
Change
Details
- Setting name
- scan.paused
- Read by
- the 15-minute check
Network flow logs Firekeeper reads
DefaultOff
The network sensor costs money per gigabyte read, so it is off until a keeper turns it on.
Change
Details
- Setting name
- sensors.flowlogs
- Read by
- the scheduled run
Most log-query data scanned in one run
Default20 GB a run
20 GB of log queries a run covers a busy account at a few dollars a month.
Change
Details
- Setting name
- budget.insights_gb_per_run
- Read by
- the scheduled run
Most cluster audit data read in one run
DefaultAt most 32 GB a run
32 GB of cluster audit logs a run covers a busy day at a few dollars a month.
Change
Details
- Setting name
- sensors.eks_audit_gb_per_run
- Read by
- the scheduled run
Extra check packs
DefaultCore
The core pack fits every AWS account; other packs are opt-in because they fit only some.
Change
Details
- Setting name
- rules.packs
- Read by
- the scheduled run
Extra detector packs
DefaultCore
The core detectors fit every AWS account; other packs are opt-in.
Change
Details
- Setting name
- detectors.packs
- Read by
- the scheduled run
Checks held silent or switched on
DefaultEvery check as released
No rule is pinned until a keeper decides one should be.
Change
Details
- Setting name
- rules.status
- Read by
- the scheduled run
What kinds of data matter most
DefaultNone
Nothing is ranked as a crown jewel until a keeper names it.
Change
Details
- Setting name
- assets.classes
- Read by
- the scheduled run
More settings
Days a new check stays silent
Default7 days
A new rule watches quietly for a week so its first alerts are ones it has already shown it gets right.
Change
Details
- Setting name
- rules.shadow_days
- Read by
- the scheduled run
How sure a new check must be before it alerts
Default95%
A rule posts only while at least 95 in 100 of its reviewed findings stood.
Change
Details
- Setting name
- rules.precision_bar
- Read by
- the scheduled run
Reviews before a new check is measured
Default3 reviews
Three reviews are the fewest that say anything about a rule's precision.
Change
Details
- Setting name
- rules.min_reviews
- Read by
- the scheduled run
How much of each cluster setting is read
DefaultNames and values
Cluster settings are read with their values, because secrets are often left in them.
Change
Details
- Setting name
- kubernetes.configmap_values
- Read by
- the scheduled run
Optional GuardDuty protections
DefaultReported when off
An optional GuardDuty protection left off is reported, because it narrows what AWS sees.
Change
Details
- Setting name
- guardduty.optional_protections
- Read by
- the scheduled run
Revoked keys and identities to watch for
DefaultNone
No credential is marked revoked until a keeper records it.
Change
Details
- Setting name
- revocations
- Read by
- the scheduled run
DNS providers
DefaultNone
DNS providers outside AWS are not read in this release.
Change
Details
- Setting name
- dns.providers
- Read by
- the scheduled run
Buckets that hold sensitive data
DefaultNone
No bucket is ranked sensitive until a keeper names it.
Change
Details
- Setting name
- assets.sensitive_buckets
- Read by
- the scheduled run
Signing services to watch closely
DefaultNone
No API is ranked as one that moves funds until a keeper names it.
Change
Details
- Setting name
- assets.signing_apis
- Read by
- the scheduled run
Decoys that give an intruder away
DefaultNone
No decoy is watched until a keeper signs a set the scanner computed.
Change
Details
- Setting name
- assets.embers
- Read by
- the decoy watcher
Extra cluster resource groups Firekeeper reads
DefaultNone
Custom resources are not read until a keeper names their groups, because they can carry secrets.
Change
Details
- Setting name
- kubernetes.crd_groups
- Read by
- the scheduled run
Shortest wait between runs you start by hand
Default30 minutes
Half an hour between manual runs keeps a stuck button from running up the bill.
Change
Details
- Setting name
- scan.manual_min_gap_seconds
- Read by
- the 15-minute check
Most runs you may start by hand in a day
Default6 a day
Six manual runs a day are enough to check fixes without running up the bill.
Change
Details
- Setting name
- scan.manual_max_per_day
- Read by
- the 15-minute check
Most AWS calls per account in a run
Default25,000 calls
25,000 calls an account a run read a large account without straining its API limits.
Change
Details
- Setting name
- budget.api_calls_per_account
- Read by
- the scheduled run
Regions read at the same time
Default4 regions at once
Four regions at once is fast without straining your own API limits.
Change
Details
- Setting name
- budget.region_concurrency
- Read by
- the scheduled run
Most data one collector reads in a run
Default200 MB
200 MB per collector reads a large set of accounts within the scanner's memory.
Change
Details
- Setting name
- budget.bytes_per_collector
- Read by
- the scheduled run
Agents
The agents that read findings with you, and what they may spend.
Agents are on
The agents read findings with you, on the models below, within the budget below.
Models per role
| Role | Model | This release allows | Bedrock check |
|---|---|---|---|
| Lead | anthropic.claude-opus-4-5-20251101-v1:0 | anthropic.claude-opus-4-5-20251101-v1:0 | Not checked yet. |
| Triage | anthropic.claude-haiku-4-5-20251001-v1:0 | anthropic.claude-haiku-4-5-20251001-v1:0 | Not checked yet. |
| Hunt | anthropic.claude-sonnet-4-5-20250929-v1:0 | anthropic.claude-sonnet-4-5-20250929-v1:0, anthropic.claude-opus-4-5-20251101-v1:0 | Not checked yet. |
| Second opinion | openai.gpt-oss-120b-1:0 | openai.gpt-oss-120b-1:0, amazon.nova-pro-v1:0, meta.llama4-maverick-17b-instruct-v1:0, mistral.mistral-large-2407-v1:0 | Not checked yet. |
This console cannot run the Bedrock check.
Budget
- Agents' day budget
- $15 a day, $465 at most a month
- Chat's day budget
- $3 a day, $93 at most a month
- Kept in reserve for the most urgent cases
- $30 a day
Agents may read findings
DefaultOn
The agents investigate by default, inside your own AWS account, and code still decides every status.
Change
Details
- Setting name
- llm.enabled
- Read by
- the scheduled run
Models the agents may use
DefaultThe default model for every role
Each role uses the release's preferred model until a keeper chooses another.
Change
Details
- Setting name
- agents.models
- Read by
- the agent runtime
Most the agents may spend in a day
Default$15.00 a day
USD 15 a day covers a normal day's investigations.
Change
Details
- Setting name
- agents.budget.day_usd
- Read by
- the agent runtime
How the agents' proposals are handled
DefaultQuieting a finding, hardening and leads to follow
The agents may propose suppressions, hardening fixes and hunt leads; keepers decide every one.
Change
Details
- Setting name
- agents.proposals
- Read by
- the agent runtime
Standing instructions for the agents
DefaultNone
No standing instructions until a keeper writes them.
Change
Details
- Setting name
- agent.standing_rules
- Read by
- the scheduled run
More settings
Whether agents may use the global model profile
DefaultNo
Model calls stay in your own regions unless a keeper allows global routing.
Change
Details
- Setting name
- agents.allow_global_profile
- Read by
- the agent runtime
Daily spend held back for an attack
Default$30.00 a day
USD 30 is kept back so an attack is investigated even after a busy day.
Change
Details
- Setting name
- agents.budget.attack_reserve_usd
- Read by
- the agent runtime
Most chat may spend in a day
Default$3.00 a day
USD 3 a day covers questions asked in the console.
Change
Details
- Setting name
- agents.budget.chat_day_usd
- Read by
- the agent runtime
Most cases the agents open at once
Default6 cases at once
Six cases a tick keep investigations focused; the hard maximum is twelve.
Change
Details
- Setting name
- agents.max_cases
- Read by
- the agent runtime
Most data the agents may scan in a day
Default5 GB a day
5 GB of follow-up log reads a day answers most questions for under a dollar a month.
Change
Details
- Setting name
- agents.max_gb_scanned_day
- Read by
- the agent runtime
Defend
What Firekeeper may do on its own to contain an active case, and its limits.
Defend is on. The Defend page shows whether it is acting right now, or paused by Firekeeper itself.
It may act on: identities, containment and exposure.
Pause now
Limits
Turn off
Holding now
What Defend holds now could not be read.
Standing orders
No standing order is in force. Issuing one comes with a later version.
People
Who approves changes, and how strong their passkeys must be.
Passkeys for console decisions
Keepers
A keeper is a person whose passkey approves changes.
2 keepers can sign.
Alice
Keeper
- Passkey on one device (as the key reports) ccc9fe76d45db13f8a455f4b3b0322b0cf0751080a5fae5f8582882048a8163e live
Someone needs that device and its unlock. Firekeeper cannot prove the key stays on one device.
- Passkey on one device (as the key reports) ccc9fe76d45db13f8a455f4b3b0322b0cf0751080a5fae5f8582882048a8163e live
Bob
Keeper
- Passkey on one device (as the key reports) cbde8901e4b234a6eb95f451d1b7bfe760e5c13a399d3742525d17d5756a959a live. never used. A spare swapped by a lying enrolment page fails on its first use. Sign one small change with it once a quarter, so you find out early.
Someone needs that device and its unlock. Firekeeper cannot prove the key stays on one device.
- Passkey on one device (as the key reports) cbde8901e4b234a6eb95f451d1b7bfe760e5c13a399d3742525d17d5756a959a live. never used. A spare swapped by a lying enrolment page fails on its first use. Sign one small change with it once a quarter, so you find out early.
Invite a keeper
The ledger keeps only a keyed fingerprint of the address. The address goes to the install gate alone, which makes their sign-in at the door.
Viewers
People who may read the console. They sign nothing and change nothing.
- Viewer
Invite a viewer
Your passkeys
- Passkey on one device (as the key reports) ccc9fe76d45db13f8a455f4b3b0322b0cf0751080a5fae5f8582882048a8163e live
Someone needs that device and its unlock. Firekeeper cannot prove the key stays on one device.
- Synced passkey (password manager or keychain)
- To sign as this keeper, someone needs the password-manager or keychain account, or a device signed in to it, and its unlock.
- Passkey on one device (as the key reports)
- Someone needs that device and its unlock. Firekeeper cannot prove the key stays on one device.
- Hardware key, verified
- Someone needs that physical key and its PIN.
Approvals needed
How many keepers must approve each kind of change. A number above the keepers who can sign holds that kind of change until more join.
- To quiet a finding or a check: 1
- To widen access or reach: 1
- To change who decides: 1
- For Defend: 1
Security
Recovery wait: 7 days. Recovering the install without a keeper's passkey waits this long, and every keeper is told.
No authenticator model is refused.
Weakest passkey that may approve changes
DefaultAny passkey
Any passkey can sign, and the kind of passkey is recorded; stricter keys are opt-in.
Change
Details
- Setting name
- assurance.key_floor.authority
- Read by
- the approvals check
Away until
DefaultNot away
Nobody is away until a keeper says so.
Change
Details
- Setting name
- assurance.away_until
- Read by
- the approvals check
More settings
Weakest passkey that may approve Defend
DefaultAny passkey
Any passkey can approve Defend, and the kind of passkey is recorded; stricter keys are opt-in.
Change
Details
- Setting name
- assurance.key_floor.defend
- Read by
- the approvals check
Weakest passkey for the most dangerous Defend steps
DefaultAny passkey
Any passkey can approve a critical Defend step, and the kind of passkey is recorded.
Change
Details
- Setting name
- assurance.key_floor.defend_critical
- Read by
- the approvals check
Weakest passkey a keeper may add
DefaultAny passkey
Any passkey can be enrolled, so no one needs to buy hardware.
Change
Details
- Setting name
- assurance.enrol_min
- Read by
- the approvals check
Second check for dangerous changes
DefaultA confirmation by e-mail
A one-keeper install confirms by mail, which needs nothing more than the address it already has.
Change
Details
- Setting name
- assurance.second_path
- Read by
- the approvals check
Changes that need the second check
DefaultThe most dangerous Defend steps
Critical Defend acts by one keeper are confirmed on a second path.
Change
Details
- Setting name
- assurance.second_path_classes
- Read by
- the approvals check
Waiting periods while you are the only keeper
DefaultFirekeeper's waiting periods
A one-keeper install waits the release's own lock lengths.
Change
Details
- Setting name
- assurance.solo_locks
- Read by
- the approvals check
Changes allowed without a wait
DefaultNone
No change skips its lock unless keepers set a cap.
Change
Details
- Setting name
- assurance.unlocked_caps
- Read by
- the approvals check
Hold before a critical Defend step
Default15 minutes
A critical act one keeper confirms alone is held 15 minutes so another can stop it.
Change
Details
- Setting name
- assurance.critical_hold
- Read by
- the approvals check
Alerts
Where Firekeeper tells you what it found, and what it sends out.
Lowest severity in the digest
DefaultHigh and above
High and critical findings reach people; the rest stay on the board.
Change
Details
- Setting name
- digest.min_severity
- Read by
- the scheduled run
Weekday the board digest goes out
DefaultMonday
The weekly board arrives at the start of the working week.
Change
Details
- Setting name
- digest.board_weekday
- Read by
- the digest
Time zone for the digest
DefaultUTC
UTC is the same for everyone until a keeper chooses a local zone.
Change
Details
- Setting name
- digest.timezone
- Read by
- the digest
Where findings are exported
DefaultNot exported
Nothing is exported unless a keeper adds a target.
Change
Details
- Setting name
- export.targets
- Read by
- the scheduled run
More settings
Most items in one digest
Default5 items
Five items a digest is what people read; the rest are on the board.
Change
Details
- Setting name
- digest.max_items
- Read by
- the digest
Days between reminders for critical findings
DefaultEvery 7 days
An open critical finding is raised again after a week.
Change
Details
- Setting name
- digest.critical_reminder_days
- Read by
- the digest
Days between reminders for high findings
DefaultEvery 30 days
An open high finding is raised again after a month.
Change
Details
- Setting name
- digest.high_reminder_days
- Read by
- the digest
Whether a quiet day still posts a digest
DefaultNo
Digests are posted in full; quieter posting is a keeper's choice.
Change
Details
- Setting name
- digest.quiet_posts
- Read by
- the digest
What the digest dashboard shows
DefaultYes
The weekly board is on, so the whole picture is one link away.
Change
Details
- Setting name
- digest.dashboard
- Read by
- the digest
Metrics page
DefaultOff
Nothing about your accounts leaves Firekeeper unless a keeper turns it on.
Change
Details
- Setting name
- observe.endpoint
- Read by
- the scheduled run
Detail in metric labels
DefaultTotals only
Metrics carry no account, rule or order labels unless a keeper adds them.
Change
Details
- Setting name
- observe.labels
- Read by
- the scheduled run
Metrics to CloudWatch
DefaultOff
No CloudWatch metrics are written unless a keeper turns them on.
Change
Details
- Setting name
- observe.emf
- Read by
- the scheduled run
Metrics and traces to your collector
DefaultOff
Nothing is forwarded to a collector unless a keeper turns it on.
Change
Details
- Setting name
- observe.otlp
- Read by
- the scheduled run
Log detail
DefaultNormal
Info logs say what happened without the detail debug logging adds.
Change
Details
- Setting name
- observe.log_level
- Read by
- the scheduled run
Service targets
DefaultFirekeeper's targets
Firekeeper's own service levels hold at the release's thresholds.
Change
Details
- Setting name
- observe.slo
- Read by
- the scheduled run
Prices used for cost metrics
DefaultFirekeeper's list prices
Costs are shown at the release's list prices until a keeper records your own.
Change
Details
- Setting name
- observe.unit_prices
- Read by
- the scheduled run
Exceptions
What you told Firekeeper is expected, and how long each lasts.
Suppressions
No finding is suppressed.
Class passes
No class of findings is accepted.
Known good
User pool settings you expect
DefaultNone
Every user pool is held to the same safe baseline until a keeper sets one apart.
Change
Details
- Setting name
- cognito.pools
- Read by
- the scheduled run
Resources public on purpose
DefaultNone
Nothing is public by design until a keeper says so, so every exposure is reported.
Change
Details
- Setting name
- assets.public_by_design
- Read by
- the scheduled run
Your own outbound address ranges
DefaultNone
No range is treated as your own until a keeper names it, so all unusual egress is reported.
Change
Details
- Setting name
- network.org_egress_cidrs
- Read by
- the scheduled run
Identities that deploy
DefaultNone
No deployer is trusted until a keeper names it, so every change is checked.
Change
Details
- Setting name
- allowlists.deployer_principals
- Read by
- the scheduled run
Outside accounts you trust
DefaultNone
No outside account is trusted until a keeper names it.
Change
Details
- Setting name
- allowlists.known_external_accounts
- Read by
- the scheduled run
Buckets public on purpose
DefaultNone
No bucket is public on purpose until a keeper says so.
Change
Details
- Setting name
- allowlists.intentionally_public_buckets
- Read by
- the scheduled run
Machine groups allowed the old metadata service
DefaultNone
No group is excused from instance metadata hardening until a keeper says so.
Change
Details
- Setting name
- allowlists.weak_imds_asgs
- Read by
- the scheduled run
Image registries you trust
DefaultNone
Images are expected from your own organisation's registries.
Change
Details
- Setting name
- allowlists.image_registries
- Read by
- the scheduled run
Identities idle on purpose
DefaultNone
No idle identity is excused until a keeper says why.
Change
Details
- Setting name
- allowlists.dormant_by_design
- Read by
- the scheduled run
Cluster administrators you expect
DefaultNone
No cluster administrator is excused until a keeper names them.
Change
Details
- Setting name
- allowlists.cluster_admins
- Read by
- the scheduled run
Your CDN
DefaultNone
No CDN is assumed, so every exposed origin is reported.
Change
Details
- Setting name
- allowlists.cdn_provider
- Read by
- the scheduled run
These are never silenced
No signature can quiet these rules or any finding about Firekeeper itself.
- Audit logging or detection turned off or tampered with
- A revoked key or identity still working
- Persistence planted, or alerts cut
- Firekeeper's own coverage and integrity
Licence
Your plan, what it turns on, and when it ends.
Licensed until 7 Sep 2027
- Plan
- Defend, early access: issued at no cost
- Turns on
- Watching and alerts and Defend, which acts on its own to contain an active case
- Ends
- 7 Sep 2027
Any licence, including the free Watch licence, turns on changes. Defend needs a Defend licence. Firekeeper keeps watching in every licence state.
Add licence
Details
| License | ‹00000000-0000-4000-8000-000000000001› |
|---|---|
| Plan | ‹Defend, early access: issued at no cost› |
| Key | ‹fk-test-0000000000000001›: matches this release's key, which vouches for licenses issued until 2 Oct 2028 |
| Issued | ‹6 Sep 2026› |
| Valid from | ‹6 Sep 2026› |
| Valid until | ‹7 Sep 2027› |
| Account | ‹111122223333› |
| Features | ‹watch› ‹defend› |
On 7 Sep 2027 changes and Defend stop. Firekeeper keeps watching.
Turned off: nothing.
Checks
- At most 16 KiB: passed
- Three parts, the first FKL1: passed
- Payload is strict JSON, version 1: passed
- Signed by a key this release trusts: passed
- Signature verifies: passed
- Fields are well formed, term at most 400 days: passed
- Started: passed
- Not expired: passed
- Names this install's account, or none: passed
This release can verify licenses issued until 2 Oct 2028. Upgrade before then to renew.