美文网首页
Reliable Third-Party Library Det

Reliable Third-Party Library Det

作者: Entelecheia | 来源:发表于2016-11-28 21:18 被阅读141次

    背景

    • 出处:CCS ’16, October 24–28, 2016, Vienna, Austria
    • 作者:Michael Backes, Sven Bugiel, Erik Derr @ CISPA, Saarland University
      Saarland Informatics Campus

    概述

    论文主要观点

    实现了一种可靠的第三方库探测方法,且描述了这种方法的几个应用

    成果

    • 业内第一个设计出轻量有效的APP第三方库扫描方法,且此方法可以对抗一般的代码混淆,可准确指出使用库的版本
    • 建了一个包含164个不同第三方库共2065个版本的数据库
    • 利用工具在Google Play的top APP上做了研究,得到了第三方lib的流行性,app和lib的更新频率等结果
    • 研究了使用有问题的Facebook和Dropbox SDK的APK,结果说明使用这些lib的APP会有很大可能遭受攻击
    • 分析了对于第三方lib的滥用和加密API,揭露了Play上296个app的不当行为

    方法模型

    为了对抗代码混淆,所有的特征都由类的层级结构生成,于具体的二进制代码无关。

    1. 首先使用Standard Class Hierarchy Analysis (CHA)生成包结构树;


      包结构树包结构树
    2. 特征生成:对app建立Merkle trees,Merkle trees的最底层(也就是方法层)对于每个方法的名字进行了过滤产生模糊的方法名(fuzzy descriptor),以对抗代码混淆;
      Merkle trees:本质就是Hash,从叶子节点开始一层一层向上。
      参考:http://www.tuicool.com/articles/B7fM7j
      Merkle treesMerkle trees
      fuzzy descriptorfuzzy descriptor
    3. 特征比对:以类为最小粒度,建立评价分数:



      lp:library package,ap:app package
      具体没细看,比对方法在传统的Merkle trees比对方法上避免了全部app与lib之间的比对,效率更高。

    实验与应用

    本文实验部分较为简单,主要讲述了上述方法的有效性;
    重点在应用部分,本文利用此工具对Play里的app进行了很多统计和分析,例如第三方lib的流行性,被使用最多的第三方lib,AndroidSDK的版本利用程度等。引用含有漏洞的Facebook和Dropbox SDK对使用它们的app进行数据统计,分析了可能导致安全问题的API,指出misuse的广泛性。

    总结

    优点

    本文重点在于后部的大量应用,表明了此工具是有用的。

    不足

    本文匹配方法较为简单。本质上来说,本文就是对于第三方库的一个研究。

    我的想法

    论文中有应用可证明我的工具是有用的,可加分。

    相关文章

      网友评论

          本文标题:Reliable Third-Party Library Det

          本文链接:https://www.haomeiwen.com/subject/qsgopttx.html