【问题标题】:World readable writable __override__ directory in Xamarin application sandboxXamarin 应用程序沙箱中的世界可读可写 __override__ 目录
【发布时间】:2016-03-31 18:55:45
【问题描述】:

任何人都可以了解 Xamarin 在应用程序沙箱中创建的 __override__ 文件夹的指定吗?事实证明,它是世界可读可写的,这会导致安全检查出现问题。我已经在库存设备上测试了它的生产应用程序并得到了以下结果:

shell@m0:/data/data/com.myapp/files/.__override__ $ mkdir testdir
shell@m0:/data/data/com.myapp/files/.__override__ $ echo "content" >> testfile
shell@m0:/data/data/com.myapp/files/.__override__ $ ls
testdir
testfile
shell@m0:/data/data/com.myapp/files/.__override__ $

有什么办法可以摆脱这个文件夹或让它像其他应用程序沙箱文件夹一样受到保护?

【问题讨论】:

    标签: android xamarin file-permissions sandbox


    【解决方案1】:

    这是(曾经)Xamarin.Andriod 5.1 之前的一个已知漏洞。

    发布模式中使用Xamarin.Android 5.1或更高版本重建/重新部署您的应用。

    当前版本:

    • 稳定:
      • Xamarin.Android 6.0.1
    • Alpha 预览 2 – 第 6 周期服务版本 1
      • Xamarin.Android 6.0.1.5

    Xamarin for Android

    -----BEGIN PGP SIGNED MESSAGE----- 哈希:SHA256

    Xamarin for Android 5.1 之前的版本允许替换内部 APK 中的 DLL 文件与 SD 卡上的文件不在 安全存储。没有任何特殊权限的恶意应用程序 可以将后门的 DLL 文件放入

    /storage/sdcard0/Android/data/app_id/files/.覆盖/

    并且受害应用程序将使用 SD 中的文件。不只是主要 应用程序库可能被劫持,还有 Xamarin 的 System.dll 和 Mono.Android.dll,它们在所有 Xamarin for Android 中提供 应用程序。

    开发人员应使用 Xamarin for Android 重新构建他们的应用程序 5.1 或更高版本处于发布模式。

    这个漏洞是偶然发现的,让我吃了 免费一个月。

    时间线: 03.04.2015 发现漏洞 07.04.2015 发送给 Xamarin 的消息 08.04.2015 Xamarin 承认该漏洞 29.04.2015 修复稳定版发布

    -----开始PGP签名-----

    回复:http://seclists.org

    【讨论】:

    • 我已经阅读了有关此漏洞的信息,甚至是发现它的人的文章,但我已经在发布模式下使用了适当的 Xamarin Android(Xamarin Studio:版本 5.10.1(内部版本 6 ); Xamarin.Android:版本:6.0.0(独立版)),我的问题是此文件夹在内存中的存在(和访问权限)。
    【解决方案2】:

    已直接询问 Xamarin 支持,结果发现这是一个回归错误,将通过进一步更新修复:https://bugzilla.xamarin.com/show_bug.cgi?id=37422

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-22
      • 1970-01-01
      • 2015-11-26
      相关资源
      最近更新 更多