欢迎来到咨信网! | 成为共赢成为共赢 咨信网助力知识提升 | 自信网络旗下运营:咨信网 自信AI创作助手 自信AI导航
咨信网
全部分类
  • 包罗万象   教育专区 >
  • 品牌综合   考试专区 >
  • 管理财经   行业资料 >
  • 环境建筑   通信科技 >
  • 法律文献   文学艺术 >
  • 学术论文   百科休闲 >
  • 应用文书   研究报告 >
  • ImageVerifierCode 换一换
    首页 咨信网 > 资源分类 > PDF文档下载
    分享到微信 分享到微博 分享到QQ空间

    APK加固技术破解方法研究.pdf

    • 资源ID:523770       资源大小:1.94MB        全文页数:4页
    • 资源格式: PDF        下载积分:10金币
    微信登录下载
    验证码下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    验证码: 获取验证码
    温馨提示:
    支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    VIP下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    声明    |    会员权益      获赠5币      写作写作
    1、填表:    下载求助     索取发票    退款申请
    2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
    6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    7、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

    APK加固技术破解方法研究.pdf

    1、计算机时代 2023年 第9期0 引言随着智能手机在我国的普及,人们的上网方式也随之发生改变。第50次中国互联网络发展状况统计报告 显示,截至 2022年 6月,我国网民规模为 10.51亿,其中手机网民规模为 10.47 亿,占全体网民的99.6%1。手机用户的高速增长促进了移动支付技术广泛应用,各类智能手机应用程序(以下简称 APP)APP迅速覆盖了人们日常出行、购物娱乐、金融理财等各个领域,其中安卓系统的应用程序占有较高比例,为确保手机端应用程序安全,开发者使用加壳、代码加密、资源混淆等加固技术,来保护安卓应用程序的安装包(AndroidPackage,简称APK),这种方法在解决手机应

    2、用安全问题的同时,也给APK取证分析带来了困扰。本文对APK常见加固技术进行分析研究,提出基于静态分析的破解方法,为公安机关开展APK分析取证提供思路和方法。1 常见APK加固技术通常情况下,为应对目前移动应用市场领域的破解、反编译、盗版等现象,企业在开发手机应用时会对APK加固以实现代码加密。APK加固的目的是保护APK代码逻辑,其原理是将APK文件进行隐藏、混淆、加密等操作,使反编译无法获取APK内的项目源码和资源。加固后的APK最明显特征是反编译后无法直观地查看 APK中的 Java代码,部分 APK无法通过正常解包或反编译得到资源文件,甚至AndroidManifest.xml文件中的

    3、特征也被隐藏起来。常见APK应用加固方法主要有整体型加固、函数DOI:10.16644/33-1094/tp.2023.09.007APK加固技术破解方法研究*斯进1,杨雪1,裴洪卿2,岑嘉俊2(1.浙江警察学院,浙江 杭州 310053;2.杭州平航科技有限公司)摘要:为解决智能手机应用程序加固后无法获得代码运行逻辑及敏感数据的问题,研究了加壳、代码加密、结构加固、资源混淆等APK常见加固技术的基本原理。通过脱壳查看核心功能代码、修复魔数头、根据ZIP文件结构去除垃圾内容、破解加密算法等方法,对APK进行加固破解。该方法基于大量APK实例总结提炼而来,具有一定的普适性,可为取证人员开展涉案A

    4、PK分析取证提供支持。关键词:手机应用程序;逆向分析;APK加固技术;App加固破解中图分类号:TP399文献标识码:A文章编号:1006-8228(2023)09-29-03Research on cracking methods of APK reinforcement technologySi Jin1,Yang Xue1,Pei Hongqin2,Chen Jiajun2(1.Zhejiang Police College,Hangzhou,Zhejiang 310053,China;2.Hangzhou Pinghang Technology Co.,Ltd)Abstract:To

    5、solve the problem that the code running logic and sensitive data cannot be obtained after the smart phone applicationis reinforced,the basic principles of common APK reinforcement techniques such as shelling,code encryption,structure reinforcementand resource obfuscation are studied.The reinforced A

    6、PK is cracked by some methods such as shelling to view the core functioncode,repairing the magic number header,removing the garbage content according to the ZIP file structure,and cracking theencryption algorithm.These methods are based on the summary and extraction of a large number of APK cases,an

    7、d have a certaindegree of universality,which can provide support for forensics personnel to conduct APK analysis and evidence collection.Key words:mobile application;reverse analysis;APK reinforcement technology;App cracking technology收稿日期:2023-03-30*基金项目:浙江省教育厅一般科研项目(编号Y201839574);杭州市科技发展项目(编号:2020

    8、04A06)作者简介:斯进(1976-),女,浙江省龙游人,大学本科/工程硕士,副教授,主要研究方向:网络安全、计算机取证。29Computer Era No.9 2023抽取加固和虚拟机源码保护三类。具体特点如表1所示。表1常见APK加固方法及特点加固类型特点整体型采 用 dex 整 体加密,动态加载运行的机制。函数抽取型粒度更细,将 APK 中的代码功能函数单独抽取出来,加密保存,等用到相应功能时解密执行。虚拟机源码保护独立虚拟机解释执行、语义等价语法迁移,强度最高。随着APK开发流程的逐步细化,开发者主要通过从市场上购买加壳服务来实现对APK的加固,因此常使用的方式是整体型加固。整体加固

    9、需要源程序、加密工具和解壳程序三要素共同参与实现对原APK的dex 文件进行加密,启动应用时对 dex 解密,通过DexClassLoader进行加载,具体流程如图1所示2。源程序:需要被加壳保护的 Android应用程序的代码,可以是Android应用的apk也可以是Android应用的dex文件和so库文件。加密工具:对源程序进行加密的工具,即对Android应用的APK或者Android应用的dex文件和so库文件进行加密的工具,为解壳程序提供源程序的解壳数据,语言和平台不限,加密处理方式根据加壳的需求来处理。壳dex文件:实现解密解壳数据并通过DexClass-Loader动态加载和运

    10、行源程序的代码,实现 Android解壳程序与Android源程序的无缝替换,Android源程序APK得到执行3。图1dex整体加固流程2 实例分析如上文所述,整体加固实现对APK的加密、混淆、加壳处理,因此,破解工作并非一蹴而就,市场上主流软件也难以实现自动化处理4。本文将结合实例逐一演示加固技术破解方法。2.1 加壳处理要解决APK加壳问题,首先需要了解加壳的原理和类型,以便能够正确识别APK的壳。APK加壳就是通过在二进制的程序中植入一段代码,使其在运行时优先取得程序的控制权,以达到完成一些额外功能的目的。APK被加壳时,会将源dex文件进行加密拼接写入壳dex文件中,同时记录位置以方

    11、便壳知道从哪里开始加载源dex文件内容。这意味着新的dex文件内容由壳dex文件和加密后的源dex文件组成。基于Xposed类工具的安卓端脱壳方法5该方法原理是针对加载已解密 dex 内容的 com.Android.dex.Dex 类对象内容进行提取,进而得到源dex文件。脱壳时,需要准备一个具有root权限的安卓设备,或者使用具有 root 权限的安卓模拟器安装Xposed框架和脱壳工具进行APK脱壳,并且需要通过adb命令导出脱壳后的源dex文件。利用Frida工具暴力提取 dex文件该方法原理是先使用具有 root权限的安卓设备(手机/模拟器)安装运行加固APK,再将加载到安卓设备内存中

    12、的源dex文件提取到计算机本地。dex文件具有一定结构特征,如文件头为“dex 035”,对应hex值为6465780A303335,在APP运行时,通过手工操作可以把内存中的dex文件“dump”到取证工作站。图2展示dex文件头的结构。图2dex文件头2.2 AndroidManifest.xml文件混淆修复APK常采用文件头结构修改、文件编码修改等复合混淆方式,对AndroidManifest.xml文件进行混淆,导致文件内容无法查看。文件头结构修改分析AndroidManifest.xml文件的结构发现,其文件头标识被修改成“0 x0000”,此外,可以发现16位和32位处有异常的“F

    13、”位,被修改的三个地方分别对应AndroidManifest.xml文件的魔数头、字符总数和样式符偏移,如图 3 所示。AndroidManifest.xml正常的文件头标识为“0 x0300”,因此,修复被篡改文件头方法30计算机时代 2023年 第9期非常简单,只需将前两位“0 x0000”改回“0 x0300”即可正常反编译。图3AndroidManifest.xml混淆文件头部特征修复AndroidManifest.xml的文件头后文件格式恢复正常,但文件内容仍有大量乱码。在以往的APK逆向分析中,我们发现针对Androidmanifest.xml的正文混淆通常会采用“Android”

    14、标签替换成任意字符串的方式,只需要在自研解析工具中根据“Android”标签的偏移找到该字符串并将其强制替换回“Android”即可修复,但在最近研究发现,开发者还会在Androidmanifest.xml中插入大量无用标签来干扰分析,因此还需要按照一定规则把垃圾标签和内容剔除。混淆文件编码修改通过本文方法对 AndroidManifest.xml 文件修复后,可以成功反编译一部分内容,但显示的内容可能是中文乱码,导致数组索引出现问题而报错,这是因为该AndroidManifest.xml文件使用UTF-16宽字节编码,导致反编译工具不兼容,需要在解析过程中针对宽字节识别和判断后,进行单字节处

    15、理,最后实现对混淆文件的编码修改。2.3 APK资源代码加密破解对大量的加密样本研究发现,在APK内部进行加解密需自动化实现,因此加密常采用对称加密算法。对称加密是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,单钥加密的安全性依赖于加密算法的强度和密钥的秘密性。虽然加密类型较为单一,但在不同APK加密对象不尽相同。有的针对 APK资源文件加密,有的对 APK与服务器通讯地址的代码加密,也有的对APK文件进行整体加密。本文介绍以下常见加密类型的破解方法。APK资源加密破解常见APK大都是通过APP打包公司将搭建好的网站前端进行封装而成的WebAPP。WebAPP是一种框架型AP

    16、P开发形式(H5AP框架开发形式),具有跨平台的优点,该框架由“HTML5云网站+APP应用客户端”构成。APP应用客户端只安装应用的外观部分,而数据则是在每次运行APP时加载网站数据,呈现给手机用户。这类APK大多可以通过分析资源文件,直接获取通讯地址、打包公司惟一 ID号等。下文为一个WebAPP的JSON文件内容。为了防止攻击者获取资源文件,打包公司会对资源文件进行加密,一些主流的打包公司,如 APIcloud和“第八区打包”等,使用 RC4 对称加密算法进行加密。APIcloud会通过特定方法从so文件中提取密钥,而第八区则是通过特定的函数对密钥进行拆分和拼接。对使用第八区进行资源文件

    17、加密的APK进行反编译,可搜索到资源加密的算法。代码中的加密类定义了多个拆散的原始字符串值,加密算法主要通过对这些字符串值进行base64加密和拼接处理,最后生成RC4加密的密钥。需要说明的是,个别打包公司在打包APP时会选择对APK资源文件进行加密。由于市面上有不少“山寨”公司通过使用大公司的打包ID和代码实现打包。不同打包公司的资源文件加解密方法会有差异,在做加密破解时间还需要具体分析APK的加密算法程序脚本。APK代码加密破解APK代码加密,一般指对代码中重要信息进行加密,如APK通讯地址、APK中的关键值、数据库密码等重要信息。APK代码加密通常也使用对称加密算法。通过分析实现代码得到

    18、加密的密钥和参数,可得到APK真正的通讯地址。此外,对通讯内容进行加密的 APK 往往会伴随安全环境的检测,直接使用动态抓包也可以截取其真正的通讯目标地址。图4展示了通过指定参数、密钥和向量,解密AES密文得到通信目标地址的方式。图4AES代码解密(下转第36页)31Computer Era No.9 2023由图5图8可知,随着样本数量的增加分类效果的各个指标都稳步上升,如样本数量从60到300后使用改进的ID3算法精确度提升了3%,而使用未改进的算法也提高了3%,除此之外随着算法的改进各个分类的指标也较于未改进有了明显的提升,例如召回率,在使用改进算法之后提高了2%。最终分类效果对比如表3

    19、所示。表3特征集降维前后对于分类效果的影响降维前降维前降维后降维后FPR8.9%3.4%Precision90.4%93.8%Recall91.1%93.5%ACC90.2%92.7%F192.0%95.2%由此可见,本改进方法在iOS平台恶意软件检测上有非常好的效果。4 结论本实验使用改进的ID3算法进行恶意软件检测,准确率达到了 92.7%,与改进前的算法相比提高了2.5%,具有很好检测效果。当前在iOS平台上的恶意软件检测研究较少且多为静态,误报率高,本文自创数据集并提出动态检测方法,解决了静态检测策略不足的问题。采用了改进ID3算法,提升了特征提取效果,并提升恶意软件检测效率以及准确率

    20、。本文自创的样本数量有限,后续可进一步扩充样本的数量并结合云端分析平台进一步提高恶意软件检测的准确率和效率。参考文献(References):1 Moon Damin and Lee JaeKoo and Yoon MyungKeun.Compact feature hashing for machine learning basedmalware detectionJ.ICT Express,2022,8(1):124-129.2 Urmila T.S.Machine learning-based malware detectiononAndroiddevicesusingbehaviora

    21、lfeaturesJ.Materials Today:Proceedings,2022,62(P7):4659-4664.3 Machine Learning Based Malware Detection:a BoostingMethodologyJ.InternationalJournalofInnovativeTechnology and Exploring Engineering,2020,9(4):2241-2245.4 王利军.决策树ID3算法的优化J.菏泽学院学报,2020,42(5):15-19,30.5 甄恩浩.基于iOS平台的恶意软件检测机制研究D.四川:电子科技大学,20

    22、15.6 梁泽华.基于iOS平台应用安全检测及防护技术的研究D.四川:电子科技大学,2017.7 胡亮.iOS 应用程序漏洞和恶意行为检测的研究D.北京:北京邮电大学,2019.8 朱琳,杨杨.ID3 算法的优化J.软件,2016,37(12):89-92.9 谢鑫,张贤勇,杨霁琳.邻域等价关系诱导的改进ID3决策树算法J.计算机应用研究,2022,39(1):102-105,112.3 结束语本文系统地分析了常用的APK加固技术特点和流程,并总结了整体加固流程实现的加壳、混淆、加密防护措施的手动破解思路和方法。该方法基于大量APK 实例总结提炼而来,经实践证明具有较强普适性,可为取证人员开展

    23、涉案APK分析取证提供指导。但我们也发现,APK的破解方法也会随着加固技术的不断演进而变化,接下来我们还将在取证实践中不断归纳和总结新的破解方法和思路,并将其集成于相应的取证工具,为涉案APP的取证分析提供一体化解决方案。参考文献(References):1 中国互联网信息中心.第50次中国互联网络发展状况统计报告R.北京:中国互联网信息中心,2022-08-31.2 斜杠青年工作室.apk加固是什么意思(浅谈安卓apk加固原理和实现)EB/OL.http:/ 用友开发中心.APK 加固原理和步骤是什么?EB/OL.https:/ 孟彩霞,林俊豪,张骁.面向非法第四方支付平台的取证分析技术研究J.警察技术,2022(4):41-45.5 李佳斌,裴洪卿,郑雄,等.第三方SDK暗刷流量的取证分析与应用J.警察技术,2022(3):57-60.(上接第31页)CECE36


    注意事项

    本文(APK加固技术破解方法研究.pdf)为本站上传会员【自信****多点】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表




    页脚通栏广告
    关于我们 - 网站声明 - 诚招英才 - 文档分销 - 便捷服务 - 联系我们 - 成长足迹

    Copyright ©2010-2024   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:4008-655-100    投诉/维权电话:4009-655-100   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   



    关注我们 :gzh.png  weibo.png  LOFTER.png