Ongewenst AI-gedrag opsporen met identiteitsbewuste analyses

Ming Lu, Kenny Johnson en Ayush Kumar

11 minuten leestijd

Dit artikel is ook beschikbaar in English, Deutsch, Español, Español (Latinoamérica), Français, Italiano, 日本語, 한국어, 繁體中文 en 简体中文.

Als je naar je AI-rekening kijkt, kan het lastig zijn om te zien of er iets mis is. Je hebt eerst een normaal gebruikerspatroon nodig om te zien wat er is veranderd, of het nu een agent is die zich misdraagt of een medewerker wiens gebruik vertienvoudigd is. Zodra je die verschuivingen kunt opmerken, kun je ze gaan onderzoeken, maar tot nu toe waren ze moeilijk zichtbaar.

Inzicht krijgen in wie wat doet met AI is momenteel een van de grootste uitdagingen voor organisaties. Uit een rapport van Stanford University bleek dat 59% van de organisaties aangaf dat gebrek aan kennis hun grootste obstakel vormden voor verantwoord AI-beheer. 

Dit is niet alleen een beveiligingsprobleem maar ook een financieel probleem. Om deze problemen op te lossen zijn twee dingen nodig: een geverifieerde identiteit bij elk verzoek (zodat een piek aan een naam kan worden gekoppeld) en inzicht in van wat voor die identiteit normaal gedrag is. Vandaag kondigen we beide aan.

De Identity-aware AI Gateway met Cloudflare Access is nu beschikbaar in open bèta, en User Insights is nu zonder extra kosten beschikbaar voor alle AI Gateway-klanten. Gezamenlijk gebruiken ze het bestaande AI Gateway-verkeer om voor elke gebruiker en agent een gedragsprofiel op te bouwen en de entiteiten te identificeren die daarvan afwijken

Wat is AI Gateway?

AI Gateway is het centrale controlepaneel voor al je AI-toepassingen. In plaats van dat elke app en elk team rechtstreeks modellen aanroept op OpenAI, Anthropic, Google of Workers AI, worden verzoeken eerst via AI Gateway geleid. Zo heb je één centrale omgeving om al je AI-gebruik te bewaken, beveiligen en beheren.

Het werkt met de applicaties die je bouwt en met de programmeertools die je ontwikkelaars nu al gebruiken. Als je agent-harnesses zoals Claude Code, Codex en GitHub Copilot via AI Gateway leidt, vallen ze onder dezelfde zichtbaarheid en controles als alle andere systemen.

Identity-aware AI Gateway

Met de AI Gateway en de Cloudflare Access-integratie kun je een een eigen domein voor je gateway plaatsen en het beveiligen met Access, net als elke andere applicatie. Dat betekent dat je het volgende kunt doen:

  • Gebruik authenticatie via elke SAML-ondersteunde identiteitsprovider, zoals Okta of Entra, waardoor het niet meer nodig is om Cloudflare API-sleutels te genereren en door te geven.
  • Stel beleid in voor wie precies toegang heeft tot je gateway.
  • Stuur verzoeken naar een eenvoudige hostnaam zoals ai.example.com, zonder account-ID of gateway-ID in de URL.

Elk geverifieerd verzoek bevat nu de gebruikersidentiteit die is vastgesteld via Access. AI Gateway voegt de geverifieerde ID van de Access-gebruiker toe aan de verzoekmetadata als cf.user_id, zodat je logboeken, analyses en uitgaven kunt filteren op de persoon die de aanvraag daadwerkelijk heeft gedaan.

In combinatie met bestedingslimieten wordt die identiteit een hulpmiddel voor budgettering. Omdat elk verzoek nu een echte gebruiker vertegenwoordigt, kun je bestedingslimieten per gebruiker instellen: geef elke gebruiker een eigen budget en blokkeer vervolgens verdere verzoeken of schakel over naar een goedkoper model wanneer dat budget is bereikt. Geen verrassingsfacturen meer en geen gedeelde API-sleutel die verbergt wie wat heeft uitgegeven.

Een van onze eerste gebruikers, Flexport, liep tegen precies dit probleem aan.

"Door gedeelde API-sleutels is het bijna onmogelijk om te achterhalen wie een AI-dienst gebruikt of om de bestaande toegangsregels voor medewerkers toe te passen", aldus Max Baumgarten, Staff Security Engineer bij Flexport. "Door Cloudflare Access vóór de AI Gateway te plaatsen, krijgt elk verzoek een geauthenticeerde identiteit en kunnen we onze bestaande identiteitsbeleidsregels bij de gateway toepassen. Onze teams kunnen AI-tools gebruiken zonder voor elke klant een apart authenticatiesysteem te hoeven opzetten."

In de nabije toekomst kun je de identiteitsprovidergroepen van je gebruikers gebruiken om bestedingslimieten in te stellen of te bepalen tot welke modellen een groep toegang heeft. Geef bijvoorbeeld je machine learning-team toegang tot geavanceerde frontiermodellen, beperk de uitgaven van je supportteam of wijs een budget toe aan iedereen die aan een specifiek project werkt. Alles is dan gekoppeld aan de groepen die je al beheert in je identiteitsprovider.

Het nieuwe tabblad 'User Insights'

Binnen AI Gateway zie je nu een tabblad met de naam User Insights (gebruikersinzichten). User Insights analyseert het verkeer dat via je gateway loopt en zet dit om in een gedragsprofiel van elk account. Het leert hoe elk account zich normaal gedraagt, identificeert de accounts die van dat patroon afwijken en geeft je context, zodat je een malafide agent kunt onderscheiden van een drukke engineer. Het werkt met het verkeer dat al via je gateway loopt, dus je hoeft niets in te stellen.

User Insights houdt de kosten bij en signaleert ook waar deze onnodig oplopen, zoals bij lage cache hit rates en te grote contextvensters. Er zijn al tal van tools die dat kunnen. Wat ze niet doen, is je vertellen of een account zich normaal gedraagt. En dat is waar wij de focus op hebben gelegd, samen met kostenbeheersing. 

Het vaststellen van normale patroon voor elk account: mensen en agenten.

Elk account laat na verloop van tijd een gedragsspoor achter, of het nu om een persoon of een agent gaat. Een agent die elke drie uur een samenvatting van tickets geeft, is efficiënt en consistent. Een persoon werkt rommeliger, met uiteenlopende opdrachten, onregelmatige tussentijden en lange sessies voor moeilijke problemen. Beide zijn legitiem, dus dezelfde afwijking kan in het ene geval ruis zijn en in het andere een echt signaal.

Bij User Insights beginnen we met het beoordelen van sessies, niet van individuele verzoeken. Absolute drempelwaarden werken hier niet goed: een kostenstijging van $ 500 van een frequente gebruiker kan normaal zijn, terwijl een sessie van $ 50 voor een agent die normaal $ 5 kost een vertienvoudiging betekent die anders ongemerkt voorbij zou gaan. We vergelijken elke sessie dus met het historische gebruikspatroon van het account, op basis van de 95e percentielwaarde (p95) van de sessiekosten in de afgelopen 30 dagen. Dat geeft ons inzicht in hoe het account normaal gesproken functioneert, en alles boven 2x de p95-waarde komt sterk in aanmerking voor afwijkend gedrag.

De volgende analyse beschrijft hoe we tot deze cijfers zijn gekomen.

Figuur 1: Detectie van afwijkende sessiekosten

BLOG-3381 2.png

Zo lees je bovenstaande grafiek 

De grafiek toont echte sessies uit ons eigen interne verkeer. Elk punt vertegenwoordigt een individuele sessie (uitgezet op logaritmische schalen):

  • X-as (Sessiekosten): Totale kosten in dollars.
  • Y-as (x Gebruiker p95): Hoe vaak de sessie het normale persoonlijke patroon van de gebruiker heeft overschreden.

De twee stippellijnen verdelen de sessies in vier categorieën:

  • Rechtsboven (★ sterren): Overtreft zowel de 2x gebruikersbasislijn van p95 als het p99-plafond op accountniveau. Dit zijn relatief hoge pieken die duiden op aanzienlijk afwijkende uitgaven en die een waarschuwing activeren. 
  • Linksboven: Hoge relatieve piek (2x gebruiker p95), maar onder de p99-ondergrens van het account. We negeren dit om te voorkomen dat we alarm slaan bij kleine prijsschommelingen.
  • Rechtsonder: Hoge absolute uitgaven, maar consistent met het normale hoge verbruik van deze gebruiker. Ook dit wordt als routinegedrag beschouwd en genegeerd.
  • Linksonder: Normale activiteit, ruim binnen beide normale patronen.

Figuur 2: Verdeling van de sessiekosten op accountniveau

BLOG-3381 3.png

Dit histogram (Figuur 2) brengt de kosten van elke sessie binnen de organisatie in kaart om een accountbrede bovengrens vast te stellen:

  • Normaal gebruik: Het merendeel van de sessies blijft onder de $ 10, met een 95e percentielwaarde van $ 20.
  • Account p99 ($ 200): Slechts 1% van alle sessies binnen het hele bedrijf bereikt of overschrijdt $ 200.

Dus waarom kozen we voor p99? Omdat de absolute bovengrens van het account daarmee een betekenisvolle grens vormt. Een anomalie is dan niet alleen een plotselinge afwijking in het gedrag van één gebruiker, maar behoort ook tot de duurste 1% van de sessies in de organisatie.

Afbeelding 3: Sessiegeschiedenis van één gebruiker

BLOG-3381 4.png

Normale patronen zijn niet statisch. Naarmate de gewoonten van een account veranderen, verschuiven de voortschrijdende p95-waarde (groene lijn) en de 2x-drempelwaarde (oranje lijn) mee, zodat een waarschuwing altijd het recente gedrag weerspiegelt in plaats van een eenmalig ingestelde waarde. We hanteren ook een financiële ondergrens, zodat een piek alleen wordt gemeld als deze zowel statistisch ongebruikelijk is als belangrijk genoeg om door een beheerder te worden onderzocht. Die financiële ondergrens zorgt ervoor dat een 500-voudige uitschieter van een gebruiker die normaal maar een paar cent uitgeeft nooit leidt tot een waarschuwing.

De juiste manier om corrupt gedrag op te sporen 

Na alle bovenstaande analyses zien beheerders een overzicht van de accounts die afwijkend waren van hun eigen patroon en waarbij alles wat normaal is, eruit is gefilterd. Die gefilterde weergave vormt een overzicht van corrupt gedrag.

Bedrijfsoverzicht met daarin afwijkend gedrag
Bedrijfsoverzicht met daarin afwijkend gedrag

Dit gedrag is moeilijk te ontdekken, omdat het signaal nooit een nieuw hulpmiddel of een geblokkeerde actie betreft. Het is een vertrouwd account dat meer doet dan het al mag doen. Het kan gaan om een serviceaccount dat plotseling duurdere sessies begint te draaien, of om iemand wiens gebruik plots ver boven het normale niveau uitkomt en dat dagenlang doet.

Afwijkend gedrag uitgesplitst per sessie
Afwijkend gedrag uitgesplitst per sessie

Geen van deze gevallen overschrijdt een beleidsregel, maar ze wijken allemaal af van het normale gedragspatroon. Een plotselinge afwijking ten opzichte van het normale gebruik van een account is vaak het eerste waarneembare signaal van gecompromitteerde inloggegevens of een AI-agent die zich onvoorspelbaar gaat gedragen.

Gedetailleerdere inzichten op gebruikersniveau
Gedetailleerdere inzichten op gebruikersniveau

User Insights bepaalt niet wat de intentie is en blokkeert niemand; in plaats daarvan brengt het de paar accounts die afwijkend gedrag hebben vertoond in beeld bij een beheerder, zodat die de volgende vragen kan stellen. Soms leidt dat tot een echt onderzoek. Soms betekent het gewoon dat iemand coaching nodig heeft (zoals de ontwikkelaar die bij elke prompt een volledige codebase meestuurt, terwijl een codefragment voldoende zou zijn). 

Wat is de volgende stap? 

Wij helpen je de overstap te maken van kostenbeheer naar kostenoptimalisatie

Zodra je een budget hebt vastgesteld, is de logische volgende vraag: hoe kun je dezelfde kwaliteit bereiken tegen lagere kosten? Niet elk verzoek moet door een frontiermodel worden verwerkt. Voor eenvoudige taken zoals samenvattingen of codeaanvullingen kan prima worden uitgevoerd met een goedkoper model zonder noemenswaardig kwaliteitsverlies.

We ontwikkelen taakgerichte slimme routing, waarbij AI Gateway het binnenkomende verzoek analyseert en leidt naar het model dat het beste resultaat levert tegen de laagste kosten. Op organisatieniveau kun je zien waar je de grootste besparingen kunt behalen zijn door verzoeken te routen naar efficiëntere modellen. Slimme routing op basis van taken is volop in ontwikkeling. We vertellen er meer over zodra dit verder is uitgewerkt.

We geven je inzicht hoe AI binnen je organisatie wordt gebruikt

Anomaliedetectie laat zien dát een account afwijkt van het normale patroon, maar geeft er geen verklaring voor. Een beheerder moet nog steeds de logbestanden doorspitten en reconstrueren wat er is gebeurd. Het dichten van die kloof is waar we ons nu op richten. Dat begint met het classificeren van de aard van het verkeer.

We zijn bezig met het ontwikkelen van een systeem voor het classificeren van prompts, waarmee verzoeken kunnen worden ingedeeld in categorieën zoals programmeren, schrijven en andere. Deze categorieën vormen de context die bij vrijwel elk ander signaal ontbreekt. Een plotselinge stijging van de uitgaven aan 'programmeren' door een engineer is misschien acceptabel, maar dezelfde stijging in een categorie waar die klant nog nooit eerder geld aan heeft uitgegeven, is dat niet. Classificatie kan een organisatie niet alleen laten zien hoeveel AI er wordt gebruikt, maar ook waarvóór de organisatie AI gebruikt. 

Het beantwoordt ook de onderliggende vraag in veel van deze gesprekken: wordt AI gebruikt voor de taken waarvoor het bedoeld is? Zodra zakelijk verkeer is gescheiden van al het andere, wordt persoonlijk gebruik zichtbaar. Van buitenaf gezien lijken iemand die onder werktijd aan een eigen project werkt en iemand die stilletjes gegevens via een model naar buiten brengt hetzelfde. Het kunnen onderscheiden van deze situaties is cruciaal voor het opsporen van insider-risico's. 

Zodra je AI-verkeer via AI Gateway loopt, krijgen beheerders bij elke nieuwe categorie risico- of efficiëntiesignalen automatisch extra inzicht zonder extra configuratie.

Aan de slag

User Insights is vanaf vandaag zonder extra kosten beschikbaar voor alle AI Gateway-klanten. Het is al beschikbaar in het dashboard voor iedereen die verkeer via de gateway verzendt, dus als je al routing via AI Gateway routing gebruikt, is deze weergave voor jou beschikbaar. 

Als je dat nog niet hebt gedaan, maak een gateway aan en begin met het versturen van verzoeken naar elk model in onze catalogus

We raden aan om AI Gateway achter Cloudflare Access te plaatsen, dat zich momenteel in open bèta bevindt. De uitgaven- en afwijkingsweergaven werken ook zonder, maar het koppelen van een identiteit maakt van een anonieme account-ID een naam waar je daadwerkelijk actie op kunt ondernemen. Begin in de bewakingsmodus om het normale patroon vast te stellen voordat je regels gaat handhaven.

We willen graag weten hoe je momenteel AI beheert. Neem deel aan het gesprek op Neem contact op metDiscord of je accountteam.