Chuyển đến nội dung chính
Một agent không cần phải rò rỉ dữ liệu để làm hại bạn. Nó chỉ đơn giản có thể tiêu tiền — một vòng lặp retry dồn dập một mô hình đắt đỏ, một hướng dẫn được tiêm qua prompt fan-out cả nghìn cuộc gọi tool, hoặc một API key bị rò rỉ chất chồng suy luận cho đến khi hóa đơn ập đến. Đây là denial of wallet: cuộc tấn công chính là chi phí. Khác với một denial-of-service kinh điển, gateway vẫn hoạt động và mọi request trông hợp lệ riêng lẻ — thiệt hại là chi tiêu tổng gộp. OrcaRouter cho bạn ba mức trần độc lập đều ngồi trước mô hình thượng nguồn, nên không một con đường mất kiểm soát đơn lẻ nào có thể đẩy hóa đơn của bạn lên vô hạn.

1. Mối đe dọa denial of wallet ai

Một sự cố denial-of-wallet thường truy ngược về một trong ba hình dạng:
Một agent retry cùng một tool đang thất bại hoặc lập lại kế hoạch trong một vòng lặp chặt, trả tiền lại cho token ở mỗi lượt. Không cần ác ý — một điều kiện dừng tồi là đủ.
Một prompt injection lái agent vào spam một tool hoặc phát ra các request quá khổ, nhân chi tiêu lên theo mỗi lượt.
Một key rốt cuộc đến một nơi nó không nên đến — một .env đã commit, một notebook được chia sẻ — và một kẻ tấn công chạy suy luận trên tài khoản của bạn cho đến khi chi tiêu bị phát hiện.
Phòng thủ giống nhau trong cả ba trường hợp: một mức trần cứng mà kẻ tấn công không thể nói lý lẽ để vượt qua, được thực thi tại gateway, không phải trong code agent của bạn.

2. Mức trần chi phí theo từng lần chạy với cap_cost

Verdict cap_cost của Firewall là một cầu dao ngắt mạch cho các vòng lặp mất kiểm soát. Bạn soạn nó như một quy tắc với một mức trần cents theo từng lần chạy; engine cộng dồn chi tiêu tích lũy của lần chạy agent và, một khi lần chạy vượt qua mức trần, phân giải verdict thành deny — mọi cuộc gọi tool về sau trong lần chạy đó đều bị block. cap_cost là một mức trần trước-dispatch: nó đánh giá trước khi cuộc gọi đến được tool, nên nó chặn cuộc gọi đắt đỏ kế tiếp thay vì hoàn lại một cái đã thực hiện rồi. Một mức trần bao trùm điển hình trên mọi tool:
{
  "priority": 50,
  "label": "cap runaway spend at $5 per run",
  "tool_name_glob": "*",
  "verdict": "cap_cost",
  "cap_cost_cents": 500
}
Dưới mức trần thì cuộc gọi được phép; vượt nó, lần chạy bị deny với một HTTP 400 firewall_blocked — được đánh dấu skip-retry, nên vòng lặp không thể dồn dập vòng quanh sự từ chối. Mức trần là theo từng lần chạy agent và cộng dồn xuyên suốt toàn bộ chính sách workspace của bạn, nên một cuộc hội thoại mất kiểm soát không thể chảy máu sang ngân sách của cái khác.
cap_cost đọc chi tiêu đang chạy từ request log của bạn. Giữ việc bắt request-log bật cho workspace để bản gộp chi-tiêu-đang-chạy có các hàng để cộng — nếu không thì ước tính chi-tiêu-trước được giữ thận trọng ở 0 và mức trần không thể thấy một lần chạy đã tốn bao nhiêu.
Xem Tham chiếu Firewall rules để biết toàn bộ ngôn ngữ so khớp và nơi cap_cost đứng giữa các verdict khác.

3. Ngân sách cứng theo từng key với credit_limit_usd

cap_cost giới hạn một lần chạy đơn lẻ. Để giới hạn một key — mọi lần chạy mà nó từng phát ra — đặt credit_limit_usd trên API key. Nó là một mức trần USD cứng trên chi tiêu trọn đời của key đó: gateway chuyển nó thành quota còn lại của key, và một khi key đã tiêu hết hạn mức của nó, các cuộc gọi relay tiếp theo bị từ chối vì thiếu credit. 0 nghĩa là không giới hạn. Ghép nó với các phạm vi khác của key để một key bị rò rỉ bị giới hạn trên mọi trục cùng một lúc:

credit_limit_usd

Mức trần chi tiêu USD cứng cho key (0 = không giới hạn).

expired_time

Dấu thời gian tự hết hạn (-1 = không bao giờ). Một key sống ngắn giới hạn cửa sổ bán kính sát thương.

allow_ips

Ghim key vào các IP nguồn đã biết — một key bị rò rỉ vô dụng khi rời mạng.

model_limits

Giới hạn key vào các mô hình cụ thể, nên nó không thể vươn tới những cái đắt nhất ngay từ đầu.
Cho mỗi agent một key có phạm vi hẹp riêng với một credit_limit_usd mà nó không bao giờ nên vượt qua một cách hợp lệ. Giới hạn là ngân sách, không phải một phỏng đoán về hành vi kẻ tấn công — ngay cả một key bị xâm phạm hoàn toàn cũng dừng tại mức trần.
Cấu hình tất cả những thứ này từ trình sửa key của console (hoặc API token) dưới session của bạn — đây là các cài đặt key, không phải cuộc gọi relay. Chỉ các request suy luận /v1/* mới dùng chính key sk-orca-.... Sửa giới hạn có hiệu lực ở request kế tiếp của key; không triển khai lại.

4. Bắt cú spike bạn không lường trước: bất thường chi phí

Một mức trần tĩnh chặn chi tiêu mà bạn đã lường trước. Phát hiện bất thường của Firewall bắt chi tiêu bạn không lường. Nó học hình dạng dùng tool bình thường của mỗi workspace đối với một baseline giờ-trong-tuần (trung bình trượt 14 ngày) và lộ diện các sai lệch trên một feed mà Member có thể đọc:
Bất thườngNó gắn cờ gì
burn_spikeChi phí cho một tool vượt xa chi phí baseline đã học của nó — tín hiệu denial-of-wallet.
rate_spikeKhối lượng cuộc gọi vượt xa baseline — fan-out và lũ lụt.
retry_loopCùng một tool với cùng các argument lặp lại trong một cửa sổ hẹp — vòng lặp mất kiểm soát kinh điển.
Nên “tool này đốt 40× chi phí thường lệ của nó trong giờ này” nổi bật ngay cả khi mỗi cuộc gọi riêng lẻ đều được chính sách cho phép. Bạn có thể snooze một bất thường lên đến 7 ngày trong khi bạn điều tra.
Phát hiện bất thường là cảnh báo sớm của bạn; cap_costcredit_limit_usd là các điểm dừng cứng. Theo dõi feed để khám phá chi tiêu thật của bạn nằm ở đâu, rồi viết một mức trần quanh nó.

5. Ghép lại với nhau

Xếp lớp ba cái để một thứ mất kiểm soát không bao giờ đến được hóa đơn:
Kiểm soátPhạm viKhi nào nó kích hoạt
Quy tắc cap_costMột lần chạy agentChi tiêu tích lũy của lần chạy vượt mức trần cents
credit_limit_usdMột key, trọn đờiTổng chi tiêu của key chạm mức trần USD của nó
burn_spike / retry_loopWorkspace, đã họcChi tiêu hoặc mẫu lặp lại lệch khỏi baseline
Một baseline thực dụng: một cap_cost theo từng lần chạy trên *, một credit_limit_usd trên mọi key agent, và thói quen kiểm tra feed bất thường. Triển khai một chính sách cap_cost mới trong shadow mode trước — nó ghi log [shadow] would deny mà không block — nên bạn có thể định cỡ mức trần đối với traffic thật trước khi nó cắn.
cap_cost và feed bất thường giới hạn các cuộc gọi tool và lần chạy vượt qua gateway. Một tool mà một agent thực thi hoàn toàn bên trong tiến trình của chính nó không bao giờ đến được engine. Định tuyến các cuộc gọi tool qua trung gian mô hình và MCP qua gateway — và cho mọi key một credit_limit_usd — nên mức trần được giữ vững bất kể agent lặp như thế nào.

6. Mối đe dọa liên quan

Denial of wallet hiếm khi đến một mình — vòng lặp đốt ngân sách của bạn thường bị một thứ gì đó ở thượng nguồn lái:
  • Prompt injection — các hướng dẫn được tiêm là một tác nhân kích hoạt phổ biến cho fan-out và spam tool.
  • Quyền tự chủ quá mức — một agent với quá nhiều khoảng tự do có nhiều cách hơn để tiêu tiền.
  • Cuộc gọi tool nguy hiểm — cùng mặt phẳng quy tắc firewall giới hạn những gì một tool có thể làm, không chỉ nó tốn bao nhiêu.
  • Mô hình đe dọa — nơi chi phí mất kiểm soát khớp vào toàn bộ bề mặt tấn công agentic.

Tổng quan Firewall

Verdict, phát hiện bất thường, cấp độ tự chủ, và khả năng quan sát.

Scoped key & chính sách

Cách giới hạn key, guardrail, và chính sách firewall kết hợp theo từng key.