【问题标题】:Is there a way to secure access to android native libraries packaged within an apk or aar?有没有办法保护对打包在 apk 或 aar 中的 android 本机库的访问?
【发布时间】:2015-04-10 01:33:37
【问题描述】:

我有一个本地 android 库,我想保护它,这样只有特定的应用程序才能加载它们。有没有办法限制加载到某些应用程序?

在 Android 应用程序和本机库之间建立信任的一般解决方案是什么?原生库如何防止未经授权的方法调用?

【问题讨论】:

  • 没有比“难以弄清楚如何”更强大的解决方案了,因为程序的两半和它们之间的通信都需要研究。
  • @ChrisStratton 谢谢。你会碰巧对其中一些可能有什么想法吗?假设我想让它很难弄清楚。有哪些比较好的?
  • 让人难以理解调用及其参数的作用;使replay attacks 不起作用。请记住,您总是要面对从头开始重新实现功能的替代方案 - 您只能弄清楚如何使用您的功能比这更昂贵,除此之外它不在您的手中,因为他们可以忽略你的努力并重新开始。

标签: android security android-ndk java-native-interface shared-libraries


【解决方案1】:

在 apk/aar 本机库中使用一些自定义加密和解密。运行时解密本机库,然后可以是 System.load(来自 Java),或者从文件系统上的任何位置 dlopened,包括“外部/内部存储” .甚至文件名也可能没有 lib 或 .so 的痕迹。

【讨论】:

    猜你喜欢
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-31
    • 1970-01-01
    • 1970-01-01
    • 2020-12-10
    • 2018-03-08
    相关资源
    最近更新 更多