Blog o bezpieczeństwie FireAI

Autor FireAI Security & Research Team · Opublikowano

Bezpieczeństwo agenta Goose na Macu: monitorowanie dostępu do sieci (FireAI)

Bezpieczeństwo agenta Goose na Macu: monitorowanie dostępu do sieci (FireAI)

Goose to otwartoźródłowy agent AI, który nie ogranicza się do kodu: jego repozytorium opisuje go jako zbudowanego do kodu, przepływów pracy i wszystkiego pomiędzy. Działa jako aplikacja na komputer i jako narzędzie wiersza poleceń, a z zewnętrznymi narzędziami łączy się przez rozszerzenia. Te fakty wyjaśniają zapytania takie jak „goose ai agent security mac” i „goose agent dostęp do sieci”. Ten artykuł przedstawia to, co dokumentuje projekt, zaznacza, gdzie strony, które udało się przeczytać, milczały, a następnie wyjaśnia, jak FireAI, zapora sieciowa dla macOS działająca na urządzeniu, tworzona przez HisnLabs, obserwuje połączenia agenta zainstalowanego jako aplikacja.

Czym jest Goose

goose jest napisany w Rust i udostępniony na licencji Apache 2.0. Repozytorium, pierwotnie opublikowane przez Block, podaje, że projekt jest obecnie utrzymywany przez Agentic AI Foundation, działającą w ramach Linux Foundation. Jest oferowany jako aplikacja na komputer, CLI i API, a z rozszerzeniami łączy się przez Model Context Protocol (MCP), otwarty standard integracji narzędzi. README wymienia zgodność z kilkunastoma dostawcami modeli, w tym Anthropic, OpenAI, Google, Ollama, OpenRouter, Azure i Bedrock [1]. Każde rozszerzenie jest narzędziem, które agent może wywołać, a samo rozszerzenie może łączyć się z siecią.

Jak Goose działa w macOS

Przewodnik instalacji podaje dwie drogi w macOS. Aplikacja na komputer to plik do pobrania dla Apple Silicon lub Intela albo brew install --cask block-goose. CLI instaluje się skryptem pobierającym lub poleceniem brew install block-goose-cli, a aktualizacje mogą pochodzić z Homebrew lub z goose update. CLI i aplikacja na komputer współdzielą konfigurację, w tym ustawienia dostawcy, wybór modelu i rozszerzenia [2]. Wspólny plik konfiguracyjny w macOS to ~/.config/goose/config.yaml [3].

Do czego ma dostęp i jak jest kontrolowany

To, czego Goose może dotknąć, wyznaczają włączone przez Ciebie rozszerzenia, ponieważ każde rozszerzenie MCP udostępnia własne narzędzia, oraz uprawnienia Twojego konta macOS. Dokumentacja projektu zawiera sekcję o trybach uprawnień. W czasie przygotowywania tego artykułu nie udało się przeczytać tej strony w całości, dlatego artykuł nie opisuje poszczególnych trybów; przeczytaj przewodnik w dokumentacji goose, zanim zaczniesz na nich polegać.

Z czym się łączy

Przewodnik konfiguracji dokumentuje ustawienie telemetrii, GOOSE_TELEMETRY_ENABLED, opisane jako włączające anonimowe zbieranie danych o użyciu, z wartością domyślną false; można je ustawić w config.yaml lub jako zmienną środowiskową [3]. Poza wybranym dostawcą modelu i rozszerzeniami przeczytane strony nie publikują listy domen.

Obserwowanie agenta Goose z FireAI

FireAI to zapora sieciowa dla macOS działająca na Macu. Jej funkcja Agent profile rozpoznaje 19 agentów AI, uczy się, z czym każdy z nich zwykle się łączy, i oznacza to, co nowe. Strona Agent profile w FireAI wymienia Goose wśród aplikacji rozpoznawanych po aplikacji, z której działają, razem z ChatGPT, Windsurf, Kiro, Trae i OpenClaw. Strona nie podaje, jak dopasowywany jest proces Goose uruchomiony z terminala, dlatego ten artykuł nie formułuje twierdzeń o CLI poza tym, co FireAI pokazuje na swojej liście aktywności.

  • Przez pierwsze 3 dni FireAI uczy się miejsc docelowych, z którymi agent zwykle się kontaktuje, pogrupowanych według domeny, więc api.anthropic.com staje się anthropic.com. W tym okresie nic nie jest oznaczane.
  • Po tym czasie pierwsze w historii miejsce docelowe spoza linii bazowej jest oznaczane do przeglądu w Suggestions, na karcie agentów AI i w Quick Review. Przesuń w lewo, aby zablokować, lub w prawo, aby wybrać „It’s fine”.
  • 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, czyli nazw hostów i liczby bajtów. Nigdy nie czyta zawartości połączenia.

Konfiguracja FireAI dla agenta Goose

  1. Zainstaluj FireAI i korzystaj z agenta jak zwykle. 3-dniowy okres nauki rozpoczyna się sam i niczego nie oznacza.
  2. Otwórz Suggestions i znajdź kartę agentów AI. Po okresie nauki oznaczenie dla agenta pojawia się tam oraz w Quick Review.
  3. Przejrzyj każde oznaczenie. Wybierz Block, aby utworzyć regułę dla procesu, który się połączył, lub „It’s fine”, aby dodać miejsce docelowe do linii bazowej agenta.
  4. Aby 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. Twoje reguły działają jak w trybie Home, a po zakończeniu nauki przez agenta połączenie z miejscem docelowym spoza linii bazowej jest blokowane zamiast oznaczane.
  5. Zablokowane miejsce docelowe pojawia się na karcie agentów AI z opcjami Allow i Keep blocked. Allow dodaje je do linii bazowej i agent od razu może się z nim połączyć. Keep blocked tworzy regułę blokującą obowiązującą w każdym trybie.

Napisana przez Ciebie reguła zezwalająca dla strony, domeny lub adresu nadal ma pierwszeństwo, a DNS i sieć lokalna nigdy nie są blokowane. Dla agenta, którego FireAI nie wymienia, napisz ręcznie regułę dla jego programu w regułach dla aplikacji. Tryb Agent profile wymaga FireAI 1.0.3 lub nowszego, a rozpoznawanie agenta Goose wersji 1.0.4.

Ograniczenia

  • FireAI widzi, z jakimi miejscami docelowymi łączy się Goose lub jego procesy potomne, ale nie to, które rozszerzenie MCP zażądało połączenia.
  • Agent Goose jest rozpoznawany po aplikacji, z której działa, co oznacza, że jest etykietowany, a nie weryfikowany: tylko Claude Code, Claude i Cursor są sprawdzani pod kątem podpisu dewelopera.
  • FireAI nie zatrzymuje wstrzykiwania 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, zawartości narzędzi MCP, dostępu do plików ani umiejętności (skills). TLS ukrywa zawartość, a FireAI nie działa wewnątrz agenta.
  • Procesy potomne, które kończą się bardzo szybko, mogą zostać pominięte i są dopasowywane po ścieżce, a nie po podpisie.
  • W 3-dniowym okresie nauki nic nie jest oznaczane, a skoki wysyłanych danych są oznaczane, nie blokowane.
  • W trybie Agent profile połączenie nawiązane z samym adresem IP, bez nazwy hosta, jest dopasowywane po adresie, więc nowy adres usługi, z której agent zwykle korzysta, pozostaje zablokowany, dopóki go nie zezwolisz.

Inni agenci

To samo podejście dotyczy każdego agenta rozpoznawanego przez FireAI. Zobacz pozostałe przewodniki: Claude Code, aplikacja Claude na komputer, Cursor, aplikacja ChatGPT na Maca, OpenAI Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Crush, Windsurf, Kiro, Trae, Muse od Meta, każdy inny agent AI działający na pythonie lub node. Pełny opis funkcji znajduje się na stronie dokumentacji Agent profile, opublikowanej przez HisnLabs.

Jaką rolę odgrywają FireAI i HisnLabs

FireAI uczy się, z czym Goose zwykle łączy się na Twoim Macu, i oznacza pierwsze w historii miejsce docelowe lub skok wysyłanych danych, nie czytając Twoich danych.

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