1. A ameaça de denial of wallet de ia
Um incidente de denial-of-wallet geralmente remonta a uma de três formas:Loop de agente descontrolado
Loop de agente descontrolado
Um agente tenta repetidamente a mesma ferramenta falha ou re-planeja em um
loop apertado, re-pagando por tokens a cada passada. Nenhuma malícia
necessária — uma condição de parada ruim é suficiente.
Fan-out injetado
Fan-out injetado
Uma injeção de prompt direciona o
agente a fazer spam de uma ferramenta ou emitir requisições gigantes,
multiplicando o gasto por turno.
Chave vazada ou com escopo amplo demais
Chave vazada ou com escopo amplo demais
Uma chave acaba em algum lugar que não deveria — um
.env commitado, um
notebook compartilhado — e um atacante roda inferência na sua conta até o
gasto ser notado.2. Teto de custo por-run com cap_cost
O veredito cap_cost do Firewall é um disjuntor para loops descontrolados.
Você o escreve como uma regra com um cap em centavos por-run; o motor soma o
gasto acumulado da run do agente e, assim que a run cruza o cap, resolve o
veredito para deny — cada chamada de ferramenta posterior naquela run é
bloqueada.
cap_cost é um teto pré-dispatch: ele avalia antes de a chamada chegar à
ferramenta, então ele detém a próxima chamada cara em vez de reembolsar uma
já feita. Um cap catch-all típico em cada ferramenta:
firewall_blocked — marcada como skip-retry, de modo que o loop não
pode martelar em torno da negação. O teto é por run de agente e somado
através de toda a política do seu workspace, de modo que uma conversa
descontrolada não pode sangrar para o orçamento de outra.
Veja a referência de regras do Firewall para a
linguagem de correspondência completa e onde cap_cost se encaixa entre os
outros vereditos.
3. Orçamento rígido por chave com credit_limit_usd
cap_cost limita uma única run. Para limitar uma chave — cada run que ela
emitir — defina credit_limit_usd na chave de API. É um teto rígido em USD no
gasto vitalício daquela chave: o gateway o converte na quota restante da
chave, e assim que a chave gastou sua cota, chamadas de relay posteriores são
rejeitadas por crédito insuficiente. 0 significa ilimitado.
Combine-o com os outros escopos da chave para que uma chave vazada seja
limitada em cada eixo de uma vez:
credit_limit_usd
Teto rígido de gasto em USD para a chave (
0 = ilimitado).expired_time
Timestamp de auto-expiração (
-1 = nunca). Uma chave de vida curta limita
a janela de raio de explosão.allow_ips
Fixe a chave a IPs de origem conhecidos — uma chave vazada é inútil fora da
rede.
model_limits
Restrinja a chave a modelos específicos, para que ela não possa alcançar os
mais caros de jeito nenhum.
credit_limit_usd que ele nunca deveria exceder legitimamente. O limite é o
orçamento, não um palpite sobre o comportamento do atacante — mesmo uma chave
totalmente comprometida para no teto.
Configure tudo isso a partir do editor de chave do console (ou da API de
token) sob sua sessão — estas são configurações de chave, não chamadas de
relay. Apenas as requisições de inferência
/v1/* usam a própria chave
sk-orca-.... Editar o limite entra em vigor na próxima requisição da chave;
sem redeploy.4. Capture o pico que você não previu: anomalias de custo
Um cap estático detém o gasto que você antecipou. A detecção de anomalias do Firewall captura o gasto que você não previu. Ela aprende a forma normal de uso de ferramenta de cada workspace contra uma baseline por hora-da-semana (uma média móvel de 14 dias) e expõe desvios em um feed legível por Member:| Anomalia | O que ela sinaliza |
|---|---|
burn_spike | Custo de uma ferramenta muito acima de seu custo de baseline aprendido — o sinal de denial-of-wallet. |
rate_spike | Volume de chamadas muito acima da baseline — fan-out e inundações. |
retry_loop | A mesma ferramenta com os mesmos argumentos repetindo em uma janela apertada — o loop descontrolado clássico. |
5. Juntando tudo
Empilhe os três para que um descontrole nunca chegue à fatura:| Controle | Escopo | Quando dispara |
|---|---|---|
Regra cap_cost | Uma run de agente | O gasto acumulado da run cruza o cap em centavos |
credit_limit_usd | Uma chave, vitalício | O gasto total da chave atinge seu teto em USD |
burn_spike / retry_loop | Workspace, aprendido | Gasto ou padrão de repetição desvia da baseline |
cap_cost por-run em *, um credit_limit_usd em
cada chave de agente e o hábito de checar o feed de anomalias. Faça o rollout
de uma nova política cap_cost em shadow mode
primeiro — ela registra [shadow] would deny sem bloquear — de modo que você
possa dimensionar o cap contra tráfego real antes de ele morder.
6. Ameaças relacionadas
Denial of wallet raramente chega sozinho — o loop que queima seu orçamento é frequentemente conduzido por algo upstream:- Injeção de prompt — instruções injetadas são um gatilho comum para fan-out e tool spam.
- Agência excessiva — um agente com latitude demais tem mais maneiras de gastar.
- Chamadas de ferramenta perigosas — o mesmo plano de regras do firewall limita o que uma ferramenta pode fazer, não apenas quanto ela custa.
- O modelo de ameaças — onde o custo descontrolado se encaixa na superfície de ataque agêntica completa.
Visão geral do Firewall
Vereditos, detecção de anomalias, níveis de autonomia e observabilidade.
Chaves e políticas com escopo
Como limites de chave, guardrails e políticas de firewall compõem por
chave.
