从零开始学Android应用安全测试(Part1)

安全 移动安全
在本系列文章中,利用InsecureBankv2这款含有漏洞的安卓应用,我们可以了解到有关安卓应用安全的种种概念。我们将从一个新手的角度看待每一个问题。所以,我建议新手朋友可以关注下本系列文章。

在本系列文章中,利用InsecureBankv2这款含有漏洞的安卓应用,我们可以了解到有关安卓应用安全的种种概念。我们将从一个新手的角度看待每一个问题。所以,我建议新手朋友可以关注下本系列文章。

从零开始学Android应用安全测试(Part1)

由于教程是从零开始,前面的东西不免会比较基础,老鸟请先飞过吧。

移动渗透平台搭建

在对安卓应用测试之前,我们需要搭建一个合适的移动渗透平台。

首先,我们需要下载Eclipse ADT bundle,并安装。这里我就不再过多重复造轮子的事情了。

这里面有俩个文件夹,一个叫 tools,另外一个叫做platform-tools。这俩是非常重要的,是需要加入环境变量里面的。以下命令可以用来添加路径到环境变量中

export PATH=/path/to/dir:$PATH.

从零开始学Android应用安全测试(Part1)

将tools和platform-tools文件夹都添加到环境变量中,完成操作过后,你就可以随意的使用所有的命令了。然后检查是否工作,可以键入adb命令,你可以得到以下的输出结果。

从零开始学Android应用安全测试(Part1)

为了保证应用能够在我们的计算机上运行,我们还需要一款趁手的模拟器。Eclipse Android Virtual Device就是一款安卓模拟器,如何进行创建虚拟设备,朋友们可以在网上搜搜。然而,对于本系列文章,我会使用另一款工具Genymotion 来创建虚拟设备。这里有许多原因,其一是处理速度比较快,其二使用Genymotion创建的虚拟设备默认是自动获取了root权限的。这也就意味着,你可以自由的安装应用,对于审计安卓应用也方便。

完成Genymotion的安装后,你需要注册一个账号(免费的)并基于你的需求创建不同模拟器。

从零开始学Android应用安全测试(Part1)

好了,现在我们就将InsecureBankv2的源代码从github上克隆过来。

从零开始学Android应用安全测试(Part1)

打开你创建的虚拟设备,这一步骤十分简单。

从零开始学Android应用安全测试(Part1)

在刚才从github克隆的项目文件中,存在一个apk文件。你可以使用adb install InsecureBankv2.apk 命令来安装这个应用。

从零开始学Android应用安全测试(Part1)

在上图中你可以看到success,这就表示这个apk文件已经成功安装了,同时你在模拟的设备中看到对应的应用图标。但是有时候你可能只是想编译这个文件而不是运行这个apk文件。这个时候你就需要打开Eclipse找到 File -> Switch Workspace,选择你创建的 Insecurebank文件夹,然后转到File -> Import并选择现有的Android代码放进工作区。

从零开始学Android应用安全测试(Part1)

选择应用程序所在的文件夹,你可以看到Eclipse已经将应用程序放进了你的工作区。

这时候你就可以点击上端的play按钮,开始运行这个应用。在保证模拟器正常运行的情况下,选择运行安卓应用。

从零开始学Android应用安全测试(Part1)

不出意外,这时候你就可以看到应用在模拟器中成功运行了。

从零开始学Android应用安全测试(Part1)

同时启动后端的python服务,可以使用这个命令

python app.py –port 8888

从零开始学Android应用安全测试(Part1)

在这个应用中填入ip地址以及端口。

从零开始学Android应用安全测试(Part1)

现在你就可以使用默认凭证登录这个应用了。

dinesh/Dinesh@123$
jack/Jack@123$

请确保你安装了以下工具,在我们以后讨论的细节中,会用到的。

Drozer
Andbug
Introspy
dex2jar
apktool

另外,可以使用adb shell连接你的模拟器,然后看看你想要做些什么。

安卓命令合集

希望大家在空余时间多看看安卓命令[http://developer.android.com/tools/projects/projects-cmdline.html]。

真心推荐大家多到这里了解下adb[http://developer.android.com/tools/help/adb.html]尝试着玩转大多数命令。

下节预告

在下一篇文章中,我们将了解下InsecureBankv2项目中存在的各种漏洞,更详细的了解安卓应用的安全性。

InsecureBankv2项目地址:https://github.com/dineshshetty/Android-InsecureBankv2

Eclipse ADT bundle:https://developer.android.com/sdk/installing/index.html?pkg=adt

译者鸢尾注:此文原作者曾经完成了iOS安全专题。基于其完成度,鸢尾愿意跟着作者的步伐,一步一步的从零单排。

责任编辑:蓝雨泪 来源: FreeBuf
相关推荐

2022-02-16 22:57:57

Mitmproxy抓包工具

2023-12-05 13:10:00

ReflexPython

2017-02-20 10:24:41

2011-09-05 14:17:54

Sencha ToucMVC

2015-08-24 14:59:06

Java线程

2023-02-20 09:55:00

微服务框架单体架构

2015-08-26 10:01:20

iOS开发

2020-09-28 15:13:04

鸿蒙

2014-07-22 13:09:21

android

2020-11-09 11:56:49

HarmonyOS

2015-11-17 16:11:07

Code Review

2019-01-18 12:39:45

云计算PaaS公有云

2018-04-18 07:01:59

Docker容器虚拟机

2019-05-14 10:43:17

图标UI设计界面

2020-07-02 15:32:23

Kubernetes容器架构

2023-06-02 07:37:12

LLM​大语言模型

2011-04-01 15:53:20

T-SQLDateTime

2011-04-29 10:46:32

iPhone开发入门iPhoneiOS

2010-05-26 17:35:08

配置Xcode SVN

2018-09-14 17:16:22

云计算软件计算机网络
点赞
收藏

51CTO技术栈公众号