Zeventienduizend gebeurtenissen, en de API zei nee

Het moment dat ertoe doet in de bekendmaking van Hugging Face is niet de inbraak. Het is een responder die met het bewijs in handen voor een betaalde API zit en wordt weggestuurd. Op 16 juli 2026 publiceerde het bedrijf een verslag van een beveiligingsincident waarbij aanvallers volgens eigen zeggen gebruikmaakten van wat het letterlijk omschrijft als "(a remote-code dataset loader and a template-injection in a dataset configuration)" om code op een verwerkingsworker te draaien. Wat de responders daarna in handen hadden was, in de woorden van Hugging Face zelf, "the full attacker action log, comprised of more than 17,000 recorded events". Elders spreekt de post van "tens of thousands of automated actions".

De weigering is het verhaal, en Hugging Face schreef de zin zelf. De post stelt: "This did not work: the analysis requires submitting large volumes of real attack commands, exploit payloads, and C2 artifacts, and these requests were blocked by the providers' safety guardrails, which cannot distinguish an incident responder from an attacker." De laatste bijzin draagt het gewicht. Het systeem velde geen verkeerd oordeel over Hugging Face. Het kon dat oordeel helemaal niet vellen.

Alles hierboven rust op het woord van Hugging Face, en dat zeggen we graag onomwonden. Wij hebben geen onafhankelijke primaire bron voor welke feiten van het incident dan ook. Geen enkel medium heeft ze bevestigd; elk verslag dat wij vonden herhaalt slechts de post van het bedrijf. Hugging Face geeft geen inbraakdatum en geen detectiedatum, alleen "Earlier this week" en "over a weekend". Het noemt geen aanbieder. En het verklaart het eigen werk onaf: "We are still completing our assessment of whether any partner or customer data was affected." Dit stuk is geen incidentverslaggeving. Het is een lezing van wat de gepubliceerde contracten van de aanbieders werkelijk zeggen, afgezet tegen het gedrag dat Hugging Face beschrijft.

We lazen de drie beleidsstukken op zoek naar het verbod

Het bestaat niet. Wij haalden het gepubliceerde gebruiksbeleid van Anthropic, OpenAI en Google op, en geen van de drie verbiedt het analyseren van vijandig materiaal uit een inbraak op uw eigen systeem. Dat is geen gelegenheidslezing. Elk cyberverbod in alle drie de documenten wordt begrensd door een bijzin, en het gedrag dat Hugging Face beschrijft valt buiten elke bijzin.

Het gebruiksbeleid van Anthropic, van kracht per 15 september 2025, verbiedt werk om te "Discover or exploit vulnerabilities in systems, networks, or applications without authorization of the system owner", en verbiedt gebruikers afzonderlijk om "Create or distribute malware, ransomware, or other types of malicious code". Hugging Face was de systeemeigenaar, dus de eerste clausule reikt niet tot hen. Het analyseerde payloads die al bestonden en maakte of verspreidde ze niet, dus de tweede evenmin. Nergens in het document staat een uitzondering voor beveiligingsonderzoek, incidentrespons of verdediging. Jailbreak- en prompt-injectiewerk is alleen verboden "without prior authorization from Anthropic", wat een toestemming veronderstelt maar naar geen enkel gepubliceerd proces verwijst om die te krijgen.

Het gebruiksbeleid van OpenAI, van kracht per 29 oktober 2025, verbiedt de "destruction, compromise, or breach of another's system or property, including malicious or abusive cyber activity". De bijzin zit in het woord another's. Het betrokken systeem was dat van Hugging Face zelf. Wij vonden geen uitzondering voor beveiligingsonderzoek; de enige gedocumenteerde beoordelingspoort betreft "national security or intelligence purposes without our review and approval".

Google's Generative AI Prohibited Use Policy, laatst gewijzigd op 17 december 2024, zegt: "Do not compromise the security of others' or Google's services. This includes generating or distributing content that facilitates: Spam, phishing, or malware." Opnieuw doet de bijzin het werk. Buitgemaakte payloads ter analyse aanbieden is ze niet genereren en niet verspreiden. Er is geen beveiligingsuitzondering, alleen een algemene uitzonderingsclausule: "We may make exceptions to these policies based on educational, documentary, scientific, or artistic considerations, or where harms are outweighed by substantial benefits to the public." Er is geen aanvraagroute, contact of procedure gedocumenteerd. Alle drie de beleidsstukken waren vóór het incident van kracht.

Het contract van uw leverancier is niet uw beheersmaatregel

Dit is de zin die wij aan een raad van commissarissen zouden voorleggen. Het gat zit er niet in dat het contract en de classifier elkaar tegenspreken. Het zit erin dat het contract deze situatie nooit heeft geadresseerd, terwijl de classifier zich gedroeg alsof zij verboden was. De responders van Hugging Face liepen volgens hun eigen verslag tegen een weigering aan voor werk dat geen enkel gepubliceerd beleid van de drie grote aanbieders verbiedt.

Een operator die de inkoop goed had gedaan, was er alsnog ingelopen. U las het gebruiksbeleid. U vond niets dat defensieve analyse van uw eigen inbraak verbood, omdat daar niets te vinden is. U tekende. En wat u vervolgens weigerde was de runtime, een ander object dan het document, geregeerd door geen enkele bepaling die u onderhandelde en beschreven in geen enkele clausule die u nalas. Wat u verifieerde en wat om drie uur 's nachts beslist zijn niet hetzelfde systeem.

Wij beschrijven een leemte in de gepubliceerde voorwaarden en beschuldigen niemand van schending ervan. Zowel Anthropic als OpenAI staan contractueel maatwerk toe, en niet-openbare enterprisevoorwaarden kunnen iets heel anders zeggen dan het openbare beleid; wij hebben die voorwaarden niet gezien en kunnen er niets over zeggen. Evenmin kunnen wij u zeggen waarom de weigeringen plaatsvonden. Hugging Face publiceert geen weigeringstranscripten, dus of de blokkades beleidsgedreven waren of gewoon over-blocking door classifiers is van buitenaf niet te weten, en wij gaan niet gissen. Hugging Face noemt de blokkerende aanbieders ook niet. Het zegt alleen: "we are sharing this feedback with the providers concerned."

Wat Hugging Face werkelijk beweerde, en wat niet

De schade-inschatting van het bedrijf is smaller dan een vluchtige lezing suggereert, en die precisie is het bewaren waard. Hugging Face meldt "no evidence of tampering with public, user-facing models, datasets, or Spaces, and our software supply chain (container images and published packages) was verified clean". Dat zijn twee verschillende beweringen. Geen bewijs van manipulatie is een afwezigheid van bevindingen. Verified clean is een positieve uitspraak over de toeleveringsketen, en de sterkste van de twee. Ze samenvoegen tot één geruststelling maakt een incidentsamenvatting minder nauwkeurig dan de bekendmaking die zij samenvat.

De aanvaller was zelf geautomatiseerd, en dat detail maakt het volumeprobleem structureel in plaats van ongelukkig. Hugging Face beschrijft de campagne letterlijk als "run by an autonomous agent framework (appearing to be built on an agentic security-research harness - used LLM still not known)". Een agent die tienduizenden acties genereert, laat een log achter dat een menselijk team niet op tempo kan lezen, en precies daarom wilden de responders er een model op zetten, en precies daar werden zij geblokkeerd. De enige operationele instructie in de post is kort: "we recommend rotating any access tokens and reviewing recent activity on your account."

En Hugging Face liep vooruit op het argument dat sommige lezers hieruit willen halen, dus citeren wij het liever dan eromheen te praten. De post stelt: "This is not an argument against safety measures on hosted models". Wij zijn het daarmee eens, en dit stuk is dat argument niet. Filters die een incident responder niet van een aanvaller kunnen onderscheiden, doen tegen de aanvaller nog steeds echt werk. De bevinding hier gaat over wat de gepubliceerde voorwaarden weglaten en wat een operator daarom moet testen, niet over de vraag of de filters moeten bestaan.

Test de weigering voordat het incident u test

Plan de oefening dit kwartaal. Neem echt vijandig materiaal uit uw eigen logs, dien het in bij de API waar u tijdens een incident daadwerkelijk naar zou grijpen, en schrijf op wat er terugkomt. De bevinding die u wilt is geen geruststelling. Het is een feitelijk antwoord op een vraag die geen contract voor u beantwoordt, verkregen op een dag waarop niets brandt.

Voor een EU-operator maakt de klok dit concreet in plaats van theoretisch. De meldplichten onder NIS2 lopen op een vroegtijdige waarschuwing binnen 24 uur en een melding binnen 72 uur, en DORA legt financiële entiteiten een eigen krap venster voor de initiële melding op. Die termijnen veronderstellen dat u kunt karakteriseren wat er gebeurd is. Als uw analyseroute in uur drie vastloopt omdat een filter uw eigen bewijs niet aanneemt, stopt de klok niet terwijl u dat ontdekt. Dat is het verschil tussen het ontdekken in een tabletop-oefening en het ontdekken binnen een toezichtstermijn.

Houd daarna de route open die niet geweigerd kan worden. De terugvaloptie van Hugging Face, in zijn eigen woorden: "We ran the forensic analysis instead on GLM 5.2, an open-weight model, on our own infrastructure." GLM 5.2 komt van Z.ai, voorheen Zhipu, in Peking; Hugging Face zelf karakteriseert de herkomst van het model niet, en die duiding is de onze, niet de hunne. De herkomst is niet het punt. Gewichten die u bezit, draaiend op hardware die u beheert, is de enige configuratie waarin de runtime van een derde geen stem heeft in de vraag of uw incident geanalyseerd wordt. Elke operator zou vandaag moeten weten of hij er zo een heeft en of die werkt.