FireAIs säkerhetsblogg

Av FireAI Security & Research Team · Publicerad

Säkerhet för agenten Crush på Mac: övervaka dess nätverk med FireAI

Säkerhet för agenten Crush på Mac: övervaka dess nätverk med FireAI

Crush är en kodagent för terminalen från Charm, företaget bakom en välkänd familj av kommandoradsverktyg. Den frågar innan den kör ett verktyg, kan instrueras att låta bli, och dokumenterar mer än ett nätverksbeteende i sin README. Det gör den till ett lämpligt ämne för läsare som söker på ”crush ai agent security mac”, ”crush network access” eller ”is Crush safe”. Den här artikeln samlar vad README anger och förklarar sedan hur FireAI, en brandvägg för macOS som körs på enheten och utvecklas av HisnLabs, övervakar anslutningarna hos ett enda kompilerat program.

Vad Crush är

Crush utvecklas av Charm (charmbracelet på GitHub) och är skrivet i Go. README beskriver det som agentbaserad kodprogramvara för terminalen som kopplar verktyg, kod och arbetsflöden till språkmodeller. Det stöder många leverantörer, bland annat OpenAI, Anthropic, Gemini, Ollama och Bedrock, och dess modellkatalog hålls aktuell från Catwalk, en leverantörsdatabas med öppen källkod. Det kan använda MCP-servrar över stdio, HTTP och SSE, med OAuth för HTTP, och språkservrar (LSP) för kodkontext [1].

Hur Crush körs på macOS

README listar brew install charmbracelet/tap/crush, npm install -g @charmland/crush, go install github.com/charmbracelet/crush@latest och förbyggda binärfiler för macOS. Eftersom det är ett Go-program är processen på Macen en enda inbyggd körbar fil med namnet crush, inte en tolk som kör ett skript.

Vad det har åtkomst till och hur det styrs

Som standard ber Crush om tillstånd innan det utför verktygsanrop. Flaggan --yolo kringgår alla frågor, och README varnar: ”Be very, very careful with this feature.” Behörigheter kan också konfigureras: permissions allow låter namngivna verktyg köras utan fråga, och permissions deny döljer verktyg helt för agenten. Konfigurationen omfattar leverantörer, LSP:er, MCP:er, behörigheter, teman och färdigheter [2].

Dessa kontroller avgör vilka verktygsanrop som genomförs. README beskriver ingen tillåtelselista för nätverket.

Vart det ansluter

README dokumenterar två beteenden som öppnar anslutningar utan att du tillfrågas. För det första samlar Crush in pseudonym metadata om användning och anger att prompter och svar aldrig samlas in; det stängs av med CRUSH_DISABLE_METRICS=1 eller genom att DO_NOT_TRACK respekteras. För det andra hämtar det leverantörskatalogen från Catwalk automatiskt, vilket kan stängas av med CRUSH_DISABLE_PROVIDER_AUTO_UPDATE=1 och uppdateras för hand med crush update-providers [2]. Andra destinationer beror på den leverantör och de MCP-servrar du konfigurerar.

Övervaka Crush med FireAI

FireAI är en brandvägg för macOS som körs på Macen. Funktionen Agent profile känner igen 19 AI-agenter, lär sig vart var och en normalt ansluter och flaggar det som är nytt. FireAIs sida om Agent profile listar Crush bland de kommandoradsagenter som känns igen genom namnet på sitt program. Anslutningar från ett program med namnet crush, och från dess underordnade processer som ett skal, git eller curl, tillskrivs Crush.

  • Under de första 3 dagarna lär sig FireAI de destinationer som agenten normalt kontaktar, grupperade efter domän, så att api.anthropic.com blir anthropic.com. Ingenting flaggas under den perioden.
  • Därefter flaggas den allra första destinationen utanför baslinjen för granskning i Förslag, i kortet AI-agenter och i Snabbgenomgång. Svep åt vänster för att blockera, eller åt höger för ”Det är okej”.
  • En uppladdningstopp flaggas också: en timme då agenten laddade upp minst 4 gånger så mycket som under sin hittills mest intensiva timme, och aldrig mindre än 25 MB.
  • FireAI använder endast metadata, det vill säga värdnamn och antal byte. Det läser aldrig innehållet i en anslutning.

Konfigurera FireAI för Crush

  1. Installera FireAI och använd agenten som vanligt. Inlärningsperioden på 3 dagar startar av sig själv och flaggar ingenting.
  2. Öppna Förslag och leta upp kortet AI-agenter. Efter inlärningsperioden visas en flagga för agenten där och i Snabbgenomgång.
  3. Granska varje flagga. Välj Blockera för att skapa en regel för processen som anslöt, eller ”Det är okej” för att lägga till destinationen i agentens baslinje.
  4. För att hålla agenten till de platser den redan använder väljer du Agent profile i menyn för säkerhetsläge, bredvid Hemma, Kafé, Paranoid och Under attack. Dina regler gäller som i Hemma, och en anslutning till en destination utanför baslinjen blockeras i stället för att flaggas när agenten har lärt sig klart.
  5. En blockerad destination visas i kortet AI-agenter med Tillåt och Fortsätt blockera. Tillåt lägger till den i baslinjen och agenten når den direkt. Fortsätt blockera skapar en blockeringsregel som gäller i alla lägen.

En tillåtelseregel du har skrivit för en webbplats, domän eller adress har fortfarande företräde, och DNS och ditt lokala nätverk blockeras aldrig. För en agent som FireAI inte listar skriver du en regel för dess program för hand i regler per app. Läget Agent profile kräver FireAI 1.0.3 eller senare, och igenkänning av Crush kräver 1.0.4.

Begränsningar

  • Miljövariabler som CRUSH_DISABLE_METRICS ändrar vad Crush självt skickar. FireAI läser inte dessa inställningar; det rapporterar bara vilka värdar programmet kontaktar och hur mycket det laddar upp.
  • Crush känns igen genom namnet på sitt program, vilket innebär att det är märkt, inte verifierat: endast Claude Code, Claude och Cursor kontrolleras mot utvecklarens signatur.
  • FireAI stoppar inte promptinjektion. Det begränsar skadan genom att flagga, och låta dig blockera, den väg som data skulle ta ut från din Mac.
  • FireAI kan inte se prompter, innehållet i MCP-verktyg, filåtkomst eller färdigheter. TLS döljer innehållet, och FireAI finns inte inuti agenten.
  • Underordnade processer som avslutas mycket snabbt kan missas, och de matchas efter sökväg, inte efter signatur.
  • Under inlärningsperioden på 3 dagar flaggas ingenting, och uppladdningstoppar flaggas men blockeras inte.
  • I läget Agent profile matchas en anslutning till en ren IP-adress utan värdnamn efter sin adress, så en ny adress för en tjänst som agenten normalt använder blockeras tills du tillåter den.

Andra agenter

Samma tillvägagångssätt gäller för alla agenter som FireAI känner igen. Se de andra guiderna: Claude Code, skrivbordsappen Claude, Cursor, ChatGPT-appen för Mac, OpenAI Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Goose, Windsurf, Kiro, Trae, Muse från Meta, alla andra AI-agenter som körs på python eller node. Den fullständiga funktionsbeskrivningen finns på dokumentationssidan för Agent profile, publicerad av HisnLabs.

Var FireAI och HisnLabs kommer in

FireAI lär sig vart Crush normalt ansluter på din Mac och flaggar en allra första destination eller en uppladdningstopp, utan att läsa dina data.

FireAI är HisnLabs eget verktyg: en AI-brandvägg som körs direkt på din Mac. Den visar varje anslutning dina appar gör, på klarspråk, och låter dig avgöra vad som lämnar din Mac — AI:n körs lokalt, så din trafik skickas aldrig till oss eller någon annan. HisnLabs säkerhetsforskningsteam är de som håller de bedömningarna tillförlitliga: de katalogiserar vilka domäner som är vanlig telemetri och vilka som är en riktig tjänst, spårar land och nätverk bakom en anslutning och tränar den lokala modellen (FireAI Pilot-funktionen) på verkliga trafikmönster — utan att något av det lämnar din Mac.

Du kan läsa om de tekniska besluten bakom, eller prova FireAI i 17 dagar, på FireAI, från HisnLabs.

Källor