张 乾

(灵武市公安局,宁夏 灵武 751400)

在现代信息化技术在全球的进一步推广普及背景下,智能手机成为人手必备的一种电子设备,但是手机中App软件在为人们日常生活和实际工作中带来很大便利的同时,手机App软件也存在着被网络中恶意程序入侵的危险。比如有一个恶意程序会将外表伪装成符合法律法规标准的程序、会在软件中隐藏带有不良信息的恶意网站链接以及还会有不法分子通过运用恶意程序在潜移默化中窃取手机用户的个人信息资料等[1]。基于此,应该积极探究能有效监测智能手机中恶意App程序的措施和方法。然而在手机恶意App程序开展电子数据取证工作时,逆向分析是极其关键和重要的解决措施之一,通过采用这种方法可以有效地检测出智能手机App中恶意代码的入侵,从而了解到应该采用哪种解决方法进行针对性解决。

一、手机App逆向分析研究

(一)逆向工程

所谓的逆向工程又可以被称之为反向工程(Reverse Engineering),其主要是指在已经安装成功程序的基础上,通过利用逆向工程探寻到程序的源头代码,以此研究分析完善的设计规划[2]。现阶段,社会中有许多现代企业与我国相关司法鉴定政府部门通过运用这种方法对智能手机中恶意App程序展开检测和分析研究,在这种方法中对智能手机中恶意App程序采用反汇编的手段对其App中具体功能和作用展开深层次的分析,从而明确掌握到存在恶意App程序中的恶意行为和危害,以此获得不法分子利用恶意App程序进行违法犯罪行为的有力证据或者线索。

(二)分析措施

在分析智能手机中恶意App程序过程中最为常见的方法包括有动态检测分析法和静态分析法,其中动态检测分析法就是指在虚拟技术或者沙箱环境中执行安装App软件程序,然后取证系统会在执行安装App软件程序过程中将恶意程序在其中所实行的所有恶意行为和影响详细记录下来[3]。而将沙箱环境根据空间种类进行分类,可以分为内核空间沙箱和用户空间沙箱两种,在内核空间沙箱中比较典型的有TainDroi等。而静态分析法主要是指运用逆向工程在恶意App软件程序没有运行的时候获取App软件程序的特征,在对这个特征展开研究分析,从中了解和掌握到恶意App软件程序是否恶意侵害。这种分析法与其他分析法相比的优势就是分析速度快、工作效率较高,但同时也有一些不足之处就是无法完全应对极易出现混淆的代码和多种形态技术,特别是具有一定攻击性的恶意程序[4]。将动态检测分析法和静态分析法进行有机整合,就可以对智能手机中恶意App的源码和恶意行为进行分析,以此可以将恶意App软件程序中重要数据信息提取出来,并且可以将其中相关的数据信息固定,进而完成智能手机恶意App的电子数据取证工作,获取到指控恶意App软件程序在智能手机中实行恶意行为的重要证据。

二、手机App中电子数据取证工作中逆向分析的应用实际案例研究

以下根据a某智能手机被恶意App“X约.apk”窃取个人隐私作为研究案例,分析探究手机App运用逆向分析开展如何电子数据取证工作。

(一)运用动态检测分析法的操作流程

在专门用于电子数据取证工作的电脑中安装“X约.apk”文件,将检材固定其中,然后计算出MD5的数值,然后在运行模拟器Genymotion for personal use Cust phone6.0.0版本,并在模拟器中安放“X约.apk”软件程序,在程序界面弹窗中显示“媒体内容与文件幺?是否允许继续访问您设备中保存的图片”等文字信息,并且还会显示“允许”与“拒绝”两种选项。在选择“允许”选项之后,“X约.apk”软件程序的显示页面中会出现“填写邀请码”的点击按钮,接下来就会进入到“填写邀请码”的填写框中,通过这一系列流程窃取到智能手机用户的个人隐私信息。

在运用动态检测分析法进行电子数据取证工作过程中了解到,在显示页面中出现“填写邀请码”时只要输入手机号码和邀请码二者之间的一个在点击“确定”的选项之后,程序界面机会自动提醒“需要输入正确手机号码或者邀请码”。在经过反复填写和尝试随机的几位数字后,最终程序会没有任何反应。

(二)静态分析法进行检测的过程

首先要先将工作台开启,然后运用杀毒软件对工作台中情况展开检测,接下来将所要检测的文件资料导进工作台。在借助jadx-gui-0.9.0反编译程序软件破译“X约.apk”文件,最终获得想要“X约.apk”文件的内部代码结构。在将破解文件进行归纳整理安放在特定的地方,再计算出MD5的数值,从而达到固定证据的目的。而在安卓系统中与APK程序执行互相连接的接头文件就是Android manifest.XML,这一文件提供出APK程序全部申请权限和组件。在Android manifest.XML文件内包括有APK程序向安卓系统申请的全部权限,其中分别有“读取短信”“写入外部存储”“访问具体定位”“读取联系方式”等个人隐私权限。

通过进入H5框架,可以灵活调动程序核心业务中基本入口文件manifest.json。由此可知,在“X约.apk”程序中index.html是最先开始执行的文件,在打开这一文件之后,只有“确定这一个选项”,在确认选择后就可以调用aa()的方法,通过运用这种方法可以对输入的手机号码和邀请码进行检查,然后在通过permission的方法申请获取读取存储在智能手机的联系人的权限,若是权限申请没有通过,就会在弹窗中显示提示信息“请您同意弹出的权限,便可使用程序!如果没有提示弹出,请前往系统“手机设置”中的“权限管理”找出应用,并且将通信联系人权限打开,方可以使用。若是将权限申请下来后,则可以采用success Callback的方法。在这种方法中可以灵活调用huoqu(sjh,yzm)方法执行。

执行huoqu(sjh,yzm)方法的步骤流程为,首先:将用户使用的手机号码、邀请码以及address变量中保存到智能手机的生产商家和手机型号所设定的con变量;其次,通过dclould中H5框架接口得到智能手机中通信录存储的隐私信息;另外在cong变量中导入存储所获得通信录中所有联系人的信息和手机号码;在将这些获得到的信息资料传输到终端服务器中,最后在采用相应行之有效的方法将在智能手机中获取的定位信息传送到服务器。

由此可见,通过使用“X约.apk”程序可以达到获取智能手机使用型号、定位数据信息、通信录联系人数据信息、短信信息以及将获取到的数据信息传输到终点服务器的目的。将检测出的相关代码作为证据文件,根据司法鉴定步骤流程对其进行固定,作为法院查阅证据时使用。

总而言之,通过以一款特定的手机恶意App为例,进行电子数据取证和分析研究,将在电子数据取证工作中逆向分析所发挥的作用和基本操作方式展现出来,将现代多元化的措施和手段融入其中,从而达到净化网络环境,打击不法分子的目的。