Publication | Closed Access
Certified self-modifying code
94
Citations
21
References
2007
Year
Unknown Venue
Program CheckingEngineeringVerificationComputer-aided VerificationSelf-modifying CodeSoftware AnalysisFormal VerificationHardware SecurityDynamic LoadingMechanical VerificationStatic CheckingRuntime VerificationSoftware CertificationComputer EngineeringComputer ScienceStatic Program AnalysisData SecuritySoftware VerificationOs Boot LoaderProgram AnalysisSoftware TestingFormal MethodsSystem Software
Self-modifying code (SMC), in this paper, broadly refers to anyprogram that loads, generates, or mutates code at runtime. It is widely used in many of the world's critical software systems tosupport runtime code generation and optimization, dynamic loading and linking, OS boot loader, just-in-time compilation, binary translation,or dynamic code encryption and obfuscation. Unfortunately, SMC is alsoextremely difficult to reason about: existing formal verification techniques-including Hoare logic and type system-consistentlyassume that program code stored in memory is fixedand immutable; this severely limits their applicability and power.
| Year | Citations | |
|---|---|---|
Page 1
Page 1