Boosting the Performance of Alias-Aware IFDS Analysis with CFL-Based Environment Transformers

The IFDS algorithm is pivotal in solving field-sensitive data-flow problems. However, its conventional use of access paths for field sensitivity leads to the generation of a large number of data-flow facts. This causes scalability challenges in larger programs, limiting its practical application in extensive codebases. In response, we propose a new field-sensitive technique that reinterprets the generation of access paths as a Context-Free Language (CFL) for field-sensitivity and formulates it as an IDE problem. This approach significantly reduces the number of data-flow facts generated and handled during the analysis, which is a major factor in performance degradation. To demonstrate the effectiveness of this approach, we developed a taint analysis tool, IDEDroid, in the IFDS/IDE framework. IDEDroid outperforms FlowDroid, an established IFDS-based taint analysis tool, in the analysis of 24 major Android apps while improving its precision (guaranteed theoretically). The speed improvement ranges from <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>2.1</mml:mn> <mml:mo>×</mml:mo> </mml:math> to <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>2,368.4</mml:mn> <mml:mo>×</mml:mo> </mml:math> , averaging at <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>222.0</mml:mn> <mml:mo>×</mml:mo> </mml:math> , with precision gains reaching up to <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>20.0</mml:mn> <mml:mo>%</mml:mo> </mml:math> (in terms of false positives reduced). This performance indicates that IDEDroid is substantially more effective in detecting information-flow leaks, making it a potentially superior tool for mobile app vetting in the market.

Authors

Institutions

Publication Details

Journal
Proceedings of the ACM on Programming Languages
Published
2024-10-08
DOI
https://doi.org/10.1145/3689804
Citations
3
Primary Topic
Advanced Malware Detection Techniques
Type
article
Field-Weighted Citation Impact
1.05
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Boosting the Performance of Alias-Aware IFDS Analysis with CFL-Based Environment Transformers

Jingling Xue, Haofeng Li, Jie Lu, Chenghang Shi et al.
3 citations
Proceedings of the ACM on Programming Languages
Advanced Malware Detection Techniques
1.05
article

Boosting the Performance of Alias-Aware IFDS Analysis with CFL-Based Environment Transformers

Jingling Xue, Haofeng Li, Jie Lu, Chenghang Shi, Lian Li
article en
3 citations

Abstract

The IFDS algorithm is pivotal in solving field-sensitive data-flow problems. However, its conventional use of access paths for field sensitivity leads to the generation of a large number of data-flow facts. This causes scalability challenges in larger programs, limiting its practical application in extensive codebases. In response, we propose a new field-sensitive technique that reinterprets the generation of access paths as a Context-Free Language (CFL) for field-sensitivity and formulates it as an IDE problem. This approach significantly reduces the number of data-flow facts generated and handled during the analysis, which is a major factor in performance degradation. To demonstrate the effectiveness of this approach, we developed a taint analysis tool, IDEDroid, in the IFDS/IDE framework. IDEDroid outperforms FlowDroid, an established IFDS-based taint analysis tool, in the analysis of 24 major Android apps while improving its precision (guaranteed theoretically). The speed improvement ranges from <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>2.1</mml:mn> <mml:mo>×</mml:mo> </mml:math> to <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>2,368.4</mml:mn> <mml:mo>×</mml:mo> </mml:math> , averaging at <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>222.0</mml:mn> <mml:mo>×</mml:mo> </mml:math> , with precision gains reaching up to <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mn>20.0</mml:mn> <mml:mo>%</mml:mo> </mml:math> (in terms of false positives reduced). This performance indicates that IDEDroid is substantially more effective in detecting information-flow leaks, making it a potentially superior tool for mobile app vetting in the market.

Proceedings of the ACM on Programming LanguagesVol. 8(OOPSLA2)
UNSW Sydney (AU), Institute of Computing Technology (CN), University of Chinese Academy of Sciences (CN)
Openalex Percentile: Top 23%
Advanced Malware Detection Techniques
1.05
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.