skip to main content
10.1145/3098954.3105825acmotherconferencesArticle/Chapter ViewAbstractPublication PagesaresConference Proceedingsconference-collections
research-article

The Demon is in the Configuration: Revisiting Hybrid Mobile Apps Configuration Model

Published:29 August 2017Publication History

ABSTRACT

HTML-5 hybrid apps have the potential to dominate the mobile and IoTs market as hybrid platforms are providing a promising development choice. This approach "wraps" standard web code (HTML, Javascript, and CSS) into a thin native layer, enabling the same code base to run on several platforms. This approach also provides a mechanism to access device native sensors, such as camera and geolocation, through Javascript code. Apache Cordova is an open source library that is a common component in many hybrid platforms, such as PhoneGap and IBM Worklight. Yet, its configuration model suffers several security limitations including a coarse-grained access control model, risky defaults, and for many developers, a non-trivial configuration process. Hybrid app development is an intricate task as is, not to mention configuring these apps securely. Given the increased popularity of the approach itself and the proven tendency of developers to use platform-provided default settings, this paper presents a novel approach to automatically generate configurations that are more aligned to the app requirements, more granular, and more conformant with Least Privilege principle. We argue that having aligned configurations forms the first line of defense against attacks similar to injection attacks. Such attacks could have been voided if the app configurations were more granular and tailored. Our approach generates initial configuration settings based on modeling app behavior. The model generates twofold policies, one centered around APIs access and another around controlling app states transition. We have successfully instrumented Cordova library to implement our approach. We have tested the instrumented version, and our experiments demonstrate that the instrumented version is a practical and performant alternative.

References

  1. Apache cordova. https://cordova.apache.org.Google ScholarGoogle Scholar
  2. Upgrading android. https://cordova.apache.org/docs/en/4.0.0/guide/platforms/android/upgrade.html.Google ScholarGoogle Scholar
  3. Whitelist documentation. https://github.com/apache/cordova-plugin-whitelist.Google ScholarGoogle Scholar
  4. Suyesh Amatya and Arianit Kurti. Cross-platform mobile development: Challenges and opportunities. In ICT Innovations 2013.Google ScholarGoogle Scholar
  5. AppBrain. Android statistics /cordova. http://www.appbrain.com/stats/libraries/details/phonegap/phonegap-apache-cordova.Google ScholarGoogle Scholar
  6. Achim D Brucker and Michael Herzberg. On the static analysis of hybrid mobile apps: A report on the state of apache cordova nation. In International Symposium on Engineering Secure Software and Systems (ESSoS). Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Achim D. Brucker and Michael Herzberg. On the static analysis of hybrid mobile apps: A report on the state of apache cordova nation. In International Symposium on Engineering Secure Software and Systems (ESSoS). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. OWASP (c). Owasp top 10. https://www.owasp.org/index.php/Top10#tab=Main.Google ScholarGoogle Scholar
  9. Yen-Lin Chen, Hahn-Ming Lee, Albert B Jeng, and Te-En Wei. Droidcia: A novel detection method of code injection attacks on html5-based mobile apps. In Trustcom/BigDataSE/ISPA, 2015 IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Mitre Corporation. Apache cordova security vulnerabilities. https://www.cvedetails.com/vulnerability-list/vendor_id-45/product_id-27153/Apache-Cordova.html.Google ScholarGoogle Scholar
  11. Marco Cova, Christopher Kruegel, and Giovanni Vigna. Detection and analysis of drive-by-download attacks and malicious javascript code. In Proceedings of the 19th international conference on World wide web. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Matt Cutts. Seo mistakes: sneaky javascript. https://www.mattcutts.com/blog/seo-mistakes-sneaky-javascript/.Google ScholarGoogle Scholar
  13. Gianluca Dini, Fabio Martinelli, Andrea Saracino, and Daniele Sgandurra. Probabilistic contract compliance for mobile applications. In Availability, Reliability and Security (ARES), 2013 Eighth International Conference on. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Apache Cordova Documentation. Whitelist guide. http://cordova.apache.org/docs/en/4.0.0/guide_appdev_whitelist_index.md.html.Google ScholarGoogle Scholar
  15. Nicola Dragoni, Fabio Massacci, Katsiaryna Naliuka, and Ida Siahaan. Security-by-contract: Toward a semantics for digital signatures on mobile code. In European Public Key Infrastructure Workshop. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Apache Software Foundation. Apache software foundation. https://projects.apache.org/project.html?cordova.Google ScholarGoogle Scholar
  17. Gartner. Gartner recommends a hybrid approach for business-to-employee mobile apps. http://www.gartner.com/newsroom/id/2429815.Google ScholarGoogle Scholar
  18. Gartner. Gartner says by 2016, more than 50 percent of mobile apps deployed will be hybrid. http://www.gartner.com/newsroom/id/2324917.Google ScholarGoogle Scholar
  19. Martin Georgiev, Suman Jana, and Vitaly Shmatikov. Breaking and fixing origin-based access control in hybrid web/mobile application frameworks. In NDSS symposium.Google ScholarGoogle Scholar
  20. GoogleDevelopers. Making ajax applications crawable. https://developers.google.com/webmasters/ajax-crawling/docs/getting-started.Google ScholarGoogle Scholar
  21. Matthew L Hale and Seth Hanson. A testbed and process for analyzing attack vectors and vulnerabilities in hybrid mobile apps connected to restful web services. In Services (SERVICES), 2015 IEEE World Congress on. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Behnaz Hassanshahi, Yaoqi Jia, Roland HC Yap, Prateek Saxena, and Zhenkai Liang. Web-to-application injection attacks on android: Characterization and detection. In Computer Security--ESORICS 2015.Google ScholarGoogle Scholar
  23. David Jaramillo, Viney Ugave, Robert Smart, and Sudeep Pasricha. Secure cross-platform hybrid mobile enterprise voice agent. In Southeastcon 2014, Ieee.Google ScholarGoogle Scholar
  24. Xing Jin, Xuchao Hu, Kailiang Ying, Wenliang Du, Heng Yin, and Gautam Nagesh Peri. Code injection attacks on html5-based mobile apps: Characterization, detection and mitigation. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Xing Jin, Tongbo Luo, Derek G. Tsui, and Wenliang Du. Code injection attacks on html5-based mobile apps.Google ScholarGoogle Scholar
  26. Xing Jin, Lusha Wang, Tongbo Luo, and Wenliang Du. Fine-grained access control for html5-based mobile applications in android. In Information Security. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Xing Jin, Lusha Wang, Tongbo Luo, and Wenliang Du. Fine-grained access control for html5-based mobile applications in android. In Proceedings of the 16th Information Security Conference (ISC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Jack Madden. Why html5 apps are ideal for enterprise mobility. http://searchmobilecomputing.techtarget.com/feature/Why-HTML5-apps-are-ideal-for-enterprise-mobility.Google ScholarGoogle Scholar
  29. Federico Maggi, William Robertson, Christopher Kruegel, and Giovanni Vigna. Protecting a moving target: Addressing web application concept drift. In Recent Advances in Intrusion Detection. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Nick Nikiforakis, Luca Invernizzi, Alexandros Kapravelos, Steven Van Acker, Wouter Joosen, Christopher Kruegel, Frank Piessens, and Giovanni Vigna. You are what you include: large-scale evaluation of remote javascript inclusions. In Proceedings of the 2012 ACM conference on Computer and communications security. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Parse. Parse. https://www.parse.com.Google ScholarGoogle Scholar
  32. D. Pitt. Mobile application architecture with html5 and javascript. http://www.infoq.com/articles/mobile-architecture-html5-javascript.Google ScholarGoogle Scholar
  33. Sanae Rosen, Zhiyun Qian, and Z Morely Mao. Appprofiler: a flexible method of exposing privacy-related behavior in android applications to end users. In Proceedings of the third ACM conference on Data and application security and privacy. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Mohamed Shehab and Abeer AlJarrah. Reducing attack surface on cordova-based hybrid mobile apps. In Proceedings of the 2nd International Workshop on Mobile Development Lifecycle. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Kapil Singh. Practical context-aware permission control for hybrid mobile applications. In Research in Attacks, Intrusions, and Defenses. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Kundan Singh and John Buford. Developing webrtc-based team apps with a cross-platform mobile framework. 2016.Google ScholarGoogle Scholar
  37. Gertner Susan Moore. Gartner says demand for enterprise mobile apps will outstrip available development capacity five to one. http://www.gartner.com/newsroom/id/3076817.Google ScholarGoogle Scholar
  38. Symantic. Web attack: Malicious javascript redirection 2. http://www.symantec.com/security_response/attacksignatures/detail.jsp?asid=28341.Google ScholarGoogle Scholar
  39. W3C. Hash uris. http://www.w3.org/blog/2011/05/hash-uris/.Google ScholarGoogle Scholar
  40. W3C. State chart xml (scxml): State machine notation for control abstraction. https://www.w3.org/TR/scxml/.Google ScholarGoogle Scholar
  41. Spyros Xanthopoulos and Stelios Xinogalos. A comparative analysis of cross-platform development approaches for mobile applications. In Proceedings of the 6th Balkan Conference in Informatics. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Jing Xie, Heather Richter Lipford, and Bill Chu. Why do programmers make security errors? In Visual Languages and Human-Centric Computing (VL/HCC), 2011 IEEE Symposium on, pages 161--164. IEEE, 2011.Google ScholarGoogle Scholar

Index Terms

  1. The Demon is in the Configuration: Revisiting Hybrid Mobile Apps Configuration Model

        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 Other conferences
          ARES '17: Proceedings of the 12th International Conference on Availability, Reliability and Security
          August 2017
          853 pages
          ISBN:9781450352574
          DOI:10.1145/3098954

          Copyright © 2017 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 ACM 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: 29 August 2017

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed limited

          Acceptance Rates

          ARES '17 Paper Acceptance Rate100of191submissions,52%Overall Acceptance Rate228of451submissions,51%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader