本篇内容介绍了“怎么使用radare2逆向iOS Swift应用程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用 radare2 逆向 iOS Swift 应用程序,我们将使用iGoat应用程序。我们的目标是反编译iOS Swift应用程序的外观。这是以前iGoat Objective C项目的Swift版本。使用OWASP iGoat,您可以学习iOS Swift应用程序中的漏洞。
KeychainExerciseVC.swift一旦viewDidLoad()
被调用,它会调用secureStore与userName: "iGoat"
和password: "taoGi"
。我们研究的目的就是了解这些方法在反汇编中是什么样子的。在我们开始之前,我们必须减少二进制文件体积。这可以使用radare2的rabin2完成:这将创建一个包含两个二进制文件(32/64位)的文件夹iGoat-Swift.fat/
,打开32位二进制,进行分析,并启用字符串模拟:让我们看看我们可以找到关于二进制各部分中的swift的内容:我们当前的方法不是很好(仅使用r2检查二进制,仅静态方法),我们不能指望在反汇编中找到很多东西。 我们将在以后的学习中了解如何获取更多信息(小小剧透:也涉及r2)。我们假装我们没有看到源代码,因为我们现在就是在免费云主机域名做“Keychain Exercise”。输入ic?
首先我们来看看这些类:我们可以iGoat_Swift.KeychainExerciseVC
在地址中找到0x002816c8
。另一种选择是查看flags(f
)和grep(~
)case insensitive(+
)Keychain
:我们再次看到iGoat_Swift.KeychainExerciseVC
地址中的类0x002816c8
。我们还可以获得有关此class的完整信息:注意viewDidLoad
位于的方法0x000f4fe0
。提示:icc
用于一个很好的类似c-header
的输出:如果您需要,可以将其保存到文件中,icc > iGoat-Swift.arm_32.0.h
或者只显示内部较少的文件:icc~..
func viewDidLoad()
:在视图控制器将其视图层次结构加载到内存后调用此方法。无论视图层次结构是从nib文件加载还是在loadView()方法中以编程方式创建,都会调用此方法。我们通常会覆盖此方法以对从nib文件加载的视图执行其他初始化。在这里,我们将找到练习的主要代码。如果我们要找0x000f4fe0
,我们会看到它被标记为method.iGoat_Swift.KeychainExerciseVC.viewDidLoad(我们之前在旗帜中看到过)。我们找到了“切入点”,让我们仔细检查一下。r2显示以下反汇编:方法摘要:需要注意的事项:1.func viewDidLoad()
变成objc_retain: sub.objc_retain_fe0
2.我们可以看到,即使在摘要中我们也可以找到字符串iGoat
和taoGi
。3.它sub.SaveUser_79c
使用这些字符串调用子例程。子程序sub.SaveUser_79c位于0x000f579c:方法摘要:需要注意的事项:1.XREF来自viewDidLoad
:; CALL XREF from sub.objc_retain_fe0 (0xf5080)
。2.字符串 SaveUser
。3.函数调用:sym.func.000edce8
和sym.func.000e62a0
和sym.func.000f0e34>
。4.字符串 Error updating keychain -
所以我们猜测它试图在这里更新Keychain。现在我们看到了这个字符串Error updating keychain -
……想象一下,我们还没有通过查看classes(ic)而是通过查看strings(iz)来开始,这也是一种非常常见的方法。“怎么使用radare2逆向iOS Swift应用程序”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注云编程开发博客网站,小编将为大家输出更多高质量的实用文章!
SNMP以GET-SET方式替代了复杂的命令集,可以利用基本操作免费云主机域名完成全部操作,同时,用户可以采用管理信息库标准或按标准的方式来定义自己的MIB。这样就可以通过降低网管系统中众多代理部件的成本来降低整个网管系统的成本。相关推荐: zabbixAPI…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。