Skip to content

presto-osu/Sentinel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sentinel is a tool for sensor testing to detect leaks in Android apps described in the paper “Sentinel: Generating GUI Tests for Android Sensor Leaks” by Haowei Wu, Yan Wang, and Atanas Rountev, which appeared at the IEEE/ACM International Workshop on Automation of Software Test (AST'18) [PDF] [BibTeX]. Additional details are available in Haowei Wu's Ph.D. dissertation [PDF] [BibTeX].

Update: We have generalized Sentinel to handle leaks in Android Wear watch faces. Using the approach in the FSE'18 paper "Detection of Energy Inefficiencies in Android Wear Watch Faces" (link) as a starting point, the release now contains a new implementation of that approach using the formalisms and techniques as the orignial Sentinel work. You can find the source code here. The experimental subjects are stored elsewhere. Please follow the instructions here to run the analysis.

Prerequisites

Install

To download the Sentinel tool:

git clone https://github.com/presto-osu/Sentinel.git
cd Sentinel
curl -O https://github.com/presto-osu/Sentinel/releases/download/1.1/Apps.tar.gz
tar -xf Apps.tar.gz

To install uiautomator for Python 3:

pip3 install uiautomator

To build the tool:

cd SootAndroid
ant
cd ..

Please note Apktool version 2.3.3 is already included under SootAndroid/apktool.jar for your convenience, if you encounter any compatibility issues, please upgrade Apktool from the its project website.

After building this tool, please follow the instruction here to use this tool.

Structure

  • Apps includes the open-source apps we used in the evaluation of Sentinel in papers;
  • exportActivities.py is the preprocessing script for application apk files;
  • INSTALL.md includes the instructions to run Sentinel;
  • LICENSE includes the copyright information;
  • README.md is this file;
  • runSentinel.py is the starter script of Sentinel;
  • SootAndroid includes the implementation of Sentinel tool.

Questions

If you have any question, please contact the authors of the paper.