
NSF Org: |
CNS Division Of Computer and Network Systems |
Recipient: |
|
Initial Amendment Date: | August 30, 2018 |
Latest Amendment Date: | August 30, 2018 |
Award Number: | 1815336 |
Award Instrument: | Standard Grant |
Program Manager: |
Sol Greenspan
CNS Division Of Computer and Network Systems CSE Directorate for Computer and Information Science and Engineering |
Start Date: | September 1, 2018 |
End Date: | August 31, 2023 (Estimated) |
Total Intended Award Amount: | $500,000.00 |
Total Awarded Amount to Date: | $500,000.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
1314 S MOUNT VERNON AVE WILLIAMSBURG VA US 23185 (757)221-3965 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
251 Jamestown Rd Williamsburg VA US 23187-8795 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): | Secure &Trustworthy Cyberspace |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
Mobile devices have become the fabric of our current consumer computing landscape, driven by the diverse "apps" they support, which allow users to carry out complex computing tasks. These devices and apps have become deeply personal, and as such have access to privacy-sensitive resources and information. To prevent misuse of this access, it is imperative to understand the challenges in securing mobile apps, and in effect, the true capabilities of current approaches for security analysis. The first line of defense against malicious applications are tools that analyze applications to detect security vulnerabilities or malicious behavior, ideally before apps are published to application markets. It is important for such tools to be "sound", i.e., to detect all instances of bad behavior in the application being analyzed. Prior work has indicated that such tools may often sacrifice soundness for practical reasons (e.g., for a reasonable analysis time), leading to tools that are soundy (i.e., mostly sound, but with some unsound assumptions). However, the effectiveness of these security-focused program analysis techniques is not well understood, as the unsound assumptions may not be known beyond a small community of experts, leading to a false sense of security among the users of such tools. This research develops a framework for systematically evaluating existing security techniques to uncover previously unknown unsound assumptions. The methodology developed in the course of this research has the potential for a large economic and societal impact, as improving security tools improves the vetting of mobile applications and prevents or mitigates the loss or theft of private information. Moreover, while the far-reaching impact of this work will be in increasing reliability of applications for end users, more immediate impact can be seen in educational activities. That is, this project incorporates into software engineering and security courses the best-practices for secure mobile application development, and novel security evaluation techniques developed via this project, while disseminating awareness regarding the dangers of unsound analyses to the broader research community.
This research project develops a new methodology for assessing security-focused static analysis tools for Android, by adopting the principles of mutation analysis from the field of functional software testing to systematically identify unsound assumptions. This methodology consists of three major components: (1) empirical derivation of specifications for security-focused mutation operators (i.e., security operators) through the examination of claims by security analysis tools, security bugs in open source apps, and malware samples; (2) the instantiation and seeding operators in the context of the security technique being evaluated using context-specific mutation schemes; and (3) expansion of the sound core of static program analysis tools for Android by running static analysis tools on mutants and detecting and addressing vulnerabilities. This research project cuts across the complementary disciplines of computer security and software engineering and tackles several open research questions that are currently unaddressed in both disciplines. More specifically, this project builds upon the theoretical underpinnings of mutation analysis, which aims at evaluating the efficacy of functional software tests and instantiates them in a security-focused context.
This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
Mobile devices have become the fabric of our current consumer computing landscape, driven by the diverse “apps” they support, which allow users to carry out complex computing tasks. These devices and apps have become deeply personal, and as such have access to privacy-sensitive resources and information. To prevent misuse of this access, it is imperative to understand the challenges in securing mobile apps, and in effect, the true capabilities of current approaches for security analysis. The first line of defense against malicious applications are tools that analyze applications to detect security vulnerabilities or malicious behavior, ideally before apps are published to application markets. It is important for such tools to be as “sound” as possible, i.e., to detect all instances of bad behavior in the application being analyzed. Prior work has indicated that such tools may often sacrifice soundness for practical reasons (e.g., for a reasonable analysis time), leading to tools that are soundy (i.e., mostly sound, but with some unsound assumptions). However, the effectiveness of these security-focused program analysis techniques is not well understood, as the unsound assumptions may not be known beyond a small community of experts, leading to a false sense of security among the users of such tools.
This project has developed a framework for systematically evaluating existing security techniques to uncover previously unknown unsound assumptions. This developed methodology consists of three major components: (1) empirical derivation of specifications for security-focused mutation operators (i.e., security operators) through the examination of claims by security analysis tools, security bugs in open source apps, and malware samples; (2) the instantiation and seeding operators in the context of the security technique being evaluated using context-specific mutation schemes; and (3) expansion of the sound core of static program analysis tools for Android by running static analysis tools on mutants and detecting and addressing vulnerabilities. The methodology that we developed during this research project has already led to significant improvements in existing security tools. The resulting work has been published in several high-quality security and software engineering conferences and journals (some gaining best paper recognition). Several undergraduate and graduate students were trained and became contributing members on this project. Several of these students co-authored and presented papers at international conferences. Multiple graduate-level theses were derived from this project. The students graduating from this program have secured full-time employment in academia and software industry. The gained scientific knowledge was integrated in multiple undergraduate and graduate classes at the host institution, which broadens STEM education. Several open-source software tools and datasets were developed and made publicly available. The data repositories resulting from this project are made accessible to the scientific community and public through the PIs’ web sites. The project enhanced and strengthened a long-term professional collaboration not only between the PIs and their students, but also multiple collaborators involved. The computing infrastructure established during the project permits the sustainability of its resources.
Last Modified: 12/01/2023
Modified by: Adwait Nadkarni
Please report errors in award information by writing to: awardsearch@nsf.gov.