Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2736277.2741663acmotherconferencesArticle/Chapter ViewAbstractPublication PageswwwConference Proceedingsconference-collections
research-article

Rethinking Security of Web-Based System Applications

Published:18 May 2015Publication History

ABSTRACT

Many modern desktop and mobile platforms, including Ubuntu, Google Chrome, Windows, and Firefox OS, support so called Web-based system applications that run outside the Web browser and enjoy direct access to native objects such as files, camera, and geolocation. We show that the access-control models of these platforms are (a) incompatible and (b) prone to unintended delegation of native-access rights: when applications request native access for their own code, they unintentionally enable it for untrusted third-party code, too. This enables malicious ads and other third-party content to steal users' OAuth authentication credentials, access camera on their devices, etc.

We then design, implement, and evaluate PowerGate, a new access-control mechanism for Web-based system applications. It solves two key problems plaguing all existing platforms: security and consistency. First, unlike the existing platforms, PowerGate correctly protects native objects from unauthorized access. Second, PowerGate provides uniform access-control semantics across all platforms and is 100% backward compatible. PowerGate enables application developers to write well-defined native-object access policies with explicit principals such as "application's own local code" and "third-party Web code," is easy to configure, and incurs negligible performance overhead.

References

  1. Abusing WebView JavaScript bridges. http://50.56.33.56/blog/?p=314.Google ScholarGoogle Scholar
  2. D. Akhawe, P. Saxena, and D. Song. Privilege separation in HTML5 applications. In USENIX Security, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. AppArmor. http://developer.ubuntu.com/publish/apps/security-policy-for-click-packages/, 2014.Google ScholarGoogle Scholar
  4. A. Barth. The Web origin concept. http://tools.ietf.org/html/rfc6454.Google ScholarGoogle Scholar
  5. A. Barth, C. Jackson, and J. Mitchell. Securing frame communication in browsers. In USENIX Security, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. E. Chin, A. Felt, K. Greenwood, and D. Wagner. Analyzing inter-application communication in Android. In MobiSys, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. E. Chin and D. Wagner. Bifocals: Analyzing WebView vulnerabilities in Android applications. In WISA, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chrome app samples. https://github.com/GoogleChrome/chrome-app-samples, 2014.Google ScholarGoogle Scholar
  9. Permissions in Chrome apps and extensions. https://developer.chrome.com/apps/declare_permissions, 2014.Google ScholarGoogle Scholar
  10. Cordova platform support. http://cordova.apache.org/docs/en/3.4.0/guide_support_index.md.html, 2014.Google ScholarGoogle Scholar
  11. L. Davi, A. Dmitrienko, A. Sadeghi, and M. Winandy. Privilege escalation attacks on Android. In ISC, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. D. DeFreez, B. Shastry, H. Chen, and J. Seifert. A first look at Firefox OS security. In MoST, 2014.Google ScholarGoogle Scholar
  13. M. Dietz, S. Shekhar, Y. Pisetsky, A. Shu, and D. Wallach. QUIRE: Lightweight provenance for smart phone operating systems. In USENIX Security, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. Felt, H. Wang, A. Moshchuk, S. Hanna, and E. Chin. Permission re-delegation: Attacks and defenses. In USENIX Security, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Firefox OS app permissions. https://developer.mozilla.org/en-US/Apps/Build/App_permissions, 2014.Google ScholarGoogle Scholar
  16. Firefox OS security model. https://developer.mozilla.org/en-US/Firefox_OS/Security/Security_model, 2014.Google ScholarGoogle Scholar
  17. M. Finifter, J. Weinberger, and A. Barth. Preventing capability leaks in secure JavaScript subsets. In NDSS, 2010.Google ScholarGoogle Scholar
  18. B. Ford and R. Cox. Vx32: Lightweight user-level sandboxing on the x86. In USENIX ATC, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. T. Garfinkel, B. Pfaff, and M. Rosenblum. Ostia: A delegating architecture for secure system call interposition. In NDSS, 2004.Google ScholarGoogle Scholar
  20. M. Georgiev, S. Jana, and V. Shmatikov. Breaking and fixing origin-based access control in hybrid Web/mobile application frameworks. In NDSS, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  21. I. Goldberg, D. Wagner, R. Thomas, and E. Brewer. A secure environment for untrusted helper applications: Confining the wily hacker. In USENIX Security, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Grace, W. Zhou, X. Jiang, and A. Sadeghi. Unsafe exposure analysis of mobile in-app advertisements. In WiSec, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. Grace, Y. Zhou, Z. Wang, and X. Jiang. Systematic detection of capability leaks in stock Android smartphones. In NDSS, 2012.Google ScholarGoogle Scholar
  24. N. Hardy. The Confused Deputy: (or why capabilities might have been invented). ACM SIGOPS Operating Systems Review, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. S. Jana, D. Porter, and V. Shmatikov. TxBox: Building secure, efficient sandboxes with system transactions. In S&P, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. X. Jin, X. Hu, K. Ying, W. Du, Y. Heng, and G. Peri. Code injection attacks on HTML5-based mobile apps: Characterization, detection and mitigation. In CCS, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. X. Jin, T. Luo, D. Tsui, and W. Du. Code injection attacks on HTML5-based mobile apps. In MoST, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. K. Lin, D. Chu, J. Mickens, L. Zhuang, F. Zhao, and J. Qiu. Gibraltar: Exposing hardware devices to Web pages using AJAX. In WebApps, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. M. Louw, K. Ganesh, and V. Venkatakrishnan. AdJail: Practical enforcement of confidentiality and integrity policies on Web advertisements. In USENIX Security, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. L. Lu, Z. Li, Z. Wu, W. Lee, and G. Jiang. Chex: Statically vetting Android apps for component hijacking vulnerabilities. In CCS, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. T. Luo, H. Hao, W. Du, Y. Wang, and H. Yin. Attacks on WebView in the Android system. In ACSAC, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. S. Maffeis and A. Taly. Language-based isolation of untrusted javascript. In CSF, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Miller, M. Samuel, B. Laurie, I. Awad, and M. Stay. Caja: Safe active content in sanitized JavaScript. http://google-caja.googlecode.com, 2008.Google ScholarGoogle Scholar
  34. WebView addJavascriptInterface remote code execution. https://labs.mwrinfosecurity.com/blog/2013/09/24/webview-addjavascriptinterface-remote-code-execution/.Google ScholarGoogle Scholar
  35. NSA. Security-enhanced linux. http://www.nsa.gov/research/selinux/.Google ScholarGoogle Scholar
  36. Ubuntu OnlineAccounts API. http://developer.ubuntu.com/api/html5/sdk-14.04/OnlineAccounts.OnlineAccounts/, 2014.Google ScholarGoogle Scholar
  37. J. Politz, S. Eliopoulos, A. Guha, and S. Krishnamurthi. ADsafety: Type-based verification of JavaScript sandboxing. In USENIX Security, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. N. Provos. Improving host security with system call policies. In USENIX Security, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. E. Shapira. Analyzing an Android WebView exploit. http://blogs.avg.com/mobile/analyzing-android-webview-exploit/.Google ScholarGoogle Scholar
  40. S. Shekhar, M. Dietz, and D. Wallach. AdSplit: Separating smartphone advertising from applications. USENIX Security, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. K. Singh. Practical context-aware permission control for hybrid mobile applications. In RAID, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. K. Singh, A. Moshchuk, H. Wang, and W. Lee. On the incoherencies in Web browser access control policies. In S&P, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. S. Son and V. Shmatikov. The postman always rings twice: Attacking and defending post Message in HTML5 websites. In NDSS, 2013.Google ScholarGoogle Scholar
  44. R. Stevens, C. Gibler, J. Crussell, J. Erickson, and H. Chen. Investigating user privacy in Android ad libraries. In MoST, 2012.Google ScholarGoogle Scholar
  45. W. Sun, Z. Liang, V. Venkatakrishnan, and R. Sekar. One-way isolation: An effective approach for realizing safe execution environments. In NDSS, 2005.Google ScholarGoogle Scholar
  46. SUSE. AppArmor Linux application security. https://www.suse.com/support/security/apparmor/.Google ScholarGoogle Scholar
  47. System applications working group charter. http://www.w3.org/2012/09/sysapps-wg-charter, 2014.Google ScholarGoogle Scholar
  48. A. Taly, U. Erlingsson, J. Mitchell, M. Miller, and J. Nagra. Automated analysis of security-critical JavaScript APIs. In S&P, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Ubuntu Unity Web API. http://developer.ubuntu.com/api/devel/ubuntu-13.10/javascript/web-docs/, 2014.Google ScholarGoogle Scholar
  50. R. Wang, L. Xing, X. Wang, and S. Chen. Unauthorized origin crossing on mobile platforms: Threats and mitigation. In CCS, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. App capability declarations (Windows Runtime apps). http://msdn.microsoft.com/en-us/library/windows/apps/hh464936.aspx, 2014.Google ScholarGoogle Scholar
  52. M. Zalewski. Browser security handbook. https://code.google.com/p/browsersec/wiki/Main.Google ScholarGoogle Scholar

Index Terms

  1. Rethinking Security of Web-Based System Applications

      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
        WWW '15: Proceedings of the 24th International Conference on World Wide Web
        May 2015
        1460 pages
        ISBN:9781450334693

        Copyright © 2015 Copyright is held by the International World Wide Web Conference Committee (IW3C2)

        Publisher

        International World Wide Web Conferences Steering Committee

        Republic and Canton of Geneva, Switzerland

        Publication History

        • Published: 18 May 2015

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        WWW '15 Paper Acceptance Rate131of929submissions,14%Overall Acceptance Rate1,899of8,196submissions,23%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader