Uncovering access control weaknesses and flaws with security-discordant software clones

  • Authors:
  • François Gauthier;Thierry Lavoie;Ettore Merlo

  • Affiliations:
  • Polytechnique Montréal, Montréal, Canada;Polytechnique Montréal, Montréal, Canada;Polytechnique Montréal, Montréal, Canada

  • Venue:
  • Proceedings of the 29th Annual Computer Security Applications Conference
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software clone detection techniques identify fragments of code that share some level of syntactic similarity. In this study, we investigate security-sensitive clone clusters: clusters of syntactically similar fragments of code that are protected by some privileges. From a security perspective, security-sensitive clone clusters can help reason about the implemented security model: given syntactically similar fragments of code, it is expected that they are protected by similar privileges. We hypothesize that clones that violate this assumption, defined as security-discordant clones, are likely to reveal weaknesses and flaws in access control models. In order to characterize security-discordant clones, we investigated two of the largest and most popular open-source PHP applications: Joomla! and Moodle, with sizes ranging from hundred thousands to more than a million lines of code. Investigation of security-discordant clone clusters in these systems revealed several previously undocumented, recurring, and application-independent security weaknesses. Moreover, security-discordant clones also revealed four, previously unreported, security flaws. Results also show how these flaws were revealed through the investigation of as little as 2% of the code base. Distribution of weaknesses and flaws between the two systems is investigated and discussed. Potential extensions to this exploratory work are also presented.