您的位置:首页 > 移动开发 > IOS开发

iOS应用安全Part1:搭建移动渗透测试平台

2015-03-13 10:24 435 查看
【说明】英文原文发表时间:2013.4.26,原文链接:点击这里

在本系列文章中,我们将共同学习针对iOS应用的渗透测试和漏洞评估的相应工具和技术。

越狱你的iOS设备

如果你是认真对待iOS安全的,那么拥有一个越狱设备是必需条件。在本节中,我们将看一下如何越狱一个iOS设备。越狱一个设备有很多优势,你可以安装一些如nmap、metasploit等这样的工具,你甚至可以在越狱设备上运行自己的python代码。想象一下,在手掌中你就能对网站进行漏洞扫描,这将是多么方便和炫酷的事。如果你想了解更多关于越狱和越狱的优势,我推荐你看一下这篇文章

其实,越狱你的设备很简单,只需要下载一个越狱软件并点击它开始越狱。如果你的设备运行的系统版本是iOS 6.x,我推荐你使用evasiOn来越狱你的设备;如果是iOS 5.x,推荐使用redsnOw

在本文中,我将越狱我的新iPad(第三代),运行系统版本为iOS6.0.1。一旦你下载了evasiOn并运行了它,你将看到它会自动检测设备并告诉你该设备能否越狱。



所有你需要做的只是点击越狱软件,接下来就让evasiOn完成所有的魔法表演。



正如你所看到的,越狱过程已经开始。一段时间之后,evasiOn将重启设备并运行利用程序。



一旦利用程序运行结束,它将在设备上安装Cydia及其包列表。Cydia是一个GUI,它允许你下载软件包和其他的APP到你的越狱设备上,这些APP你通常在App商店里找不到。大部分情况下,所有的越狱软件都会默认在你的设备上安装Cydia,你可以将Cydia称为越狱设备的APP商店。



再等待一会儿,直到你看到了这个提示。



如果打开你的设备,你会发现一个新的名为“Jailbreak”的APP图标出现了。点击它以完成越狱过程。



你将会看到设备重启,你需要耐心等待此过程的结束。一旦设备重启结束,你将看到一个名为“Cydia”的APP显示在你的APP列表中,这表示你的设备已经成功越狱。
祝贺你,你已经取得了iOS hacking的第一次飞跃。

搭建一个移动审计平台

既然你已经成功越狱了设备,下一步就是安装一些非常重要的linux命令行工具,例如wget、ps、apt-get以及其他的用来对iOS应用进行审计的程序。然而,首先也是最重要的就是在你的设备上安装OpenSSH,它将允许你登录你的越狱设备并执行其他任务,稍后我们将会在本文中看到。

打开Cydia,点击搜索选项并搜索OpenSSH。



点击并安装OpenSSH。



这将会在你的设备上安装OpenSSH。

在我们使用ssh登录你的设备之前,我们还应该安装一些其他的命令行工具。几乎所有流行的黑客工具都可以通过使用BigBoss Recommended tools进行安装,它也自带了一些黑客工具。为了安装BigBoss Recommended tools,仅仅需要在Cydia中搜索它并点击安装。



它安装的一些重要的命令行工具包括:APT0.6 Transitional、Git、GNU Debugger、less、make、unzip、wget和SQLite 3.x。

我们能做的另一件事就是从Cydia安装MobileTerminal,它允许你直接在设备上运行终端命令,而不必从另一个不同系统上通过SSH登录到设备上。同样的,下载MobileTerminal到你的设备上也非常简单,只需要在Cydia中搜索它并点击安装。



一旦安装成功,你将能看到一个名为“Terminal”的APP图标。



点击它,将会弹出一个终端。现在你可以尝试在终端上运行任何Unix命令。在本文中,我通过使用命令“ps”来获得所有运行进程的列表。



正如你所看到的,它工作了。

那么现在我们看一下能否使用SSH登录到我们的越狱设备上。请确保你的笔记本和设备连接在同一个网络中,然后找出设备的IP地址。为了找到你的设备的IP地址,只需要依次访问Settings--->Wi-Fi,然后点击你的设备所连接的网络。



本例中我们可以看到,设备的IP地址是192.168.2.3。下面我们使用SSH以root用户登录设备,只需要输入下图中的指令就可以。Root用户的默认密码是“alpine”,不过强烈建议你在安装OpenSSH完成后就尽快修改密码,因为很多恶意软件都会使用默认的账号和密码登录到你的设备并窃取信息。要想修改密码,你只需要输入“passwd”,然后两次输入相同的新密码,这样就可以修改root用户的密码啦。所有的步骤在下图中都有展示:



注意:在运行任何需要root用户权限的指令时,请确保Cydia在后台运行,因为Cydia是以root用户身份运行的,所以不可能锁定一个Cydia正在使用的进程。

一旦执行结束,需要执行指令“apt-get update”来得到最新的包列表。



此外,执行“apt-get upgrade”指令也是一个不错的选择,这将返回设备上已经安装的软件包的新版本,而使用指令“apt-get update”将不会返回最新版本信息。



接下来,需要做的就是安装class-dump-z,它可以用来从iOS应用程序中dump类信息。如果你想得到此应用,可以访问它的官网,然后复制最新版本的链接。在写本文的时候,最新版本是0.2a。



现在,SSH到你的设备,并使用指令“wget”从刚才复制的链接获取class-dump-z文件。



另一个方法是,直接在系统上下载该文件,然后使用sftp将它上传到你的设备。一旦下载完成,使用tar程序提取归档文件。



上面操作一旦完成,进入文件夹“iphone_armv6”并复制class-dump-z可执行文件到/usr/bin目录,放到这里可以确保在设备上的任何地方你都能运行class-dump-z。一旦你完成了该文件的复制,输入class-dump-z,如果你得到的输出内容如下图所示,这表示class-dump-z已经成功安装。



扩展阅读

目前来看,还没有太多有关iOS安全的资源,但是这里有一些很不错的资料:

SecurityTube有一个非常详细的iOS安全课程。

Security Learn有一些关于iOS应用渗透测试的好文章。

Hacking and Securing IOS applications可能是我读过的有关攻击iOS应用的最好的书。

Lookout的博客是另一个学习移动平台最新技术和利用技术的很有价值的资源。

结论

在本文中,我们学习了如何在越狱设备上搭建一个移动审计环境。在下一篇文章中,我们将共同学习如何使用class-dump-z来分析应用中的类信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: