论文研究-基于smali的Android软件敏感API调用日志模块嵌入系统 .pdf

所需积分/C币:38 2019-08-24 08:46:54 419KB .PDF
38
收藏 收藏
举报

基于smali的Android软件敏感API调用日志模块嵌入系统,吕晓庆,邹仕洪,在恶意软件动态分析中,需要用到软件运行时的API调用日志,特别是敏感API的调用日志,而Android系统的日志仅提供了有限的信息。为获��
山国武花论文在丝 对象 等价于中的 表示这是个对象类型, 表示对象所在 的包, 是对象的 名称,“”表示对象的结東 数组单维数组用类似与表示,多维数组每增加一维添加一个符表示,表示 方法采用类似于 对象调用了 的形式 方法 变量采用类似于 衣示对象的类型为 名 称为 变量 寄存命名方式和命名方式。命名方式中的是方法中的第指令 指定方法中寄 器 一个参数寄存器 存器的总数,指令表明 方法中非参寄存器的数量。当 方法被调用的时候,方法 的个参数被置于最后个 奇存器中,而丰静态方法中的 第一个参数总是调用该方法 的对象。 处理流程 由于语法完整地实现了的所有功能,代码中的敏感与相应要嵌入的 调用日志模块,都可以找到对应的代码表示;而文件可以和文件进行 无损的互相转换,那么可以在代码层实现敏感的定位以及对应的调用日志模 块的嵌入。只体过栏为如下图所小:可以首先获取文件,然后将使用 工只将 文件转化为文件,在文件中查找敏感对应的代码,一旦匹配即可 嵌入对应的调用日志模块的代码,然后使用工具将新的文件编译成 文件,最后打包生成文件 APK解压获取dex bakali工具将 查找敏感API在 文件 de转化为sma文 smali文件中的位 件 置 嵌入日志记录模 smali. l具将 smali dex文件与APK中 块 smali/代码 代码转换成dex文其他文件打包成 件 新的APK 图嵌入调用日志模块流程图 山国武花论文在丝 系统设计 系统框架 基于的 软件敏感调用口志模块嵌入系统如下图所示,主要由以下 五部分组成 反编译模块,敏感代码库,调用日志记录代码库,日志嵌入模 块,以及编译模块 基于smai的 Android软件敏感AP调用日志模块嵌入系统 输入 APK 日志 APK APK 一N反编泽代码 歌入 输出嵌 编译 入日 模块 模块 代码 模块 的 APK 敏感代码库 调用日志记录 代码库 图系统总休架构图 各模块描述 下面分别对系统五个部分进行详细描述。 反编译模块 该模块负责实现将中的 文件反编译成文件的功能,分两步进行: 首先,将输入中的 文件抽取出来,然后将 反编译为文件。 由于文件是格式文件,本模块通过调用解压工只( 等工只)将输 入的解压到某·文件夹下,然后从中选取出 文件,其他文件留存备用;接 着本模块通过调用 ⊥具,将刚才取出的 反编译为文件,供口志嵌 入模块使用。 敏感代码库 本库存放的是敏感及其对应的代码,供后续的日志嵌入模块在反编译 模块牛成的文件中定位敏感使用 敏感来源于对已知恶意软件分析的经验,以及对已知恶意软件和己知正常软件 统计的差异。最终选定了可以用来完成发送短信、删除短信、拨打电话、删除通话记录、修 改联系人、执行脚木等功能的 根据语法中函数的表示方法,得到敏感对应的语法形式表示。以发送 短信为例,通常通过调用 类的 方法来实现,在敏感代码库中的记录如表 所 山国武技论文在丝 表 在敏感代码库的记录 敏感功能描敏感函数 对应的语法表示 发送短 类中的 区数 调用日志记录代码库 本库存放的是与敏感调用口志的记录代码相应的代码。 对于不同的,对应的调用日志记录代码有不同的地方,例如对发送短信调用的 日志需要记录短信的收件人号码以及短信内容,而对修改联系人号码调用的日志需要 记录修改联系人的姓名、修改前的号码和修改后的号码;也有相同的部分,比如所表 示的行为的名称,调用时间等等,以及为记录信息需要实现的写文件操作部分。为此, 对每一个要监控的,除了各可通用的调用日志代码部分,还有专门针对该的 调用日志代码。 对于通用的调用日志代码部分,设计两个公用函数,第一个函数 实现对名称、调用时间等等公共部分的记录;另一个函数 实现对某参数 的记录。创建一个工程实现这两个公用函数,然后编译该工程生成,利用反编译 模块将该中的文件反编译成文件,从中提取出两个公用函数对应的代 而每个独特的部分是该的输入和输出,根据函数原型,以及语法中 的寄存器命名原则,获取该需要记录参数在语法中对应的寄存器编号。如程序 调用 发送短信,在对 应的代码中收件人号码参数和短信内容参数对应的寄存器为和,在调用日 志记录代码库中的记录如表所示: 表 在调用日志记录代码库中的表示 敏感敏感函数 耍记录的寄存器 类中的 数 数 对应代码将寄存器值作为输入进行记录,于是,公用函数代码与每 个要记录参数对应的寄存器共同构成了调用日志记录代码库,组合可实现对各个 调用的日志记录 日志嵌入模块 本模块负责在反编译模块生成的文件中的敏感位置嵌入相应的口志记 录代码。首先本模块扫描反编译模块生成的文件,与敏感代码库中的 进行比对;如果匹配成功,根据匹配到的敏感在调用日志记录代码库获取对应记 山国武花论文在丝 录代码的代码,并将其加入到文件的相应位置;接着从该位置川始进行卜轮 比对,直至扌描完全部文件。 编译模块 本模块负责将揿入日忐模块的文件编译为新的可用。首先本模块通过调用 工具将牛成的文件编译为新的 ,然后通过调用压缩工具将新的 文件与反编译模块留存的其他文件压缩牛成新的 并对其签名。 验证测试 为验证方案的设计效果,在 上对其进行实现,并构造测试用例进行检验。 为保证本系统的正常运行,安装了 等要 的工具和环境。程序框架使用 实现, 反编译模中的解压程序以及编译 模块中的压缩程序均使用 敏感调用日志输出格式为文件,输出位置为 卡。选取 软件 该软件一旦运行会自动在后台发送短信,通过检 验该软件经过本系统处理后能否成功监控其中发送短信的敏感,来验证本系统的有效 SandA Beyond Cor Session File Edit Search view oo s Help 分 Sessions =同x”□ψ个的争中回回 D:\ experiment\ Send MessageLcgged\smali\com\ SendMecsa ge\Send Message smali E6 FILTERED LNES move-abject move-object v5. v2 invoke-virtJal/range ve.. v5, Landroid/telephony/SmsManageri->sendTextMes sage(Ljava/lang/s invoke-static [ v1, V3, Lxq/log/Logfilag-writeLog(Ljava/lang/string; )v line 46 rn-void cne ethod 67:1 已 ermen nt\ Send Message\smal com\ Send Message\SendMessage smali move-abject v4, v2 nove abject v5, V2 inwoke-virtual/range vU . v5, Landroid,telephony/'smsManageri->send l extmes sage(Ljava/lang/> line 46 turn-yoid d mcthod 图日志插入前后文件对比图 运行脚本 对 生成新的 软件 对比 中 对应的 文件 中的 对应的文件,发现在 函数后,后者比前者多了一条短信内 容记录 代码,如图所示。 山国武花论文在丝 将 安装到手机上,运行,在手机卡上生成了 ,如图所示。 G D:\experirnent\behaviourLog, xml <BEhaviourLog PackagEName="com. Send Message"Date=2012-11-22 Time=15: 56: 34"Millisecondstamp=34> r3ehaw or Name="SendsMss pAram Name=phone Niimvalle=10086/> cPa aIm NAIlIE=Me4aJjHRuly vHI H=YF"/> c/Replevin 川I多 </RHllHv illr [IyJ> 图发送短信的敏感的日志图 证明调用日忐模块被成功嵌入,并且成功地生成了日忐。 结论 在 平台对恶意软件进行动态分析时,为解决 系统提供的敏感调用 日志信息不足的问题,本文利用 文件特点以及 提供的 和工具, 设计并实现了基于的 软件敏感调用∏忐模块嵌入系统,实验结果证明, 经过本系统嵌入日志模块的软什,在运行时能够成功记录软件敏感调用的各种信息, 为动态分析恶意软件提供了丰富的输入 参考文献 北京网秦天下科技有限公司网秦年第三季度全球于机安全报告 杨丰盛 技术内幕北京:机械工业出版社,

...展开详情
试读 7P 论文研究-基于smali的Android软件敏感API调用日志模块嵌入系统 .pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
关注 私信
上传资源赚钱or赚积分
最新推荐
论文研究-基于smali的Android软件敏感API调用日志模块嵌入系统 .pdf 38积分/C币 立即下载
1/7
论文研究-基于smali的Android软件敏感API调用日志模块嵌入系统 .pdf第1页
论文研究-基于smali的Android软件敏感API调用日志模块嵌入系统 .pdf第2页

试读结束, 可继续读1页

38积分/C币 立即下载 >