Efficient, transparent, and comprehensive runtime code manipulation
By Derek Bruening. 2004
485 citations recorded by the source corpus.
View Paper: https://www.semanticscholar.org/paper/326cdcbce0831d873ef41ad56e98eddfa6dff235
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
- Valentin J. M. Manès
- Charles E. Leiserson
- Kostya Serebryany
- Nicholas Nethercote
- Amit Vasudevan
- Julian Seward
- Sang Kil Cha
- Ori Or-Meir
Citations in the corpus
- The Cilk++ concurrency platform (2009, methodology): “As the application executes, Cilkscreen uses dynamic instrumentation [7, 23] to intercept every load and store executed at user level.”
- XTRec: Secure Real-Time Execution Trace Recording on Commodity Platforms (2011, methodology): “Tools such as Valgrind [25], and DynamoRIO [5] can run a specified program within an OS using dynamic binary translation and can be used for instruction-level execution logging.”
- Automatically patching errors in deployed software (2009, methodology): “2.1 DeterminaComponents TheDeterminaManagedProgramExecutionEnvironmentuses DynamoRIO[5]for ef.cient,transparent, andcomprehensive manipulation of arbitrarybinary executables.”
- Dynamic Malware Analysis in the Modern Era—A State of the Art Survey (2019, methodology): “DynamoRIO [65] is using a technique similar to binary instrumentation , referred to as run-time code manipulation .”
- Valgrind: a framework for heavyweight dynamic binary instrumentation (2007, background): “The performance of DBI frameworks has been studied closely [1, 2, 9].”
- AddressSanitizer: A Fast Address Sanity Checker (2012, methodology): “int *a = new int[2]; // 8-aligned int *u = (int*)((char*)a + 6); *u = 1; // Access to range [6-9]”
- Pin: building customized program analysis tools with dynamic instrumentation (2005, background): “Categories and Subject Descriptors D.2.5 [Software Engineering]: Testing and Debugging-code inspections and walk-throughs, debugging aids, tracing; D.3.4 [Programming Languages]: Processorscompilers, incremental compilers General Terms Languages, Performance, Experimentation Keywords Instrumenta”
- PlatPal: Detecting Malicious Documents with Platform Diversity (2017, background): “, Intel Pin [32] and DynamoRio [7]) to hook the execution of AAR and examine function calls at runtime.”
- The Art, Science, and Engineering of Fuzzing: A Survey (2018, methodology): “There are several well-known dynamic instrumentation tools such as DynInst [173], DynamoRIO [42], Pin [144], Valgrind [163], and QEMU [33].”
- Control Flow Integrity for COTS Binaries (2013, unknown): “The typical way to deal with this uncertainty, employed in dynamic binary translation (DBT) [8], is to wait until a value is used as the target of an ICF transfer.”