CCured: type-safe retrofitting of legacy code
By George C. Necula, Scott McPeak, Westley Weimer. ACM-SIGACT Symposium on Principles of Programming Languages, 2002
633 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Information Systems
View Paper: https://www.semanticscholar.org/paper/1f4432588b77da18963a7c73267b2f5b549388e0
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
In Information Systems
- Dawn Song
- A. Aiken
- James Newsome
- Sandeep Bhatkar
- Daniel C. DuVarney
- Sriram K. Rajamani
- Michael I. Jordan
- Alice X. Zheng
Citations in the corpus
- Region-based memory management in cyclone (2002, background): “In summary, some of these systems are more convenient to use than Cyclone (e.g., CCured and the MLKit) but take away control over memory management.”
- AddressSanitizer: A Fast Address Sanity Checker (2012, methodology): “LBC [12] uses source-to-source transformation and relies on CCured to eliminate redundant checks.”
- Automated detection of persistent kernel control-flow attacks (2007, methodology): “CCuredinthe Real World.”
- Learning from mistakes: a comprehensive study on real world concurrency bug characteristics (2008, neutral): “CCured: Type-safe retro.tting of legacy code.”
- An efficient and backwards-compatible transformation to ensure memory safety of C programs (2004, methodology): “CCured in the real world.”
- Bug isolation via remote program sampling (2003, background): “Where this cannot be done, CCured inserts dynamic checks to enforce memory safety at run time [21].”
- Data-Oriented Programming: On the Expressiveness of Non-control Data Attacks (2016, background): “For example, Cyclone and CCured introduce a safe type system to the type-unsafe C language [51], [52].”
- Vigilante: end-to-end containment of internet worms (2005, background): “Additionally, cooperation allows hosts to run expensive detection engines with high accuracy [21, 4, 30, 9, 28] because it spreads detection load.”
- Non-Control-Data Attacks Are Realistic Threats (2005, background): “CCured [27] is a program transformation tool that attempts to statically verify that a C program is typesafe, and thus free from memory errors.”
- Countering code-injection attacks with instruction-set randomization (2003, methodology): “CCured [48] combines type inference and run-time checking to make C programs type safe, by classifying pointers according to their usage.”
- Bringing the web up to speed with WebAssembly (2017, background): “Previous systems such as CCured [34] and Cyclone [23] have imposed safety at the C language level, which generally requires program changes.”
- A Practical Dynamic Buffer Overflow Detector (2004, methodology): “presented a program transformation tool (CCured) that adds memory safety guarantees to C programs[24, 9].”
- SoK: Eternal War in Memory (2013, background): “CCured [49] and Cyclone [50] use “fat-pointers” by extending the pointer representation to a structure which includes the extra information.”