ReactAppScan: Mining React Application Vulnerabilities via Component Graph


연구 분야: Strategies



학회: CCS '24: Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security


초록

React, a single-page application framework, has recently become popular among web developers due to its flexible and convenient management of web application states via a syntax extension to JavaScript, called JSX (JavaScript and XML). Despite its abundant functionalities, the security of React, especially vulnerability detection, still lags: many existing vulnerability detection works do not support JSX let alone React Data Flow introduced by React components. The only exception is CodeQL, which supports JSX syntax. However, CodeQL cannot properly track React Data Flow across different components for detecting vulnerabilities. In this paper, we design a novel framework, called ReactAppScan, which constructs a Component Graph (CoG) for tracking React Data Flow and detecting vulnerabilities following both JavaScript and React data flows. Specifically, ReactAppScan relies on abstract interpretation to build such a component graph via tracking component lifecycles and then detects vulnerabilities via finding paths between sources and sinks. Our evaluation shows that ReactAppScan detects 61 zero-day vulnerabilities in real-world React applications. We have responsibly reported all the vulnerabilities and so far six vulnerabilities have been fixed and two have been acknowledged.


Author Profile
Yinzhi Cao

Johns Hopkins University Baltimore MD USA

Moldova
Author Profile
Zhiyong Guo

Johns Hopkins University Baltimore MD USA

Moldova
Author Profile
Mingqing Kang

Johns Hopkins University Baltimore MD USA

Moldova

📄 논문 정보

발행 연도 2024년
인용수 1
출판 국가 Moldova, Israel, United States
사이트 ACM
좋아요 수 0

연관 논문 목록 (107건)