SlideShare a Scribd company logo
Are Free Android App Security
Analysis Tools Effective in
Detecting Known Vulnerabilities?
Venkatesh-Prasad Ranganath Joydeep Mitra
Department of Computer Science
Kansas State University, USA
34th IEEE/ACM International Conference on Automated Software Engineering (ASE
2019)
San Diego, USA
November 11-15, 2019
Context
•Mobile app security is important
•Our Goal
• Develop a methodology for designing secure apps
•Our First Step: Study vulnerabilities that plague Android apps
• We started building Ghera
•Our Second Step: Understand the current landscape of security
tools
• How well do existing tools and techniques address Android app security?
• Can we quantify the effectiveness of Android security analysis solutions?
Tool Effectiveness Evaluation Strategy
1. Select a set of Android App vulnerability benchmarks
2. Select a set of Android vulnerability detection tools
3. Measure the efficacy of each tool w.r.t the selected benchmarks
What is Ghera?
A repository of Android app vulnerability benchmarks
• Vulnerabilities were collected from various sources
• CVE, documentation, source code
• Each benchmark is demonstrably authentic
• A set of 3 apps: benign (vulnerable), malicious, and secure
• Benchmarks are spread across 7 different categories
• Crypto, ICC, Networking, Permission, Storage, System, Web
Why use Ghera benchmarks?
Validity of benchmarks
• Captured vulnerabilities can be observed by executing the benchmarks
Exploitability of vulnerabilities
• Captured vulnerabilities can be used to inflict harm
Generality of vulnerabilities
• Captured vulnerabilities do not depend on uncommon constraints, e.g.
rooted device
Representativeness of benchmarks?
Representativeness of vulnerability
benchmark
The manifestation of a vulnerability in the benchmark should be
similar to its manifestation in real-world apps.
Measuring representativeness == Compare benchmarks with
real-world apps
• Consider producers and consumers of data
• Consider APIs involved in handling and processing data
• Consider data/control flow paths
We used API usage as a metric for representativeness
• Extent to which APIs used in a benchmark are used in real-world apps
Representativeness Evaluation
Methodology
1. Collected a sample of 111K real-world apps from AndroZoo
2. Collected top 200 apps from Google Play
3. Constructed API profiles for real-world apps and top 200 apps
• XML elements and attributes used in the manifest of an app
• Android APIs used and defined (callbacks) in an app
4. Collected APIs used in Ghera
5. Determined the % of real-world apps and top 200 apps that used
an API used in Ghera benchmarks
Ghera Representativeness Results
80%, 50%
60%, 50%
90%, 50%
80%, 50%
Tool Effectiveness Evaluation Strategy
1. Select a set of Android App vulnerability benchmarks
2. Select a set of Android vulnerability detection tools
3. Measure the efficacy of each tool w.r.t the selected benchmarks
1. Started with 64 tools
2. Selected 23 of the 64 tools after shallow pass
• Is the tool well documented?
• Does the tool intend to detect vulnerabilities?
• Can the tool be used off-the-shelf or with minimal configuration?
• Is the tool freely available?
• Is the tool applicable to Ghera benchmarks?
3. Selected 14 of the 23 tools after deep pass
• Can the tool be built and setup with no or minimal effort?
• Can the tool be executed on a sample of Ghera benchmarks?
Tool selection
Selected Tools
Tool Crypto
(4)
ICC (16) Net (2) Perm
(1)
Store (6) Sys (4) Web
(9)
S/D
Amandroid 4 16 1 5 4 S
AndroBugs* 4 16 2 1 6 4 9 S
AppCritique* 4 16 2 1 6 4 9 ?
COVERT 4 16 1 1 6 4 1 S
DevKnox* 4 16 2 1 6 4 9 S
DIALDroid 4 16 1 1 6 4 1 S
FixDroid 4 3 2 1 4 4 9 S
FlowDroid 16 2 6 S
HornDroid 4 16 2 6 9 S
JAADS* 4 16 2 1 6 4 9 S
MalloDroid 4 S
Marvin-SA* 4 16 2 1 6 4 9 S
MobSF* 4 16 2 1 6 4 9 SD
QARK* 4 16 2 1 6 4 9 S
Ensuring Fair Evaluation
1. All minimal inputs required by a tool were provided
2. Every tool was evaluated against benchmarks/apps
targeting the API levels supported by the tool
3. Every tool was evaluated against the category of
vulnerabilities it was designed to detect
4. Every tool was evaluated against the vulnerabilities
that were known before the tool was released
5. Tools that depend on certain versions of Android
Studio were evaluated only against those versions
Year # Vuln.
found
# Tools
released
2011 9 0
2012 13 0
2013 20 1
2015 39 3
2016 39 4
2017 40 9
2018 42 13
Tool Effectiveness Evaluation Strategy
1. Select a set of Android App vulnerability benchmarks
2. Select a set of Android vulnerability detection tools
3. Measure the efficacy of each tool w.r.t the selected benchmarks
Results
We made 20 observations
• 4 observations based only on the tool selection strategy
• 16 observations based of verdicts from tool execution
We identified 6 open questions for future exploration
• 2 questions based only on the tool selection strategy
• 4 questions based of verdicts from tool execution
Some Observations about the Current State
Tool developers are putting effort to release robust
tools
● 16 of 23 tools were available as ready-to-use binaries
● 7 of 23 tools were built from source
● 21 tools were used with no additional configuration
● 1 tool was used with minimal configuration (DIALDroid)
● 1 tool was used with extensive configuration (CuckooDroid)
All tools combined detect 30 of the 42 vulnerabilities
captured in Ghera
No tool detects more than 15 of the 42
vulnerabilities in Ghera in isolation
Some Observations about the Current State
Some Observations about the Current State
Shallow analysis tools report more true positives and
less false positives than deep analysis tools
Non-academic tools detected more vulnerabilities
than academic tools
Some Tool Developers Specific
Observations
13 of the 14 tools were partially or not informed
about the presence/absence of vulnerabilities
(Informedness)
• Tools should consider 53 (18 security-related) APIs in the 12 undetected
vulnerabilities. These APIs are used by more than 50% of real-world
apps.
12 of the 14 tools provided verdicts that cannot be
fully trusted (Markedness)
• Tools should do better in differentiating between vulnerable apps and
secure apps as these apps often use the same set of APIs
Threats to Validity
1. Bias in tool selection
2. Mis-categorization of vulnerabilities
3. API usage is a weak measure of representativeness
Takeaways
Call for Action
Ghera benchmarks are representative of real-world apps (in terms
of API usage)
• Evaluate the representativeness of benchmarks
All evaluated tools together detected only 30 of the 42
vulnerabilities captured in Ghera; no tool detected more than 15
vulnerabilities
• Continuously and rigorously evaluate Android security analysis tools
• Use Informedness and Markedness instead of Recall and Precision
• Maintain and extend benchmark suites

More Related Content

What's hot

A "Firewall" for Bad Binaries
A "Firewall" for Bad BinariesA "Firewall" for Bad Binaries
A "Firewall" for Bad Binaries
Sonatype
 
A Comparison Study of Open Source Penetration Testing Tools
A Comparison Study of Open Source Penetration Testing ToolsA Comparison Study of Open Source Penetration Testing Tools
A Comparison Study of Open Source Penetration Testing Tools
ijtsrd
 
Taking Open Source Security to the Next Level
Taking Open Source Security to the Next LevelTaking Open Source Security to the Next Level
Taking Open Source Security to the Next Level
SBWebinars
 
The State of Open Source Vulnerabilities - A WhiteSource Webinar
The State of Open Source Vulnerabilities - A WhiteSource WebinarThe State of Open Source Vulnerabilities - A WhiteSource Webinar
The State of Open Source Vulnerabilities - A WhiteSource Webinar
WhiteSource
 
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения..."Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
Yandex
 
Mobile App Test Attacks to Efficiently Explore Software
Mobile App Test Attacks to Efficiently Explore SoftwareMobile App Test Attacks to Efficiently Explore Software
Mobile App Test Attacks to Efficiently Explore Software
TEST Huddle
 
Accelerating Innovation with Software Supply Chain Management
Accelerating Innovation with Software Supply Chain ManagementAccelerating Innovation with Software Supply Chain Management
Accelerating Innovation with Software Supply Chain Management
Sonatype
 
Exploratory testing and the mobile tester : A presentation by Jon Hagar
Exploratory testing and the mobile tester : A presentation by Jon HagarExploratory testing and the mobile tester : A presentation by Jon Hagar
Exploratory testing and the mobile tester : A presentation by Jon Hagar
Gallop Solutions
 
Rx for FDA Software Compliance
Rx for FDA Software ComplianceRx for FDA Software Compliance
Rx for FDA Software Compliance
Parasoft
 
Engineering Security Vulnerability Prevention, Detection, and Response
Engineering Security Vulnerability Prevention, Detection, and ResponseEngineering Security Vulnerability Prevention, Detection, and Response
Engineering Security Vulnerability Prevention, Detection, and Response
Jinnah University for Women
 
The State of Open Source Vulnerabilities Management
The State of Open Source Vulnerabilities ManagementThe State of Open Source Vulnerabilities Management
The State of Open Source Vulnerabilities Management
SBWebinars
 
Compliance in the 2016 Future of Open Source
Compliance in the 2016 Future of Open SourceCompliance in the 2016 Future of Open Source
Compliance in the 2016 Future of Open Source
Black Duck by Synopsys
 
Supply Chain Solutions for Modern Software Development
Supply Chain Solutions for Modern Software DevelopmentSupply Chain Solutions for Modern Software Development
Supply Chain Solutions for Modern Software Development
Sonatype
 
Semi-Automated Security Testing of Web applications
Semi-Automated Security Testing of Web applicationsSemi-Automated Security Testing of Web applications
Semi-Automated Security Testing of Web applications
Ram G Athreya
 
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
GRUC
 
TriggerScope: Towards Detecting Logic Bombs in Android Applications
TriggerScope: Towards Detecting Logic Bombs in Android ApplicationsTriggerScope: Towards Detecting Logic Bombs in Android Applications
TriggerScope: Towards Detecting Logic Bombs in Android Applications
Pietro De Nicolao
 
PCI and Vulnerability Assessments - What’s Missing?
PCI and Vulnerability Assessments - What’s Missing?PCI and Vulnerability Assessments - What’s Missing?
PCI and Vulnerability Assessments - What’s Missing?
Black Duck by Synopsys
 
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
WhiteSource
 

What's hot (19)

A "Firewall" for Bad Binaries
A "Firewall" for Bad BinariesA "Firewall" for Bad Binaries
A "Firewall" for Bad Binaries
 
A Comparison Study of Open Source Penetration Testing Tools
A Comparison Study of Open Source Penetration Testing ToolsA Comparison Study of Open Source Penetration Testing Tools
A Comparison Study of Open Source Penetration Testing Tools
 
Taking Open Source Security to the Next Level
Taking Open Source Security to the Next LevelTaking Open Source Security to the Next Level
Taking Open Source Security to the Next Level
 
The State of Open Source Vulnerabilities - A WhiteSource Webinar
The State of Open Source Vulnerabilities - A WhiteSource WebinarThe State of Open Source Vulnerabilities - A WhiteSource Webinar
The State of Open Source Vulnerabilities - A WhiteSource Webinar
 
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения..."Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
"Быстрое обнаружение вредоносного ПО для Android с помощью машинного обучения...
 
Mobile App Test Attacks to Efficiently Explore Software
Mobile App Test Attacks to Efficiently Explore SoftwareMobile App Test Attacks to Efficiently Explore Software
Mobile App Test Attacks to Efficiently Explore Software
 
Accelerating Innovation with Software Supply Chain Management
Accelerating Innovation with Software Supply Chain ManagementAccelerating Innovation with Software Supply Chain Management
Accelerating Innovation with Software Supply Chain Management
 
Exploratory testing and the mobile tester : A presentation by Jon Hagar
Exploratory testing and the mobile tester : A presentation by Jon HagarExploratory testing and the mobile tester : A presentation by Jon Hagar
Exploratory testing and the mobile tester : A presentation by Jon Hagar
 
Rx for FDA Software Compliance
Rx for FDA Software ComplianceRx for FDA Software Compliance
Rx for FDA Software Compliance
 
Engineering Security Vulnerability Prevention, Detection, and Response
Engineering Security Vulnerability Prevention, Detection, and ResponseEngineering Security Vulnerability Prevention, Detection, and Response
Engineering Security Vulnerability Prevention, Detection, and Response
 
The State of Open Source Vulnerabilities Management
The State of Open Source Vulnerabilities ManagementThe State of Open Source Vulnerabilities Management
The State of Open Source Vulnerabilities Management
 
Compliance in the 2016 Future of Open Source
Compliance in the 2016 Future of Open SourceCompliance in the 2016 Future of Open Source
Compliance in the 2016 Future of Open Source
 
Presentation
PresentationPresentation
Presentation
 
Supply Chain Solutions for Modern Software Development
Supply Chain Solutions for Modern Software DevelopmentSupply Chain Solutions for Modern Software Development
Supply Chain Solutions for Modern Software Development
 
Semi-Automated Security Testing of Web applications
Semi-Automated Security Testing of Web applicationsSemi-Automated Security Testing of Web applications
Semi-Automated Security Testing of Web applications
 
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
Webcast Presentation: Accelerate Continuous Delivery with Development Testing...
 
TriggerScope: Towards Detecting Logic Bombs in Android Applications
TriggerScope: Towards Detecting Logic Bombs in Android ApplicationsTriggerScope: Towards Detecting Logic Bombs in Android Applications
TriggerScope: Towards Detecting Logic Bombs in Android Applications
 
PCI and Vulnerability Assessments - What’s Missing?
PCI and Vulnerability Assessments - What’s Missing?PCI and Vulnerability Assessments - What’s Missing?
PCI and Vulnerability Assessments - What’s Missing?
 
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
5 Things Every CISO Needs To Know About Open Source Security - A WhiteSource ...
 

Similar to Are free Android app security analysis tools effective in detecting known vulnerabilities?

ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONSANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
IJNSA Journal
 
Malware Detection in Android Applications
Malware Detection in Android ApplicationsMalware Detection in Android Applications
Malware Detection in Android Applications
ijtsrd
 
COVERT app
COVERT appCOVERT app
COVERT app
itba9
 
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
Mahmoud Hammad
 
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Kevin Moran
 
Understanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App DevelopersUnderstanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App Developers
Pavneet Singh Kochhar
 
Generating summary risk scores for mobile applications
Generating summary risk scores for mobile applicationsGenerating summary risk scores for mobile applications
Generating summary risk scores for mobile applicationsJPINFOTECH JAYAPRAKASH
 
Slide Intervento Zanero Giornata del Perito 2015
Slide Intervento Zanero Giornata del Perito 2015Slide Intervento Zanero Giornata del Perito 2015
Slide Intervento Zanero Giornata del Perito 2015
LegolasTheElf
 
IRJET- Android Malware Detection System
IRJET-  	  Android Malware Detection SystemIRJET-  	  Android Malware Detection System
IRJET- Android Malware Detection System
IRJET Journal
 
IRJET- Android Malware Detection using Deep Learning
IRJET- Android Malware Detection using Deep LearningIRJET- Android Malware Detection using Deep Learning
IRJET- Android Malware Detection using Deep Learning
IRJET Journal
 
Avtest 2012 02-android_anti-malware_report_english
Avtest 2012 02-android_anti-malware_report_englishAvtest 2012 02-android_anti-malware_report_english
Avtest 2012 02-android_anti-malware_report_englishAnatoliy Tkachev
 
Generating Risk Summary Risk Scores For Mobile Applications
Generating Risk Summary Risk Scores For Mobile ApplicationsGenerating Risk Summary Risk Scores For Mobile Applications
Generating Risk Summary Risk Scores For Mobile Applications
Papitha Velumani
 
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
Anti-tampering in Android and Take Look at Google SafetyNet Attestation APIAnti-tampering in Android and Take Look at Google SafetyNet Attestation API
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
Arash Ramez
 
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROIDMACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
IRJET Journal
 
Android Malware Detection
Android Malware DetectionAndroid Malware Detection
Android Malware Detection
IRJET Journal
 
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
Agile Testing Alliance
 
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN ITWHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
TekRevol LLC
 
8 Best Automated Android App Testing Tools and Framework in 2024.pdf
8 Best Automated Android App Testing Tools and Framework in 2024.pdf8 Best Automated Android App Testing Tools and Framework in 2024.pdf
8 Best Automated Android App Testing Tools and Framework in 2024.pdf
kalichargn70th171
 
Malware Bytes – Advanced Fault Analysis
Malware Bytes – Advanced Fault AnalysisMalware Bytes – Advanced Fault Analysis
Malware Bytes – Advanced Fault Analysis
IRJET Journal
 
Shifting the conversation from active interception to proactive neutralization
Shifting the conversation from active interception to proactive neutralization Shifting the conversation from active interception to proactive neutralization
Shifting the conversation from active interception to proactive neutralization
Rogue Wave Software
 

Similar to Are free Android app security analysis tools effective in detecting known vulnerabilities? (20)

ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONSANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
ANDROINSPECTOR: A SYSTEM FOR COMPREHENSIVE ANALYSIS OF ANDROID APPLICATIONS
 
Malware Detection in Android Applications
Malware Detection in Android ApplicationsMalware Detection in Android Applications
Malware Detection in Android Applications
 
COVERT app
COVERT appCOVERT app
COVERT app
 
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
A Large-Scale Empirical Study on the Effects of Code Obfuscations on Android ...
 
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
 
Understanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App DevelopersUnderstanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App Developers
 
Generating summary risk scores for mobile applications
Generating summary risk scores for mobile applicationsGenerating summary risk scores for mobile applications
Generating summary risk scores for mobile applications
 
Slide Intervento Zanero Giornata del Perito 2015
Slide Intervento Zanero Giornata del Perito 2015Slide Intervento Zanero Giornata del Perito 2015
Slide Intervento Zanero Giornata del Perito 2015
 
IRJET- Android Malware Detection System
IRJET-  	  Android Malware Detection SystemIRJET-  	  Android Malware Detection System
IRJET- Android Malware Detection System
 
IRJET- Android Malware Detection using Deep Learning
IRJET- Android Malware Detection using Deep LearningIRJET- Android Malware Detection using Deep Learning
IRJET- Android Malware Detection using Deep Learning
 
Avtest 2012 02-android_anti-malware_report_english
Avtest 2012 02-android_anti-malware_report_englishAvtest 2012 02-android_anti-malware_report_english
Avtest 2012 02-android_anti-malware_report_english
 
Generating Risk Summary Risk Scores For Mobile Applications
Generating Risk Summary Risk Scores For Mobile ApplicationsGenerating Risk Summary Risk Scores For Mobile Applications
Generating Risk Summary Risk Scores For Mobile Applications
 
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
Anti-tampering in Android and Take Look at Google SafetyNet Attestation APIAnti-tampering in Android and Take Look at Google SafetyNet Attestation API
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
 
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROIDMACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
MACHINE LEARNING APPROACH TO LEARN AND DETECT MALWARE IN ANDROID
 
Android Malware Detection
Android Malware DetectionAndroid Malware Detection
Android Malware Detection
 
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
 
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN ITWHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
WHAT IS APP SECURITY – THE COMPLETE PROCESS AND THE TOOLS & TESTS TO RUN IT
 
8 Best Automated Android App Testing Tools and Framework in 2024.pdf
8 Best Automated Android App Testing Tools and Framework in 2024.pdf8 Best Automated Android App Testing Tools and Framework in 2024.pdf
8 Best Automated Android App Testing Tools and Framework in 2024.pdf
 
Malware Bytes – Advanced Fault Analysis
Malware Bytes – Advanced Fault AnalysisMalware Bytes – Advanced Fault Analysis
Malware Bytes – Advanced Fault Analysis
 
Shifting the conversation from active interception to proactive neutralization
Shifting the conversation from active interception to proactive neutralization Shifting the conversation from active interception to proactive neutralization
Shifting the conversation from active interception to proactive neutralization
 

More from Venkatesh Prasad Ranganath

SeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android AppsSeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android Apps
Venkatesh Prasad Ranganath
 
Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?
Venkatesh Prasad Ranganath
 
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
Compatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace ComparisonCompatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace Comparison
Venkatesh Prasad Ranganath
 
My flings with data analysis
My flings with data analysisMy flings with data analysis
My flings with data analysis
Venkatesh Prasad Ranganath
 
Data analytics, a (short) tour
Data analytics, a (short) tourData analytics, a (short) tour
Data analytics, a (short) tour
Venkatesh Prasad Ranganath
 
R language, an introduction
R language, an introductionR language, an introduction
R language, an introduction
Venkatesh Prasad Ranganath
 
Pattern-based Features
Pattern-based FeaturesPattern-based Features
Pattern-based Features
Venkatesh Prasad Ranganath
 

More from Venkatesh Prasad Ranganath (16)

SeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android AppsSeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android Apps
 
Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?
 
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
 
Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)
 
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
 
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
 
Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)
 
Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)
 
Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
 
Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)
 
Compatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace ComparisonCompatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace Comparison
 
My flings with data analysis
My flings with data analysisMy flings with data analysis
My flings with data analysis
 
Data analytics, a (short) tour
Data analytics, a (short) tourData analytics, a (short) tour
Data analytics, a (short) tour
 
R language, an introduction
R language, an introductionR language, an introduction
R language, an introduction
 
Pattern-based Features
Pattern-based FeaturesPattern-based Features
Pattern-based Features
 

Recently uploaded

GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
e20449
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 

Recently uploaded (20)

GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 

Are free Android app security analysis tools effective in detecting known vulnerabilities?

  • 1. Are Free Android App Security Analysis Tools Effective in Detecting Known Vulnerabilities? Venkatesh-Prasad Ranganath Joydeep Mitra Department of Computer Science Kansas State University, USA 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019) San Diego, USA November 11-15, 2019
  • 2. Context •Mobile app security is important •Our Goal • Develop a methodology for designing secure apps •Our First Step: Study vulnerabilities that plague Android apps • We started building Ghera •Our Second Step: Understand the current landscape of security tools • How well do existing tools and techniques address Android app security? • Can we quantify the effectiveness of Android security analysis solutions?
  • 3. Tool Effectiveness Evaluation Strategy 1. Select a set of Android App vulnerability benchmarks 2. Select a set of Android vulnerability detection tools 3. Measure the efficacy of each tool w.r.t the selected benchmarks
  • 4. What is Ghera? A repository of Android app vulnerability benchmarks • Vulnerabilities were collected from various sources • CVE, documentation, source code • Each benchmark is demonstrably authentic • A set of 3 apps: benign (vulnerable), malicious, and secure • Benchmarks are spread across 7 different categories • Crypto, ICC, Networking, Permission, Storage, System, Web
  • 5. Why use Ghera benchmarks? Validity of benchmarks • Captured vulnerabilities can be observed by executing the benchmarks Exploitability of vulnerabilities • Captured vulnerabilities can be used to inflict harm Generality of vulnerabilities • Captured vulnerabilities do not depend on uncommon constraints, e.g. rooted device Representativeness of benchmarks?
  • 6. Representativeness of vulnerability benchmark The manifestation of a vulnerability in the benchmark should be similar to its manifestation in real-world apps. Measuring representativeness == Compare benchmarks with real-world apps • Consider producers and consumers of data • Consider APIs involved in handling and processing data • Consider data/control flow paths We used API usage as a metric for representativeness • Extent to which APIs used in a benchmark are used in real-world apps
  • 7. Representativeness Evaluation Methodology 1. Collected a sample of 111K real-world apps from AndroZoo 2. Collected top 200 apps from Google Play 3. Constructed API profiles for real-world apps and top 200 apps • XML elements and attributes used in the manifest of an app • Android APIs used and defined (callbacks) in an app 4. Collected APIs used in Ghera 5. Determined the % of real-world apps and top 200 apps that used an API used in Ghera benchmarks
  • 8. Ghera Representativeness Results 80%, 50% 60%, 50% 90%, 50% 80%, 50%
  • 9. Tool Effectiveness Evaluation Strategy 1. Select a set of Android App vulnerability benchmarks 2. Select a set of Android vulnerability detection tools 3. Measure the efficacy of each tool w.r.t the selected benchmarks
  • 10. 1. Started with 64 tools 2. Selected 23 of the 64 tools after shallow pass • Is the tool well documented? • Does the tool intend to detect vulnerabilities? • Can the tool be used off-the-shelf or with minimal configuration? • Is the tool freely available? • Is the tool applicable to Ghera benchmarks? 3. Selected 14 of the 23 tools after deep pass • Can the tool be built and setup with no or minimal effort? • Can the tool be executed on a sample of Ghera benchmarks? Tool selection
  • 11. Selected Tools Tool Crypto (4) ICC (16) Net (2) Perm (1) Store (6) Sys (4) Web (9) S/D Amandroid 4 16 1 5 4 S AndroBugs* 4 16 2 1 6 4 9 S AppCritique* 4 16 2 1 6 4 9 ? COVERT 4 16 1 1 6 4 1 S DevKnox* 4 16 2 1 6 4 9 S DIALDroid 4 16 1 1 6 4 1 S FixDroid 4 3 2 1 4 4 9 S FlowDroid 16 2 6 S HornDroid 4 16 2 6 9 S JAADS* 4 16 2 1 6 4 9 S MalloDroid 4 S Marvin-SA* 4 16 2 1 6 4 9 S MobSF* 4 16 2 1 6 4 9 SD QARK* 4 16 2 1 6 4 9 S
  • 12. Ensuring Fair Evaluation 1. All minimal inputs required by a tool were provided 2. Every tool was evaluated against benchmarks/apps targeting the API levels supported by the tool 3. Every tool was evaluated against the category of vulnerabilities it was designed to detect 4. Every tool was evaluated against the vulnerabilities that were known before the tool was released 5. Tools that depend on certain versions of Android Studio were evaluated only against those versions Year # Vuln. found # Tools released 2011 9 0 2012 13 0 2013 20 1 2015 39 3 2016 39 4 2017 40 9 2018 42 13
  • 13. Tool Effectiveness Evaluation Strategy 1. Select a set of Android App vulnerability benchmarks 2. Select a set of Android vulnerability detection tools 3. Measure the efficacy of each tool w.r.t the selected benchmarks
  • 14. Results We made 20 observations • 4 observations based only on the tool selection strategy • 16 observations based of verdicts from tool execution We identified 6 open questions for future exploration • 2 questions based only on the tool selection strategy • 4 questions based of verdicts from tool execution
  • 15. Some Observations about the Current State Tool developers are putting effort to release robust tools ● 16 of 23 tools were available as ready-to-use binaries ● 7 of 23 tools were built from source ● 21 tools were used with no additional configuration ● 1 tool was used with minimal configuration (DIALDroid) ● 1 tool was used with extensive configuration (CuckooDroid)
  • 16. All tools combined detect 30 of the 42 vulnerabilities captured in Ghera No tool detects more than 15 of the 42 vulnerabilities in Ghera in isolation Some Observations about the Current State
  • 17. Some Observations about the Current State Shallow analysis tools report more true positives and less false positives than deep analysis tools Non-academic tools detected more vulnerabilities than academic tools
  • 18. Some Tool Developers Specific Observations 13 of the 14 tools were partially or not informed about the presence/absence of vulnerabilities (Informedness) • Tools should consider 53 (18 security-related) APIs in the 12 undetected vulnerabilities. These APIs are used by more than 50% of real-world apps. 12 of the 14 tools provided verdicts that cannot be fully trusted (Markedness) • Tools should do better in differentiating between vulnerable apps and secure apps as these apps often use the same set of APIs
  • 19. Threats to Validity 1. Bias in tool selection 2. Mis-categorization of vulnerabilities 3. API usage is a weak measure of representativeness
  • 20. Takeaways Call for Action Ghera benchmarks are representative of real-world apps (in terms of API usage) • Evaluate the representativeness of benchmarks All evaluated tools together detected only 30 of the 42 vulnerabilities captured in Ghera; no tool detected more than 15 vulnerabilities • Continuously and rigorously evaluate Android security analysis tools • Use Informedness and Markedness instead of Recall and Precision • Maintain and extend benchmark suites