← Nieuwste papers
💻 computer science

Veritas: A Semantically Grounded Agentic Framework for Memory Corruption Vulnerability Detection in Binaries

Veritas is een semantisch onderbouwde multi-agent framework dat statische analyse van gelift LLVM IR, dual-view LLM-resoneren en runtime-validatie combineert om memory-corruptiekwetsbaarheden in gestripte binaries te detecteren met een hoge recall en een laag aantal vals-positieven, en heeft hiermee een tot dan toe onbekende Apple-kwetsbaarheid succesvol geïdentificeerd.

Oorspronkelijke auteurs: Xinran Zheng, Alfredo Pesoli, Marco Valleri, Suman Jana, Lorenzo Cavallaro

Gepubliceerd 2026-05-15
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Xinran Zheng, Alfredo Pesoli, Marco Valleri, Suman Jana, Lorenzo Cavallaro

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Het Grote Probleem: De "Verloren Vertaling"

Stel je voor dat je een complexe machine (een computerprogramma) hebt die in een fabriek is gebouwd. De fabriek bewaart de originele blauwdrukken (de broncode), maar de machine die je daadwerkelijk ontvangt is een afgevlakte, black-box-versie (de binary) waarbij alle labels, instructies en diagrammen zijn verwijderd.

Beveiligingsexperts moeten "geheugen-corruptie"-bugs vinden in deze black boxes. Dit zijn als verborgen scheuren in de fundering van de machine die een hacker de toegang geven.

Het probleem is dat zonder de blauwdrukken het ongelooflijk moeilijk is om te zien hoe een klein onderdeel van de machine (zoals een knop die je indrukt) verbonden is met een gevaarlijk onderdeel (zoals een drukventiel) kilometersver weg binnenin de doos.

De Oude Manier: Gissen met AI

Onlangs zijn mensen begonnen met het gebruik van krachtige AI (Large Language Models) om naar deze black boxes te kijken. De AI is slim; het kan de "onbegrijpelijke" code van de machine lezen en proberen te raden waar de scheuren zitten.

Echter, het paper stelt dat de AI als een detective is die alleen een wazige foto heeft. De AI kan vormen zien, maar het kan niet zeker zijn of een lijn een pijp of een draad verbindt. Omdat de "foto" (de binary-code) cruciale details mist, doet de AI vaak het volgende:

  1. Het mist echte scheuren (Valse Negatieven).
  2. Het denkt dat veilige plekken scheuren zijn (Valse Positieven).

De Oplossing: Veritas (De "Waarheidszoeker")

De auteurs bouwden een nieuw systeem genaamd Veritas. In plaats van de AI vrij te laten gissen, fungeert Veritas als een drie-stappen onderzoeksteam dat de AI dwingt zich aan de feiten te houden.

Zie Veritas als een team van drie specialisten die samenwerken:

Stap 1: De Kaartenmaker (De Slicer)

Voordat de AI naar iets kijkt, scant een gespecialiseerd hulpmiddel (de Slicer) de black box. Het gebruikt geen AI; het gebruikt strikte wiskunde om een precieze kaart te tekenen.

  • De Analogie: Stel je voor dat de machine een enorme stad is. De Slicer negeert 99% van de stad (de veilige delen) en tekent één enkele, dunne lijn die de "Ingang" (waar data binnenkomt) verbindt met de "Gevarenzone" (waar data wordt gebruikt).
  • Het Resultaat: Het geeft de AI een klein, gefocust pad om te onderzoeken, in plaats van de hele rommelige stad. Dit pad wordt ondersteund door "getuigen" (bewijs dat de data deze weg daadwerkelijk aflegt).

Stap 2: De Detective (De Dual-View Detector)

Nu kijkt de AI (de Detective) naar het pad dat de Kaartenmaker tekende. Maar hier is de truc: de AI kijkt naar het pad door twee verschillende paren brillen.

  • Bril A (Gedecompileerde Code): Dit lijkt op leesbare Engelse zinnen. Het helpt de AI het verhaal te begrijpen van wat er gebeurt.
  • Bril B (LLVM IR): Dit lijkt op ruwe, technische blauwdrukken. Het helpt de AI de exacte wiskunde en geheugenadressen te zien.
  • De Analogie: Als de AI verward is over een specifiek straatbord, schakelt het over op de technische blauwdrukken om precies te zien waar de weg naartoe gaat. Dit voorkomt dat de AI verhalen verzint die niet passen bij de wiskunde.

Stap 3: De Forensische Tester (De Validator)

De AI kan zeggen: "Ik denk dat er hier een scheur is!" Maar Veritas neemt zijn woord niet zomaar voor waar. Een derde agent (de Validator) gaat naar buiten en test de machine fysiek.

  • De Analogie: De AI is de getuige in de rechtbank die zegt: "Ik heb een scheur gezien." De Validator is de rechter die zegt: "Laat het me zien." De Validator draait de machine met een speciaal hulpmiddel (een debugger) om te zien of de machine daadwerkelijk kapotgaat wanneer de AI zegt dat het zou moeten.
  • Het Resultaat: Als de machine niet kapotgaat, wordt de "scheur" verworpen. Als hij wel kapotgaat, wordt de bug bevestigd.

Waarom Dit Belangrijk Is (De Resultaten)

De auteurs testten Veritas op software uit de echte wereld waarvan de labels waren verwijderd.

  • Succespercentage: Veritas vond 90% van de echte bugs.
  • Nauwkeurigheid: Het had bijna nul valse alarmen. Als het zei dat een bug bestond, was dat bijna altijd waar.
  • Winst in de Wereld: In een aparte test vond Veritas een gloednieuwe, onbekende bug (een "0-day") in de software van Apple die niemand kende. Ze meldden het, en Apple bevestigde het en gaf het een beveiligings-ID (CVE).

De Kernboodschap

Het paper stelt dat je niet zomaar kunt vertrouwen op een slimme AI om bugs te vinden in complexe, afgevlakte software. De AI heeft gronding nodig.

  • Zonder Gronding: De AI is als een dromer, die dingen verbeeldt die misschien niet bestaan.
  • Met Veritas: De AI is een wetenschapper. Het krijgt een specifiek pad om te controleren (van de Kaartenmaker), het controleert de details met twee verschillende hulpmiddelen (de Detective), en het bewijst zijn bevindingen met een fysieke test (de Validator).

Door strikte wiskunde, slimme AI en testen in de echte wereld te combineren, maakt Veritas het vinden van gevaarlijke softwarebugs veel betrouwbaarder en nauwkeuriger.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →