Skip to content

FireElementalNE/wtg-research

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Android Window Transition Graphs

This program is attempting to create Android Window transition graphs for
the static analyzer DroidInfer.

Running

run.sh runs the framework. It assumes that all required jars are
in a folder named 'classpath_includes' in the root (the same directory as this file).
An example classpath_includes folder is shown below:

|-- android-4.3.jar
|-- android-all.jar
|-- cfl.jar
|-- cgs.jar
|-- jdk-android.jar
|-- jre
|   `-- lib
|       |-- alt-rt.jar
|       |-- charsets.jar
|       |-- deploy.jar
|       |-- ext
|       |   |-- dnsns.jar
|       |   |-- localedata.jar
|       |   |-- sunec.jar
|       |   |-- sunjce_provider.jar
|       |   |-- sunpkcs11.jar
|       |   `-- zipfs.jar
|       |-- javaws.jar
|       |-- jce.jar
|       |-- jfr.jar
|       |-- jfxrt.jar
|       |-- jsse.jar
|       |-- management-agent.jar
|       |-- plugin.jar
|       |-- resources.jar
|       |-- rt.jar
|       `-- security
|           |-- local_policy.jar
|           `-- US_export_policy.jar
|-- libs
|   |-- core.jar
|   |-- framework2.jar
|   |-- framework3.jar
|   `-- framework.jar
|-- soot-develop.jar
`-- soot-trunk.jar

5 directories, 31 files

This was created by running:

tree -S -P "*.jar" --charset=ascii --prune -n

run.sh has the following usage:

bash $ ./run.sh -h
Usage: ./run.sh [-v] [-t <ANDROID APK>] [-m <MEMORY>] [-c] [-X] [-h]
	-h print this help message and exit
	-v shows soot's (very) verbose output
	-t <ANDROID APK> sets the target apk
	-m <MEMORY> sets the max java memory (-Xmx)
	-X skip running apktool
	-c clean up dirs

Requirements

  • Java JDK (you need javac)
  • All of the classes that will be analyzed (anything not explicitly given
    will be treated as a phantom-ref!)
  • Graphviz (this is available for most Linux distributions)
  • APK tool

Notes

  • The original WTG paper can be found here.
  • JavaDoc for soot can be found in docs/src

Releases

No releases published

Packages

No packages published