Publication | Closed Access
Improving integer security for systems with KINT
88
Citations
19
References
2012
Year
Unknown Venue
Cryptographic PrimitiveEngineeringInformation SecurityInteger SecuritySoftware AnalysisFormal VerificationInteger ErrorHardware SecurityInteger ErrorsSecure ComputingStatic CheckingSource CodeRuntime VerificationComputer EngineeringData PrivacyComputer ScienceStatic Program AnalysisLanguage-based SecurityData SecurityCryptographyProgram AnalysisCryptographic ProtectionSoftware TestingFormal MethodsSecuritySymbolic ExecutionSystem Software
Integer errors have emerged as an important threat to systems security, because they allow exploits such as buffer overflow and privilege escalation. This paper presents KINT, a tool that uses scalable static analysis to detect integer errors in C programs. KINT generates constraints from source code and user annotations, and feeds them into a constraint solver for deciding whether an integer error can occur. KINT introduces a number of techniques to reduce the number of false error reports. KINT identified more than 100 integer errors in the Linux kernel, the lighttpd web server, and OpenSSH, which were confirmed and fixed by the developers. Based on the experience with KINT, the paper further proposes a new integer family with NaN semantics to help developers avoid integer errors in C programs.
| Year | Citations | |
|---|---|---|
Page 1
Page 1