
CrewAI eller AutoGen: sikkerhetstesten ga 52,3 mot 30,8 prosent

En penetrasjonstest med 130 angrepsforsøk fant at AutoGen-oppsettet avviste 34 av 65 forsøk, eller 52,3 prosent, mens CrewAI-oppsettet avviste 20 av 65, eller 30,8 prosent. For et fleragentsystem som skal håndtere følsomme data eller verktøy med reelle virkninger, gir resultatet grunn til å undersøke AutoGen først. Det er en måling av bestemte oppsett, ikke en sikkerhetsgaranti for rammeverket.
Velg likevel orkestreringsmodell før du velger etter prosenttallet alene. CrewAI egner seg når roller, oppgaver og overleveringer kan legges i en styrt flyt. AutoGen egner seg når agentene trenger samtalebaserte teammønstre og tydelige overføringer av kontroll. I begge tilfeller avgjør verktøytillatelser, sporbarhet og godkjenning før risikable handlinger hvor mye kontroll du faktisk har.
Hva testen målte
Testmiljøet etterlignet en informasjonstjeneste ved et universitet. Spesialiserte agenter håndterte blant annet studentopplysninger, økonomiske data og nettsøk, mens databasen inneholdt syntetiske opplysninger. Angrepene forsøkte å hente ut interne instruksjoner, manipulere databaseforespørsler, misbruke kodekjøring og få agenter til å åpne interne nettadresser. Den samme samlingen angrep ble brukt med flere språkmodeller i begge rammeverk.
«Avvist» hadde en bred betydning i forsøket. Agenten kunne si uttrykkelig nei, gjenkjenne angrepet eller bli stående fast uten å komme nærmere angriperens mål. Et forsøk ble derimot regnet som vellykket når agenten utførte hele eller deler av den uønskede instruksjonen. Også et verktøykall med skadelige parametere kunne telle som vellykket selv om en ytre sperre hindret sluttvirkningen. Avvisningsraten måler derfor agentenes atferd i dette miljøet, ikke hvor ofte en produksjonsdatabase faktisk ville blitt kompromittert.
Oppsettene hadde samme typer agentroller, men ulik styring. AutoGen-varianten overførte kontroll mellom agenter gjennom et handoff-mønster; CrewAI-varianten lot en sentral koordinator delegere oppgaver til spesialister og samle svarene. Forskjellen i resultat er relevant for disse mønstrene. Den sier ikke hvordan enhver CrewAI-flow eller ethvert AutoGen-team vil oppføre seg med andre modeller, tillatelser og kontrollpunkter.
CrewAI: roller og styrte flyter
CrewAIs dokumentasjon skiller mellom crews med agenter og oppgaver og flows som styrer ruting, tilstand og videre kjøring. Den beskriver også guardrails, minne, observabilitet og utløsere for menneskelig involvering. Det passer et arbeid der ansvaret kan fordeles på forhånd: en agent henter informasjon, en annen bearbeider den, og flyten bestemmer når resultatet kan sendes videre.
En sentral koordinator gir et naturlig sted å kontrollere delegering og samle spor etter beslutninger. Samtidig blir koordinatorens tolkning av innkommende tekst viktig. Dersom innhold fra en nettside eller et verktøysvar behandles som en instruksjon, kan koordinatoren sende en uønsket oppgave videre til en agent med større tilgang. En guardrail som bare vurderer sluttteksten, vil da komme for sent til å hindre et verktøykall som allerede er utført.
For CrewAI er det derfor særlig nyttig å definere hva hver rolle får lese og gjøre, og å legge kontroll ved delegering og ved selve verktøyet. En oppgavebeskrivelse kan begrense forventet atferd, men tilgang til data må håndheves av tjenesten som leverer dataene. Det samme gjelder skrivetilgang og utsending: koordinatorens beslutning bør ikke alene gi fullmakt til en handling med konsekvenser.
AutoGen: overleveringer og grafstyring
AutoGens AgentChat-dokumentasjon beskriver forhåndsdefinerte teammønstre, minne, logging og sporing. For mer tilpasset styring ligger AgentChat oppå AutoGen Core, som bruker en hendelsesdrevet modell. Det gjør rammeverket aktuelt når samarbeid mellom agenter og skifte av ansvar er sentralt i selve løsningen.
En eksplisitt overlevering gir et punkt der applikasjonen kan registrere hvilken agent som tok over, hvilken kontekst den mottok, og hvilke verktøy den fikk bruke. Punktet er også en tillitsgrense: tekst som følger med til neste agent, kan inneholde instruksjoner hentet fra en ekstern kilde. Å kunne se overleveringen er verdifullt for feilsøking, men synlighet stopper ikke i seg selv en skadelig handling. Tillatelser og validering må følge med når kontrollen skifter.
Behov for fast rekkefølge utelukker ikke AutoGen. GraphFlow-dokumentasjonen beskriver sekvensielle, parallelle og betingede forløp, men merker funksjonen som eksperimentell. Det er en konkret begrensning for en langvarig produksjonsflyt der stabil oppførsel og stabile grensesnitt er viktige. Valget står dermed mellom de styringsformene løsningen trenger, ikke mellom et «fritt» og et «låst» rammeverk.
Innsyn og godkjenning før handling
Et sluttresultat alene er et svakt spor ved en sikkerhetshendelse. For å forstå hva som skjedde, må løsningen knytte brukerforespørselen til agentens valg, overleveringer, argumentene i hvert verktøykall og svaret fra verktøyet. Hvis minne brukes, må det også være mulig å se hvilken tidligere kontekst som påvirket beslutningen. Logging og sporing er byggeklosser; applikasjonen må velge hva som registreres, hvem som får tilgang til loggene, og hvor lenge de beholdes.
Menneskelig godkjenning bør komme før en irreversibel eller følsom handling, ikke bare før agentens endelige svar. AutoGens veiledning om menneskelig involvering beskriver både tilbakemelding mens et team kjører, og en modell der kjøringen avsluttes og senere fortsetter med brukerens svar. Den første varianten kan blokkere kjøringen mens den venter. For en godkjenning som kan ta tid, må applikasjonen derfor planlegge hvordan tilstand lagres og arbeidet gjenopptas.
Godkjenneren trenger å se den foreslåtte handlingen: mottaker, data, endring og verktøyargumenter. En oppsummering skrevet av agenten er ikke tilstrekkelig dersom den utelater en parameter eller feilbeskriver hva verktøyet vil gjøre. Den tekniske kontrollen bør sikre at handlingen som utføres etter godkjenning, er den samme som mennesket fikk se.
En minimumsmodell for kontroll
Uavhengig av rammeverk bør grensene legges der agentens tekst blir til tilgang eller handling. Dette er et minimum for en løsning som kan behandle følsomme opplysninger eller bruke verktøy som endrer noe:
- Avgrens tilgang per agent. Gi hver rolle bare nødvendige datakilder og verktøy. La verktøyet kontrollere identitet, rettigheter og tillatte parametere ved hvert kall.
- Behandle hentet innhold som data. Tekst fra nettsider, dokumenter og verktøysvar skal ikke få bestemme nye rettigheter. Valider struktur og tillatte verdier før innholdet brukes til ruting eller verktøykall.
- Legg godkjenning ved virkningen. Stopp utsending, endring og utlevering av følsomme data til en person har godkjent det konkrete kallet.
- Begrens utførelsesmiljøet. Dersom agenter kan kjøre kode eller åpne nettadresser, må nettverk, filsystem og hemmeligheter avgrenses uavhengig av hva agenten svarer i samtalen.
- Test hele handlingskjeden. Prøv både direkte skadelige forespørsler og instruksjoner skjult i hentet innhold. Kontroller verktøykall og endret tilstand, ikke bare om sluttmeldingen høres trygg ut.
Valget blir da mer presist: CrewAI er et godt utgangspunkt når oppgaver og beslutningspunkter kan formes som roller og flyter; AutoGen er et godt utgangspunkt når overleveringer og samtalebaserte team står sentralt. Den publiserte testen gir en grunn til å undersøke sikkerhetsatferden i AutoGen-oppsettet nærmere, men kontrollen i en ferdig løsning ligger i rettighetene, verktøyene og godkjenningen du bygger rundt agentene.
Les også:
Relaterte artikler


MongoDB samler agentminne og styring – men Agent Engine er bare i preview

Slik sikrer du en MCP-server: OAuth stopper ikke forgiftede verktøy

LangChain eller LlamaIndex: RAG-first kan spare integrasjonsarbeid

DeepEval eller RAGAS: CI-test og produksjonsmåling løser ulike jobber

Tolv selskaper vil gi hver KI-agent en sporbar identitet
Abonner på nyhetsbrevet vårt
Få de siste nyhetene om Web3, KI og krypto rett i innboksen.