ABSTRACT
This paper introduces Dexpler, a software package which converts Dalvik bytecode to Jimple. Dexpler is built on top of Dedexer and Soot. As Jimple is Soot's main internal representation of code, the Dalvik bytecode can be manipulated with any Jimple based tool, for instance for performing point-to or flow analysis.
- B. Bellamy, P. Avgustinov, O. de Moor, and D. Sereni. Efficient local type inference. In G. E. Harris, editor, OOPSLA, pages 475--492. ACM, 2008. ISBN 978-1-60558-215-3. Google ScholarDigital Library
- Ben Gruver, et al. Smali: An assembler/disassembler for android's dex format. http://code.google.com/p/smali/, Last accessed: March 20, 2012.Google Scholar
- P. Cousot and R. Cousot. An abstract interpretation-based framework for software watermarking. ACM SIGPLAN Notices, 39(1):173--185, Jan. 2004. ISSN 0362--1340 (print), 1523-2867 (print), 1558-1160 (electronic). Google ScholarDigital Library
- M. Dahm. Byte code engineering. In Proceedings of Java-Informations-Tage (JIT'99), pages 267--277, Düsseldorf, Deutchland, Sept. 1999. ISBN 3-540-66464-5.Google ScholarCross Ref
- A. Desnos and G. Gueguen. Android: From reversing to decompilation. In Blackhat, 2011.Google Scholar
- W. Enck, D. Octeau, P. McDaniel, and S. Chaudhuri. A study of android application security. In Proceedings of the 20th USENIX Security Symposium, San Francisco, CA, aug 2011. Google ScholarDigital Library
- W. Enck, D. Octeau, P. McDaniel, and S. Chaudhuri. A study of android application security. In Proc. USENIX Security' 11, pages 21--21, Berkeley, CA, USA, 2011. Google ScholarDigital Library
- L.-Å. Fredlund. Guaranteeing correctness properties of a java card applet. Electr. Notes Theor. Comput. Sci, 113:217--233, 2005. Google ScholarDigital Library
- IBM. The T. J. Watson Libraries for Analysis (Wala). http://wala.sourceforge.net, Last accessed: March 20, 2012.Google Scholar
- Jonathan Meyer, Daniel Reynaud. Jasmin. http://jasmin.sourceforge.net.Google Scholar
- P. Lam, E. Bodden, O. Lhoták, and L. Hendren. The Soot framework for Java program analysis: a retrospective. In Cetus Users and Compiler Infastructure Workshop (CETUS 2011), Oct. 2011. URL http://www.bodden.de/pubs/lblh11soot.pdf.Google Scholar
- J. Meyer and T. Downing. Java Virtual Machine. O'Reilly, 1997. Google ScholarDigital Library
- R. Milner. A theory of type polymorphism in programming. JCSS, 17:348--375, 1978.Google ScholarCross Ref
- G. Paller. Dedexer. http://dedexer.sourceforge.net/, Last accessed: March 20, 2012.Google Scholar
- G. Paller. Dalvik opcodes. http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html, Last accessed: March 20, 2012.Google Scholar
- Panxiaobo, et al. Dex2jar: Tools to work with android .dex and java .class files. http://code.google.com/p/dex2jar/, Last accessed: March 20, 2012.Google Scholar
- M. Schnefeld. Reconstructing dalvik applications. In CONFidence, 2009.Google Scholar
- M. Sosonkin, G. Naumovich, and N. Memon. Obfuscation of design intent in object-oriented applications. In M. Yung, editor, Proceedings of the 2003 ACM workshop on Digital rights management (DRM-03), pages 142--153, New York, Oct. 27 2003. ACM Press. Google ScholarDigital Library
- J. Tiuryn. Type inference problems: A survey. In MFCS, pages 105--120, 1990. Google ScholarDigital Library
- R. Vallée-Rai, L. Hendren, V. Sundaresan, E. G. Patrick Lam, and P. Co. Soot - a java optimization framework. In Proceedings of CASCON 1999, pages 125--135, 1999.Google ScholarDigital Library
- A. Varma and S. S. Bhattacharyya. Java-through-C compilation: An enabling technology for java in embedded systems. In DATE, pages 161--167. IEEE Computer Society, 2004. ISBN 0-7695-2085-5. Google ScholarDigital Library
- E. Yahav and G. Ramalingam. Verifying safety properties using separation and heterogeneous abstractions. ACM SIGPLAN Notices, 39(6):25--34, May 2004. ISSN 0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic). Google ScholarDigital Library
- C. Zhang, D. Yan, J. Zhao, Y. Chen, and S. Yang. BPGen: an automated breakpoint generator for debugging. In J. Kramer, J. Bishop, P. T. Devanbu, and S. Uchitel, editors, ICSE (2), pages 271--274. ACM, 2010. ISBN 978-1-60558-719-6. Google ScholarDigital Library
Index Terms
- Dexpler: converting Android Dalvik bytecode to Jimple for static analysis with Soot
Recommendations
A method-based ahead-of-time compiler for android applications
CASES '11: Proceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systemsThe execution environment of Android system is based on a virtual machine called Dalvik virtual machine (DVM) in which the execution of an application program is in interpret-mode. To reduce the interpretation overhead of DVM, Google has included a ...
Retargeting Android applications to Java bytecode
FSE '12: Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software EngineeringThe Android OS has emerged as the leading platform for SmartPhone applications. However, because Android applications are compiled from Java source into platform-specific Dalvik bytecode, existing program analysis tools cannot be used to evaluate their ...
On the unsoundness of static analysis for Android GUIs
SOAP 2016: Proceedings of the 5th ACM SIGPLAN International Workshop on State Of the Art in Program AnalysisAndroid software presents exciting new challenges for the static analysis community. However, static analyses for Android are typically unsound. This is due to the lack of specification of the Android framework, the continuous evolution of framework ...
Comments