- A+
关于虚拟设备这一点,如果你正在寻找一款符合你需求的安卓应用测试平台,那么你可以去看看AndroidTamer[
完成之后,我们就来对这个apk文件进行一些分析,将apk文件复制到一个独立的文件夹中。就向Ios的ipa文件一样,apk文件也是一个打包文件,所以你可以通过将文件后缀从.apk修改为.zip然后就可以进行提取了。
进入提取文件后的文件夹中,你可以看到许多的文件
在我们所要讨论的漏洞中就会讨论到安卓应用组件中的一些东西。
Assets——这个被用来存储一些原始资源文件,存储在里面的东西会编译到apk文件中。
Res——用于储存像图片,版式文件等
META-INF——这个里边存储的是关于签名的一些信息
classes.dex——这里面就是编译的应用程序代码,如果你要进行反编译操作,那么你需要先将dex文件转换为jar文件,然后用java编译器进行读取。
存储公钥证书的CERT.RSA文件是在META-INF 文件夹下面,找出公钥证书的信息可以键入一下命令
说到这里,推荐大家去了解下如何创建自己的public/privatekey
[
一旦完成应用程序的编译工作,你可以使用jarsigner工具对其完整性进行验证。
现在我们就来使用dex2jar这款反编译工具,dex2jar接受输入为.apk后缀的文件,然后将其转换为jar文件。
完成操作之后,你可以在JD-GUI中打开,并浏览其源代码。
现在我们就可以通过浏览其源代码找到一些潜在的漏洞,我们可以清楚的注意到对这个apk文件进行逆向,并浏览其源代码是多么的简单。这里我们需要注意的是,我们之所以能够这么简单就得到源代码是由于这款App没有对其源码进行模糊处理。像Google提供的Proguard工具就可对代码进行模糊处理。虽然对App源码进行模糊处理并非是万无一失的方法,但是至少还是有一部分作用,在今后的文章中我们可能就会遇到对代码进行了模糊处理的案例。
在本节中,我们了解到如何从一款App中提取信息。
在下一节中,我们将看到在InsecurBankv2.中一些不同类型的漏洞了。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫