Blog o bezpieczeństwie FireAI

Autor FireAI Security & Research Team · Opublikowano

Bezpieczeństwo agenta programistycznego Amp na Macu: monitorowanie połączeń

Bezpieczeństwo agenta programistycznego Amp na Macu: monitorowanie połączeń

Amp to agent programistyczny od Ampcode, z którego można korzystać w przeglądarce, z narzędzia wiersza poleceń lub w natywnych aplikacjach. W odróżnieniu od narzędzia czysto lokalnego przechowuje rozmowy jako wątki na ampcode.com, więc ruch sieciowy jest częścią jego działania. Zapytania takie jak „amp coding agent security” i „czy Amp jest bezpieczny” wymagają zatem rzeczowego opisu tego, co jest udokumentowane. Ten artykuł go przedstawia, a następnie pokazuje, jak FireAI, sieciowa zapora dla macOS rozwijana przez HisnLabs, obserwuje połączenia Amp na Twoim Macu.

Czym jest Amp i jak działa na Macu

Podręcznik nazywa Amp agentem programistycznym i środowiskiem programistycznym, dostępnym w przeglądarce, jako CLI oraz jako aplikacje na macOS i iOS, z wątkami, które są kontynuowane między nimi. Obsługuje MCP do dostosowywania. Dokumentacja CLI podaje skrypt instalacyjny (curl -fsSL https://ampcode.com/install.sh | bash), obsługuje macOS, Linuksa i Windows przez WSL, a także podaje, że CLI może uruchamiać agenta na Twoim komputerze, w środowisku chmurowym, które dokumentacja nazywa orb, lub na podłączonym runnerze. Kontami zarządza się poleceniami amp login, amp account list i amp logout, a zmienna środowiskowa AMP_API_KEY ma pierwszeństwo przed zapisanymi kontami.

Do czego ma dostęp i dokąd trafiają dane

Strona o bezpieczeństwie podaje, że Amp zbiera fragmenty kodu i wątki rozmów, w tym wiadomości użytkownika, odpowiedzi modelu, kontekst kodu i wyniki narzędzi, oraz że nie widzi, nie przechowuje, nie klonuje ani nie indeksuje całej bazy kodu. Deklaruje, że sekrety są automatycznie usuwane, zanim trafią do wątków lub dotrą do usług zewnętrznych. Fragmenty kodu są wysyłane do kilku dostawców modeli, główną infrastrukturę hostuje Google Cloud, a firma podaje, że cała infrastruktura działa na serwerach w USA. Usunięte wątki są kasowane w ciągu 30 dni. Są to deklaracje producenta, których nie mogliśmy niezależnie sprawdzić.

Ustawienia, które kształtują jego działanie

Dokumentacja ustawień wymienia ustawienia użytkownika w ~/.config/amp/settings.json i ustawienia obszaru roboczego w .amp/settings.json. Istotne klucze to amp.tools.disable do blokowania określonych narzędzi, amp.mcpServers do konfiguracji serwerów MCP, amp.defaultVisibility dla prywatności wątków według repozytorium oraz amp.remoteThreadCreation.enabled, który określa, czy ampcode.com może zdalnie tworzyć wątki. Administratorzy obszaru roboczego mogą stosować zarządzane ustawienia, które nadpisują lokalne. Przejrzane strony nie opisywały szczegółowo systemu pytań o zgodę, dlatego sprawdź w aktualnym podręczniku, o co Amp pyta przed uruchomieniem polecenia.

Obserwowanie Amp z FireAI

FireAI to zapora sieciowa dla macOS działająca na urządzeniu, rozwijana przez HisnLabs. Jej funkcja Agent profile wymienia Amp wśród 19 rozpoznawanych agentów AI i identyfikuje go po skrypcie wykonywanym przez środowisko uruchomieniowe, czyli metodą, której Agent profile używa dla agentów uruchamianych przez node, bun, deno lub python. Procesy potomne agenta, takie jak uruchomiona przez niego powłoka, git czy curl, są mu przypisywane przez przejście w górę po procesach nadrzędnych. Przez pierwsze 3 dni FireAI uczy się następnie, z jakimi miejscami docelowymi Amp zwykle się kontaktuje, pogrupowanymi według domeny, i w tym okresie niczego nie oznacza. Po tym czasie pierwsze w historii miejsce docelowe jest oznaczane w Suggestions, na karcie agentów AI i w Quick Review. Oznaczany jest także skok wysyłanych danych: godzina, w której agent wysłał co najmniej 4 razy więcej niż w swojej dotychczas najbardziej obciążonej godzinie, i nigdy mniej niż 25 MB.

FireAI korzysta wyłącznie z metadanych, nazw hostów i liczby bajtów, i nigdy nie czyta zawartości połączenia. Domyślnie oznacza i zostawia decyzję Tobie. W trybie bezpieczeństwa Agent profile idzie dalej: po zakończeniu nauki połączenie z miejscem docelowym spoza linii bazowej jest blokowane, dopóki nie naciśniesz Allow, a Keep blocked zamienia tę blokadę w regułę obowiązującą w każdym trybie.

Konfiguracja krok po kroku

  1. Zainstaluj FireAI i dokończ konfigurację przy pierwszym uruchomieniu, zgodnie z Install and finish setup.
  2. Korzystaj z Amp jak zwykle przez 3 dni. FireAI uczy się jego miejsc docelowych w tle i jeszcze niczego nie oznacza.
  3. Otwórz Suggestions i znajdź kartę agentów AI. Gdy pojawi się oznaczenie, przeczytaj zdanie napisane prostymi słowami, a następnie w Quick Review przesuń w lewo, aby zablokować, lub w prawo, aby wybrać „It’s fine”.
  4. Jeśli chcesz ograniczyć agenta do miejsc, z których już korzysta, wybierz Agent profile w menu trybu bezpieczeństwa, obok Home, Coffee shop, Paranoid i Under attack.
  5. Gdy coś zostanie zablokowane, otwórz kartę agentów AI i wybierz Allow, aby dodać to do linii bazowej, lub Keep blocked, aby utworzyć regułę blokującą.

Ograniczenia

  • FireAI nie zapobiega wstrzykiwaniu promptów (prompt injection). Ogranicza szkody, oznaczając drogę, którą dane opuściłyby Maca, i pozwalając ją zablokować.
  • FireAI nie widzi promptów Amp, zawartości narzędzi MCP, umiejętności (skills) ani tego, które pliki czyta, ponieważ TLS ukrywa zawartość, a FireAI nie działa wewnątrz agenta.
  • Amp jest dopasowywany po nazwie skryptu, więc FireAI go etykietuje, a nie weryfikuje: tylko Claude Code, Claude i Cursor są sprawdzani pod kątem podpisu dewelopera.
  • Ponieważ Amp z założenia wysyła kontekst kodu do swojej usługi i dostawców modeli, duża wysyłka do jego zwykłej domeny jest spodziewana; oznaczenie skoku pojawia się tylko dla godziny co najmniej 4 razy bardziej obciążonej niż dotychczasowe maksimum i powyżej 25 MB.
  • Praca, którą Amp wykonuje w chmurowym orb lub na zdalnym runnerze, odbywa się poza Twoim Macem, gdzie FireAI jej nie widzi.
  • W 3-dniowym okresie nauki nic nie jest oznaczane, a skoki wysyłanych danych są oznaczane, nie blokowane.
  • Nowy serwer w domenie, z której agent już korzysta, jest traktowany jako znany, ponieważ miejsca docelowe są grupowane według domeny.

Funkcja jest opisana w dokumentacji Agent profile.

Inni agenci rozpoznawani przez FireAI mają własne przewodniki: Claude Code, aplikacja Claude na komputer, Cursor, aplikacja ChatGPT na Maca, OpenAI Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Qwen Code, opencode, Aider, Goose, Crush, Windsurf, Kiro, Trae, Muse od Meta, dowolny agent AI uruchamiany przez Pythona lub Node.

Jaką rolę odgrywają FireAI i HisnLabs

Amp z założenia wysyła kontekst kodu do dostawców modeli. FireAI pokazuje, a także może zablokować, każde nowe miejsce docelowe, z którym się łączy.

FireAI to własny produkt HisnLabs: zapora sieciowa z AI działająca bezpośrednio na Macu. Pokazuje prostym językiem każde połączenie nawiązywane przez twoje aplikacje i pozwala ci decydować, co opuszcza twojego Maca — jej AI działa lokalnie, więc twój ruch nigdy nie jest wysyłany do nas ani do nikogo innego. Zespół badań nad bezpieczeństwem HisnLabs dba o to, by te decyzje pozostały trafne: kataloguje, które domeny to zwykła telemetria, a które prawdziwa usługa, śledzi kraj i sieć stojące za połączeniem oraz trenuje lokalny model (funkcję FireAI Pilot) na rzeczywistych wzorcach ruchu — a nic z tego nie opuszcza twojego Maca.

Możesz przeczytać o decyzjach technicznych, które za tym stoją, albo wypróbować FireAI przez 17 dni na FireAI od HisnLabs.

Źródła