InspectJS: Leveraging Code Similarity and User-Feedback for Effective Taint Specification Inference for JavaScript

Authors

  • Saikat Dutta Universidad de Buenos Aires, Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Argentina
  • Diego Garbervetsky Universidad de Illinois, Estados Unidos
  • Shuvendu Lahiri Microsoft Research
  • Max Schafer GitHub, Inglaterra

Keywords:

Taint Analysis, Machine Learning, JavaScript

Abstract

Static analysis has established itself as a weapon of choice for detecting security vulnerabilities. Taint analysis in particular is a very general and powerful technique, where security policies are expressed in terms of forbidden flows, either from untrusted input sources to sensitive sinks (in integrity policies) or from sensitive sources to untrusted sinks (in confidentiality policies). The appeal of this approach is that the tainttracking mechanism has to be implemented only once, and can then be parameterized with different taint specifications (that is, sets of sources and sinks, as well as any sanitizers that render otherwise problematic flows innocuous) to detect many different kinds of vulnerabilities.

Downloads

Downloads

Published

2022-12-15

Issue

Section

ASSE - Argentine Symposium on Software Engineering