Valgrind: a framework for heavyweight dynamic binary instrumentation
By Nicholas Nethercote, Julian Seward. ACM-SIGPLAN Symposium on Programming Language Design and Implementation, 2007
2,918 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Electrical and Electronic Engineering, Hardware and Architecture
View Paper: https://www.semanticscholar.org/paper/112c4fa8a35d16b04831c43cdd19538249d0ecc1
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Manuel Günther
- Michael K. Reiter
- Andras Rozsa
- Terrance E. Boult
- Thomas Ristenpart
- Yinqian Zhang
- Ethan M. Rudd
- Dawn Song
In Electrical and Electronic Engineering
- Per Larsen
- Tao Wei
- Shan Lu
- Michael Franz
- Simon J. Gibbs
- S. S. Iyengar
- David A. Molnar
- Amit Vasudevan
In Hardware and Architecture
Citations in the corpus
- A Survey on Malware Detection Using Data Mining Techniques (2017, methodology): “Typical dynamic analysis tools include Valgrind [Nethercote and Seward 2007], QEMU [Qemu 2016], and strace.”
- Continental scale, high order, high spatial resolution, ice sheet modeling using the Ice Sheet System Model (ISSM) (2012, methodology): “VALGRIND: instrumentation framework for building dynamic analysis tools [Nethercote and Seward, 2007; see also Valgrind, 2011, http://valgrind.org].”
- 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].”
- A Survey of Stealth Malware Attacks, Mitigation Measures, and Steps Toward Autonomous Open World Solutions (2016, methodology): “This approach is analogous to that used in memory integrity checking modules of heavyweight dynamic binary instrumentation (DBI) frameworks like Valgrind [51].”
- Jalangi: a selective record-replay and dynamic analysis framework for JavaScript (2013, methodology): “This is better than PinPlay [22] by a factor of 2X-3X and slower than Valgrind [20].”
- 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.”
- Architecture, implementation and parallelisation of the GROMOS software for biomolecular simulation (2012, methodology): “In addition to the internal debugging mechanism, the debug version can be used in conjunction with standard debugging tools like those of the compilers or Valgrind [44].”
- Baggy Bounds Checking: An Efficient and Backwards-Compatible Defense against Out-of-Bounds Errors (2009, background): “Solutions us-ing fat pointers [24, 18] extend the pointer representation with bounds information.”
- CTrigger: exposing atomicity violation bugs from their hiding places (2009, methodology): “Our implementation is based on Pin and the state-of-the-art open-source Valgrind-lockset race detection tool [18].”
- Automated Whitebox Fuzz Testing (2008, methodology): “With online generation, constraints are generated as the program is executed either by statically injected instrumentation code or with the help of dynamic binary instrumentation tools such as Nirvana [3] or Valgrind [25] ( Catchconv is an example of the latter approach [22].)”
- SoK: Eternal War in Memory (2013, neutral): “We cover enforcing this policy under Section VII-B.”
- QSYM : A Practical Concolic Execution Engine Tailored for Hybrid Fuzzing (2018, methodology): “For instance, based on our evaluation, the VEX IR [16], used by angr, increases the number of instructions by 4.”
- CETS: compiler enforced temporal safety for C (2010, methodology): “Object location-based approaches ( e.g. , [18, 20, 25, 28]) use the location (address) of the object to determine whether it is allocated or not.”
- SGXBOUNDS: Memory Safety for Shielded Execution (2017, result): “We have obtained similar results with SPEC CPU2006 and four real-world case studies: SQLite, Memcached, Apache, and Nginx.”
- TaintScope: A Checksum-Aware Directed Fuzzing Tool for Automatic Software Vulnerability Detection (2010, methodology): “Flayer is based upon functionality from Memcheck [55] and marks input data only with 0/1 label.”
- Cross-Tenant Side-Channel Attacks in PaaS Clouds (2014, background): “For example, the adversary may run the entire web application in Valgrind [24] and trigger various victim activities with manufactured web requests, recording the control flow that results from each.”