Publication | Closed Access
ViewPoints: differential string analysis for discovering client- and server-side input validation inconsistencies
24
Citations
18
References
2012
Year
Unknown Venue
EngineeringInformation SecurityVerificationSoftware EngineeringInformation ForensicsModel VerificationSoftware AnalysisFormal VerificationHardware SecurityData ScienceData MiningSystems EngineeringFuzzingRuntime VerificationSecurity TestingKnowledge DiscoveryInsufficient ValidationComputer ScienceWeb ApplicationStatic Program AnalysisLanguage-based SecurityData SecuritySecurity Testing MethodSoftware SecurityData ValidationProgram AnalysisSoftware TestingFormal MethodsDifferential String AnalysisRedundant Input Validation
Since web applications are easily accessible, and often store a large amount of sensitive user information, they are a common target for attackers. In particular, attacks that focus on input validation vulnerabilities are extremely effective and dangerous. To address this problem, we developed ViewPoints--a technique that can identify erroneous or insufficient validation and sanitization of the user inputs by automatically discovering inconsistencies between client- and server-side input validation functions. Developers typically perform redundant input validation in both the front-end (client) and the back-end (server) components of a web application. Client- side validation is used to improve the responsiveness of the application, as it allows for responding without communicating with the server, whereas server-side validation is necessary for security reasons, as malicious users can easily circumvent client-side checks. ViewPoints (1) automatically extracts client- and server-side input validation functions, (2) models them as deterministic finite automata (DFAs), and (3) compares client- and server-side DFAs to identify and report the inconsistencies between the two sets of checks. Our initial evaluation of the technique is promising: when applied to a set of real-world web applications, ViewPoints was able to automatically identify a large number of inconsistencies in their input validation functions.
| Year | Citations | |
|---|---|---|
Page 1
Page 1