FireAIs sikkerhetsblogg

Av FireAI Security & Research Team · Publisert

Overvåk nettverkstilgangen til OpenAI Codex CLI på Mac med FireAI

Overvåk nettverkstilgangen til OpenAI Codex CLI på Mac med FireAI

Codex CLI er en kodeagent fra OpenAI som kjører i terminalen. Den leser et prosjekt, foreslår endringer og kjører kommandoer, og OpenAI dokumenterer en sikkerhetsmodell i to lag for den, som kombinerer en sandkasse med godkjenningsregler. Denne artikkelen oppsummerer modellen slik den gjelder for macOS, forklarer hva den sier og ikke sier om nettverkstrafikk, og viser hvordan FireAI følger programmet.

Hva Codex CLI er, og hvordan den installeres

Prosjektets repositorium beskriver Codex CLI som en lett kodeagent som kjører i terminalen, laget av OpenAI og lisensiert under Apache-2.0. Det oppgir tre installasjonsmåter: npm install -g @openai/codex, brew install --cask codex og direkte nedlasting gjennom et skallskript eller siden GitHub Releases. Den kjører på macOS for både Apple Silicon og Intel, og på Linux og Windows.

Terminal
# the documented install routes
npm install -g @openai/codex
brew install --cask codex

Den dokumenterte sandkasse- og godkjenningsmodellen

OpenAIs side om agentgodkjenninger og sikkerhet beskriver sandkassemoduser og godkjenningsregler som virker sammen, og påpeker at ingen av dem alene gir fullstendig beskyttelse. Sandkassemodusene er read-only, workspace-write og danger-full-access. I read-only krever handlinger utenfor en begrenset grense godkjenning. I workspace-write kan Codex lese, redigere og kjøre kommandoer i det aktive arbeidsområdet, mens nettverkstilgang og endringer utenfor det krever godkjenning. Danger-full-access fjerner begrensningene og anbefales ikke.

Godkjenningsreglene omfatter on-request, standard interaktiv modus; never, som slår av godkjenningsspørsmål, men beholder sandkassens begrensninger; og granular, som er interaktiv bare for bestemte kategorier av handlinger.

Nettverkstilgang i sandkassen

Ifølge den samme siden er nettverkstilkobling slått av som standard. For å slå den på i workspace-write-modus setter du network_access = true under [sandbox_workspace_write] i konfigurasjonsfilen, og en valgfri network_proxy-funksjon kan begrense trafikken til konfigurerte tillatelseslister for domener. På macOS håndheves dette med Seatbelt-regler gjennom sandbox-exec; på Linux med bwrap pluss seccomp.

config.toml
[sandbox_workspace_write]
network_access = true

Denne innstillingen styrer kommandoer som kjører inne i sandkassen. Det er en nyttig begrensning, og det er verdt å si hva den ikke er: Den er ingen logg over tilkoblinger, og agentens egen tilkobling til en modelltjeneste er en annen sak. Denne artikkelen oppgir ikke Codex’ egne domener, fordi sidene som er gjennomgått her, ikke gir noen liste dokumentert av leverandøren.

Hvorfor innsyn i nettverket fortsatt hjelper

Slår du på nettverkstilgang for å la tester laste ned avhengigheter, eller bruker du danger-full-access, begrenser sandkassen ikke lenger hvor kommandoer kobler til. Da er en oversikt over destinasjonene programmet faktisk nådde, den gjenværende kontrollen. Den dekker også tilfellet der du har glemt at du endret innstillingen.

Slik følger du Codex med FireAI

FireAI er en brannmur for macOS fra HisnLabs, og siden versjon 1.0.2 har den en funksjon som heter Agentprofil. Den gjenkjenner 19 KI-agenter, lærer hvor hver av dem vanligvis kobler til, og flagger uvanlig atferd som du kan gå gjennom. Codex er en kommandolinjeagent, så FireAI gjenkjenner den ut fra programnavnet.

Codex gjenkjennes ut fra programnavnet, codex, noe som betyr at FireAI merker treffet uten å verifisere det mot en utviklersignatur. Bare Claude Code, Claude og Cursor kontrolleres på den måten.

FireAI gjenkjenner også agentens underprosesser, som et skall, git eller curl agenten kjører, ved å følge prosessens foreldre oppover til den kommer til agenten. Disse tilkoblingene regnes derfor som agentens egne.

Hva FireAI flagger

  1. De første 3 dagene lærer FireAI hvilke destinasjoner agenten vanligvis kontakter, gruppert etter domene. Ingenting flagges i denne læringsperioden.
  2. Etter det flagges en helt ny destinasjon utenfor den lærte grunnlinjen for gjennomgang.
  3. En opplastingstopp flagges også: en time der agenten sendte minst 4 ganger så mye som i sin travleste time så langt, og aldri mindre enn 25 MB.

Agentprofil bruker bare metadata, det vil si vertsnavn og antall byte. FireAI leser aldri innholdet i en tilkobling, og kan ikke se inn i en kryptert tilkobling.

Sett det opp for Codex

  1. Installer FireAI og fullfør oppsettet, og fortsett å bruke Codex som vanlig. Læringsperioden på 3 dager starter ut fra det FireAI ser.
  2. Åpne Forslag og se på kortet KI-agenter. Det viser agentene FireAI har gjenkjent, og hva det har lært om hver av dem.
  3. Når Codex når en destinasjon den aldri har kontaktet, vises flagget i kortet KI-agenter og i Rask gjennomgang. Sveip til venstre for å blokkere, eller til høyre for «It’s fine».
  4. Blokker oppretter en regel for prosessen som koblet til. «It’s fine» legger destinasjonen til i agentens grunnlinje, slik at den ikke flagges igjen.
  5. Vil du at agenten skal holde seg til stedene den allerede bruker, velger du Agentprofil i menyen for sikkerhetsmodus, ved siden av Hjemme, Kafé, Paranoid og Under angrep. Når agenten er ferdig med å lære, blokkeres en tilkobling til en destinasjon utenfor grunnlinjen i stedet for å bli flagget.
  6. En blokkert destinasjon vises i kortet KI-agenter med Tillat og Behold blokkert. Tillat legger den til i grunnlinjen, og agenten kan nå den med en gang. Behold blokkert oppretter en blokkeringsregel, så destinasjonen forblir blokkert i alle moduser.

Begrensninger

  • FireAI hindrer ikke promptinjeksjon. En prompt skjult i en nettside eller en fil kan fortsatt styre en agent. Det FireAI kan gjøre, er å flagge, og la deg blokkere, veien data ville tatt ut av Mac-en.
  • FireAI kan ikke se prompter, innholdet i MCP-verktøy eller hvilke filer Codex leser, som ~/.ssh. TLS skjuler innholdet, og FireAI befinner seg ikke inne i agenten.
  • Underprosesser som avsluttes svært raskt, kan bli oversett, og underprosesser gjenkjennes ut fra sti, ikke signatur.
  • I læringsperioden på 3 dager flagges ingenting.
  • I modusen Agentprofil matches en tilkobling til en ren IP-adresse uten vertsnavn på adressen. Svarer en tjeneste agenten vanligvis bruker, fra en ny adresse, blokkeres den til du tillater den.
  • FireAIs forklaring av et flagg i klartekst er skrevet ut fra fakta det har målt. Den sier aldri at en destinasjon er trygg eller farlig. Beslutningen er din.

Beslektede veiledninger

Den samme tilnærmingen gjelder for de andre agentene FireAI gjenkjenner: Claude Code, Claude-skrivebordsappen, Cursor, ChatGPT-appen for Mac, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Goose, Crush, Windsurf, Kiro, Trae, Muse fra Meta, alle andre KI-agenter som kjøres av Python eller Node. Den fullstendige funksjonsbeskrivelsen står i dokumentasjonen for Agentprofil.

Hvor FireAI og HisnLabs kommer inn

Codex holder nettverket i sin egen sandkasse avslått som standard. FireAI følger med på resten av bildet.

FireAI er HisnLabs’ eget produkt: en KI-brannmur som kjører direkte på Macen. Den viser hver tilkobling appene dine gjør, i klart språk, og lar deg bestemme hva som forlater Macen din — KI-en kjører lokalt, så trafikken din sendes aldri til oss eller noen andre. HisnLabs’ sikkerhetsforskningsteam er de som holder disse vurderingene pålitelige: de katalogiserer hvilke domener som er vanlig telemetri og hvilke som er en ekte tjeneste, sporer landet og nettverket bak en tilkobling, og trener den lokale modellen (FireAI Pilot-funksjonen) på ekte trafikkmønstre — uten at noe av det forlater Macen din.

Du kan lese om de tekniske valgene bak, eller prøve FireAI i 17 dager, på FireAI, fra HisnLabs.

Kilder