Abstract-Dynamic binär analys är en vanlig och oumbärlig teknik i programanalys. Medan flera dynamiska binära analysverktyg och ramverk har föreslagits, alla lider av en eller flera av: oöverkomlig prestandanedbrytning, ett semantiskt gap mellan analyskoden och programmet som analyseras, arkitektur/OS specificitet, är endast användarläge, och saknar API:er. Vi presenterar DECAF, en virtuell maskin baserad, multi-mål, hela systemet dynamisk binär analys ram byggd på toppen av QEMU. DECAF ger Just-in-time Virtual Machine-introspektion och en plugin-arkitektur med ett enkelt att använda händelsedrivet programmeringsgränssnitt. DECAF implementerar en ny instruction-level containt tracking motor på bit granularity, som utövar fin kontroll över QEMU Tiny Code Generator (TCG) mellanliggande representation för att uppnå on-the-fly optimeringar samtidigt som det säkerställer att föroreningen spridning är ljud och mycket exakt. Vi gör en formell analys av DECAF:s befläckade förökningsregler för att verifiera att de flesta instruktioner varken innehåller falska positiva eller falska negativa. Vi presenterar också tre plattformsneutrala plugins-Instruction Tracer, Keylogger Detector, och API Tracer, för att visa enkel användning och effektivitet av DECAF skriftligen plattformsoberoende och systemomfattande analysverktyg. Genomförandet av DECAF består av 9 550 linjer av C++-kod och 10 270 linjer av C-kod och vi utvärderar DECAF med CPU2006 SPEC-riktmärken och visar genomsnittliga overhead på 605 procent för system bred förorening och 12 procent för VMI.
DECAF REF är en hel system binär analys ram för programanalys som innehåller en fläck spårningsmekanism.
DECAF: A Platform-Neutral Whole-System Dynamic Binary Analysis Platform
{'venue': 'IEEE Transactions on Software Engineering', 'journal': 'IEEE Transactions on Software Engineering', 'mag_field_of_study': ['Computer Science']}