https://api.orcarouter.ai/v1/...;
zmieniają się tylko klucze i polityki w bramie. Dla leżącej u podstaw
anatomii ataku przeczytaj
Prompt injection oraz
Niebezpieczne wywołania narzędzi;
ta strona to reakcja.
Role, których wymaga każdy krok, są wskazane w treści. Odczyt strumienia
Matches guardrailu jest otwarty dla każdego Membera; widoki Events,
Runs i trace firewalla wymagają Developer+; odwołanie klucza,
zastosowanie postawy autonomii i edycja polityki wymagają Developer+;
oznaczenie dopasowania guardrailu jako fałszywie dodatniego wymaga Admin.
1. Pętla reagowania na incydent bezpieczeństwa AI
Trzy fazy, uruchamiane w kolejności. Nie przeskakuj wprost do utwardzania — zawrzyj najpierw, aby atakujący stracił dostęp, gdy badasz.Zawrzyj
Odwołaj skompromitowany klucz, aby atakujący nie mógł zrobić kolejnego
wywołania. Wybij świeży, ściśle ograniczony zamiennik.
Zakresuj
Przeczytaj strumienie Events / Runs firewalla i Matches guardrailu,
aby zobaczyć dokładnie, co klucz zrobił i co odpaliło.
Utwardź
Zaostrz postawę autonomii i dodaj regułę, która by to wychwyciła, aby ten
sam atak nie mógł się powtórzyć.
2. Zawrzyj — odwołaj klucz
Pierwszy ruch to odcięcie dostępu. Wyciekły kluczsk-orca-... działa,
dopóki go nie odwołasz, więc zrób to przed czymkolwiek innym.
W konsoli otwórz API Keys, znajdź skompromitowany klucz (jest maskowany
na wyświetleniu — dopasuj go po nazwie, środowisku lub ostatnim użyciu) i
usuń go (rola Developer). Usunięcie jest natychmiastowe: już następne
żądanie na tym kluczu jest odrzucane w bramie.
Potem wybij zamiennik, ograniczony do minimum, którego potrzebuje obciążenie
— nigdy klucz obejmujący całe konto. W API Keys → New key (rola
Developer):
Ogranicz promień rażenia na nowym kluczu
Ogranicz promień rażenia na nowym kluczu
Ustaw
credit_limit_usd na rozsądny pułap (0 = bez limitu), aby
przyszły wyciek nie mógł osuszyć kwoty, allow_ips na IP egress twojego
backendu, jeśli wywołujący działa ze stałego serwera, oraz expired_time
dla czegokolwiek tymczasowego (-1 = nigdy nie wygasa). Użyj
model_limits (z model_limits_enabled), aby ogrodzić klucz tylko do
modeli, których potrzebuje.Dołącz swoje polityki do nowego klucza
Dołącz swoje polityki do nowego klucza
Wybierz swój utwardzony guardrail z rozwijanej listy Guardrail
(ustawia
guardrail_id) i swoją politykę firewalla z rozwijanej listy
Firewall policy (ustawia firewall_policy_id). Oba powiązania żyją na
kluczu w bramie, więc nowy klucz jest zarządzany od pierwszego wywołania.
Skopiuj plaintext raz — jest maskowany wszędzie po utworzeniu.3. Zakresuj — przeczytaj strumienie Events i Matches
Teraz ustal, co klucz faktycznie zrobił. Brama już zarejestrowała każde wywołanie narzędzia i każdą regułę, która odpaliła — w zakresie przestrzeni roboczej, bez dodatkowej instrumentacji.| Strumień | Gdzie | Rola | Na co odpowiada |
|---|---|---|---|
| Firewall → Events | per wywołanie narzędzia | Developer+ | Każda ewaluacja — werdykt, powierzchnia, narzędzie, argumenty, uruchomienie, do którego należy. |
| Firewall → Runs | zwinięte | Developer+ | „Co ta sesja agenta faktycznie zrobiła” — miks werdyktów, odrębne narzędzia i modele. |
| Guardrails → Matches | per trafienie reguły | Member | Każda reguła guardrailu, która odpaliła — typ, akcja, etap, szczegół. |
deny i audit, aby zobaczyć, co zostało zablokowane, a co
przemknęło pod postawą tylko-observe.
Zweryfikuj krzyżowo Guardrails → Matches dla tego samego okna. Jeśli
reguła Prompt-Injection Basics zflagowała żądanie — frazy jak „zignoruj
poprzednie instrukcje” lub „ujawnij swój prompt systemowy” — ląduje tutaj z
typem reguły i etapem.
Strumień Matches rejestruje dopasowany podłańcuch tylko wtedy, gdy
Log raw content jest włączony dla tego guardrailu — jest domyślnie
wyłączony (postawa konserwatywna względem prywatności). Z wyłączonym i tak
widzisz, że reguła odpaliła, i jej meta-łańcuch szczegółu, tylko nie
dosłowny tekst. Włącz go per guardrail, gdy potrzebujesz podłańcucha do
triage; ustawienie nie działa wstecz.
POST /api/guardrail/match/:id/mark-fp, Admin), aby przestało zniekształcać
twój sygnał, gdy stroisz.
4. Utwardź — zamknij lukę
Zawarcie zatrzymuje tego atakującego; utwardzanie zatrzymuje następnego. Dwa ruchy: zaostrz postawę przestrzeni roboczej natychmiast, potem dodaj konkretną regułę, która by wychwyciła to, co właśnie zobaczyłeś.Szybka droga — podnieś poziom autonomii
Jeśli incydent obnażył agenta, który działał zbyt otwarcie, przełącz całą postawę przestrzeni roboczej w jednej transakcji. W Firewall → Posture zastosuj poziom autonomiitight
(poziom autonomii) (rola
Developer). W jednym ruchu ustawia to domyślną odmowę, odmawia
destrukcyjnego shella, odmawia nazw narzędzi SSRF w kształcie fetch i
egzekwuje guardrails PII Shield oraz Secrets & API-Key Blocker. Każda
zmiana to jedna transakcja z cofnięciem jednym kliknięciem z migawki
audytu, więc możesz wrócić wprost, jeśli jest zbyt ścisła.
Precyzyjna droga — dodaj regułę, która by to wychwyciła
Konkretnie dla prompt-injection OrcaRouter dostarcza preset Prompt-Injection Basics (kategoria safety) — regułę słowa kluczowego, która flaguje częste frazy injection do przeglądu bez blokowania użytkownika. Zacznij tam, by uzyskać sygnał, potem eskaluj. Jego ściślejszy odpowiednik, Jailbreak / Role-Play Blocker, blokuje tę samą klasę regexem. W Guardrails → New guardrail (rola Developer; piaskownica Test uruchamia kandydujące reguły inline —llm_judge robi płatne wywołanie
modelu — więc to też Developer+), zastosuj preset Prompt-Injection
Basics, potem dodaj regułę llm_judge, aby wychwycić zaciemnione injection,
które lista słów kluczowych pomija:
judge_fail_open: false, aby traktować błąd lub timeout sędziego jako block,
gdy pominięte sprawdzenie jest nieakceptowalne. Udowodnij całą politykę w
zakładce Test i wobec korpusu Eval, zanim dołączysz ją do klucza.
Wdróż nową regułę bezpiecznie
Nie egzekwuj świeżej reguły na ślepo na żywym ruchu. Dla firewalla ustawshadow_mode: true na polityce — każdy egzekwujący werdykt jest degradowany
do audit i logowany jako [shadow] would …, więc obserwujesz, jak odpala
na strumieniu Events, zanim zmieni jakikolwiek ruch. Dla guardrails ustaw
akcję nowej reguły na flag najpierw, obserwuj strumień Matches, potem
awansuj do block lub mask. Zobacz
tryby egzekwowania dla pełnej
ścieżki obserwuj → cień → egzekwuj.
5. Zweryfikuj naprawę
Potwierdź, że pętla jest zamknięta, zanim nazwiesz to rozwiązanym.Odtwórz atak w piaskownicy
Wklej złośliwy prompt do zakładki Test guardrailu na etapie
input i
potwierdź, że werdykt to teraz block (lub flag). Dla incydentu z
wywołaniem narzędzia przepuść na sucho obrażające wywołanie w
Firewall → Test (Developer+) i potwierdź, że werdykt to deny. Żadna
piaskownica nie wysyła niczego do dostawcy nadrzędnego ani niczego nie
persystuje.Potwierdź, że stary klucz jest martwy
Wyślij żądanie na odwołanym kluczu i potwierdź, że jest odrzucone.
Zablokowany guardrail zwraca HTTP 400
guardrail_blocked; odmówione
wywołanie narzędzia zwraca HTTP 400 firewall_blocked — a block
kosztuje zero kwoty (bloki na etapie input odpalają przed metrowaniem;
bloki output zwracają wstępnie skonsumowaną kwotę) i jest oznaczony jako
skip-retry.Zrób migawkę osi czasu
Każda zmiana guardrailu zapisuje wiersz historii wersji, który możesz
zdiffować i przywrócić. Zmiany firewalla są przechwytywane w
śladzie audytu, a zastosowanie poziomu autonomii niesie migawkę cofnięcia
jednym kliknięciem. Razem z logiem audytu przestrzeni roboczej to twój
zapis incydentu — kto co zmienił, kiedy, i jaka była postawa przed i po.
6. Runbook w skrócie
| Faza | Akcja | Gdzie | Rola |
|---|---|---|---|
| Zawrzyj | Usuń wyciekły klucz | API Keys | Developer+ |
| Zawrzyj | Wybij zamiennik o ograniczonym zakresie | API Keys → New key | Developer+ |
| Zakresuj | Przeczytaj wywołania narzędzi + werdykty | Firewall → Events / Runs | Developer+ |
| Zakresuj | Przeczytaj reguły, które odpaliły | Guardrails → Matches | Member |
| Utwardź | Podnieś postawę | Firewall → Posture (tight) | Developer+ |
| Utwardź | Dodaj wychwytującą regułę | Guardrails / Firewall | Developer+ |
| Zweryfikuj | Odtwórz w piaskownicy | Zakładki Test | Developer+ |
7. Gdzie iść dalej
Lista kontrolna go-live
Przedprodukcyjne przejście utwardzające — ogranicz klucze i zablokuj
postawę, zanim wdrożysz.
Prompt injection
Atak, na który odpowiada ten runbook, od początku do końca.
Tryby egzekwowania
Obserwuj → cień → egzekwuj — wdróż nową regułę bez psucia ruchu.
Zatrzymaj eksfiltrację
Zablokuj cele wychodzące, jeśli incydent dotknął sieci.
