skip to main content
10.1145/2810103.2813650acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article
Best Paper

GUITAR: Piecing Together Android App GUIs from Memory Images

Published:12 October 2015Publication History

ABSTRACT

An Android app's graphical user interface (GUI) displays rich semantic and contextual information about the smartphone's owner and app's execution. Such information provides vital clues to the investigation of crimes in both cyber and physical spaces. In real-world digital forensics however, once an electronic device becomes evidence most manual interactions with it are prohibited by criminal investigation protocols. Hence investigators must resort to "image-and-analyze" memory forensics (instead of browsing through the subject phone) to recover the apps' GUIs. Unfortunately, GUI reconstruction is still largely impossible with state-of-the-art memory forensics techniques, which tend to focus only on individual in-memory data structures. An Android GUI, however, displays diverse visual elements each built from numerous data structure instances. Furthermore, whenever an app is sent to the background, its GUI structure will be explicitly deallocated and disintegrated by the Android framework. In this paper, we present GUITAR, an app-independent technique which automatically reassembles and redraws all apps' GUIs from the multitude of GUI data elements found in a smartphone's memory image. To do so, GUITAR involves the reconstruction of (1) GUI tree topology, (2) drawing operation mapping, and (3) runtime environment for redrawing. Our evaluation shows that GUITAR is highly accurate (80-95% similar to original screenshots) at reconstructing GUIs from memory images taken from a variety of Android apps on popular phones. Moreover, GUITAR is robust in reconstructing meaningful GUIs even when facing GUI data loss.

References

  1. 7 American Law Reports. 4th, 8, 2b.Google ScholarGoogle Scholar
  2. Pearl Brewing Co. v. Jos. Schlitz Brewing Co. 415 F. Supp. 1122, (1976).Google ScholarGoogle Scholar
  3. US v. Scholle. 553 F. 2d 1109, (1977).Google ScholarGoogle Scholar
  4. Nat. Union Elec. Corp. v. Matsushita Elec. Indus. Co. 494 F. Supp. 1257, (1980).Google ScholarGoogle Scholar
  5. US v. Vela. 673 F. 2d 86, (1982).Google ScholarGoogle Scholar
  6. US v. Bonallo. 858 F. 2d 1427, (1988).Google ScholarGoogle Scholar
  7. Gates Rubber Co. v. Bando Chemical Industries, Ltd. 9 F. 3d 823, (1993).Google ScholarGoogle Scholar
  8. Illinois Tool Works v. Metro Mark Products, Ltd. 43 F. Supp. 2d 951, (1999).Google ScholarGoogle Scholar
  9. John Paul Mitchell Systems v. Quality King Distributors, Inc. 106 F. Supp. 2d 462, (2000).Google ScholarGoogle Scholar
  10. Schaghticoke Tribal Nation v. Kempthorne. 587 F. Supp. 2d 389, (2008).Google ScholarGoogle Scholar
  11. Hungarian method source. https://github.com/maandree/hungarian-algorithm-n3/blob/master/hungarian.c, 2014.Google ScholarGoogle Scholar
  12. 504ENSICS Labs. Dalvik Inspector (DI) Alpha. http://www.504ensics.com/tools/dalvik-inspector-di-alpha, 2013.Google ScholarGoogle Scholar
  13. 504ENSICS Labs. LiME Linux Memory Extractor. https://github.com/504ensicsLabs/LiME, 2013.Google ScholarGoogle Scholar
  14. F. Adelstein. Live forensics: diagnosing your system without killing it first. Communications of the ACM, 49(2), 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. D. Apostolopoulos, G. Marinakis, C. Ntantogian, and C. Xenakis. Discovering authentication credentials in volatile memory of android mobile devices. In Collaborative, Trusted and Privacy-Aware e/m-Services. 2013.Google ScholarGoogle ScholarCross RefCross Ref
  16. J. Ashcroft, D. J. Daniels, and S. V. Hart. Forensic examination of digital evidence: A guide for law enforcement. U.S. National Institute of Justice, Office of Justice Programs, NIJ Special Report, NCJ 199408, 2004.Google ScholarGoogle Scholar
  17. C. Betz. Memparser forensics tool. http://www.dfrws.org/2005/challenge/memparser.shtml, 2005.Google ScholarGoogle Scholar
  18. C. Bugcheck. Grepexec: Grepping executive objects from pool memory. In Proc. Digital Forensic Research Workshop, 2006.Google ScholarGoogle Scholar
  19. M. Carbone, W. Cui, L. Lu, W. Lee, M. Peinado, and X. Jiang. Mapping kernel objects to enable systematic integrity checking. In Proc. CCS, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. B. D. Carrier. Risks of live digital forensic analysis. Communications of the ACM, 49(2), 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. B. D. Carrier and J. Grand. A hardware-based memory acquisition procedure for digital investigations. Digital Investigation, 1, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. A. Case, A. Cristina, L. Marziale, G. G. Richard, and V. Roussev. FACE: Automated digital evidence discovery and correlation. Digital Investigation, 5, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. S. A. Chatzichristofis and Y. S. Boutalis. CEDD: color and edge directivity descriptor: a compact descriptor for image indexing and retrieval. In Computer Vision Systems. 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. B. Dolan-Gavitt, A. Srivastava, P. Traynor, and J. Giffin. Robust signatures for kernel data structures. In Proc. CCS, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. M. Graves. Digital Archaeology: The Art and Science of Digital Forensics. Addison-Wesley, 2013.Google ScholarGoogle Scholar
  26. C. Hilgers, H. Macht, T. Muller, and M. Spreitzenbarth. Post-mortem memory analysis of cold-booted android devices. In Proc. IT Security Incident Management & IT Forensics (IMF), 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. H. M. Jarrett, M. W. Bailie, E. Hagen, and N. Judish. Searching and seizing computers and obtaining electronic evidence in criminal investigations. U.S. Department of Justice, Computer Crime and Intellectual Property Section Criminal Division, 2009.Google ScholarGoogle Scholar
  28. J. Lee, T. Avgerinos, and D. Brumley. TIE: Principled reverse engineering of types in binary programs. In Proc. NDSS, 2011.Google ScholarGoogle Scholar
  29. Z. Lin, J. Rhee, C. Wu, X. Zhang, and D. Xu. DIMSUM: Discovering semantic data of interest from un-mappable memory with confidence. In Proc. NDSS, 2012.Google ScholarGoogle Scholar
  30. Z. Lin, J. Rhee, X. Zhang, D. Xu, and X. Jiang. SigGraph: Brute force scanning of kernel data structure instances using graph-based signatures. In Proc. NDSS, 2011.Google ScholarGoogle Scholar
  31. Z. Lin, X. Zhang, and D. Xu. Automatic reverse engineering of data structures from binary execution. In Proc. NDSS, 2010.Google ScholarGoogle Scholar
  32. M. Lux. Content based image retrieval with lire. In Proc. ACM International Conference on Multimedia, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Lux and S. A. Chatzichristofis. Lire: lucene image retrieval: an extensible java cbir library. In Proc. ACM International Conference on Multimedia, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. H. Macht. Live memory forensics on android with volatility. Friedrich-Alexander University Erlangen-Nuremberg, 2013.Google ScholarGoogle Scholar
  35. P. Movall, W. Nelson, and S. Wetzstein. Linux physical memory analysis. In Proc. USENIX Annual Technical Conference, FREENIX Track, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Open Whisper Systems. TextSecure Private Messenger. https://play.google.com/store/apps/details?id=org.thoughtcrime.securesms, 2015.Google ScholarGoogle Scholar
  37. N. L. Petroni Jr, A. Walters, T. Fraser, and W. A. Arbaugh. FATKit: A framework for the extraction and analysis of digital forensic data from volatile system memory. Digital Investigation, 3, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. B. Saltaformaggio. Forensic carving of wireless network information from the android linux kernel. University of New Orleans, 2012.Google ScholarGoogle Scholar
  39. B. Saltaformaggio, R. Bhatia, Z. Gu, X. Zhang, and D. Xu. VCR: App-agnostic recovery of photographic evidence from android device memory images. In Proc. CCS, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. B. Saltaformaggio, Z. Gu, X. Zhang, and D. Xu. DSCRETE: Automatic rendering of forensic information from memory images via application logic reuse. In Proc. USENIX Security, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. A. Schuster. Searching for processes and threads in microsoft windows memory dumps. Digital Investigation, 3, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. A. Slowinska, T. Stancescu, and H. Bos. Howard: A dynamic excavator for reverse engineering data structures. In Proc. NDSS, 2011.Google ScholarGoogle Scholar
  43. H. Sun, K. Sun, Y. Wang, J. Jing, and S. Jajodia. Trustdump: Reliable memory acquisition on smartphones. In Proc. European Symposium on Research in Computer Security. 2014.Google ScholarGoogle ScholarCross RefCross Ref
  44. J. Sylve, A. Case, L. Marziale, and G. G. Richard. Acquisition and analysis of volatile memory from android devices. Digital Investigation, 8, 2012.Google ScholarGoogle Scholar
  45. The Volatility Framework. https://www.volatilesystems.com/default/volatility.Google ScholarGoogle Scholar
  46. V. L. Thing, K.-Y. Ng, and E.-C. Chang. Live memory forensics of mobile phones. Digital Investigation, 7, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. R. Walls, B. N. Levine, and E. G. Learned-Miller. Forensic triage for mobile phones with DEC0DE. In Proc. USENIX Security, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. J. Zeng, Y. Fu, K. A. Miller, Z. Lin, X. Zhang, and D. Xu. Obfuscation resilient binary code reuse through trace-oriented programming. In Proc. CCS, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. GUITAR: Piecing Together Android App GUIs from Memory Images

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      CCS '15: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security
      October 2015
      1750 pages
      ISBN:9781450338325
      DOI:10.1145/2810103

      Copyright © 2015 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 12 October 2015

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      CCS '15 Paper Acceptance Rate128of660submissions,19%Overall Acceptance Rate1,261of6,999submissions,18%

      Upcoming Conference

      CCS '24
      ACM SIGSAC Conference on Computer and Communications Security
      October 14 - 18, 2024
      Salt Lake City , UT , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader