`
xidajiancun
  • 浏览: 452929 次
文章分类
社区版块
存档分类
最新评论

iOS安全攻防(五):使用Cycript修改支付宝app运行时

 
阅读更多
使用Cycript修改支付宝app运行时



Cycript: Objective-JavaScript ,它懂Objective-C,也懂javascript。
我们能够借助Cycript使用Objective-C或者javascript ,给某个正在运行的进程的runtime发送消息。
本文以修改支付宝app界面为例,介绍Cycript的使用方法。

1)安装Cycript

Cycript官方网站下载资源工具,然后推进已越狱的iPhone中,进行安装:
dpkg -i cycript_0.9.461_iphoneos-arm.deb
dpkg -i libffi_1-3.0.10-5_iphoneos-arm.deb



2)确定支付宝进程

运行支付宝app,然后获取它的进程号:
Primer:/ root# ps aux | grep Portal

mobile     479   0.6  4.3   590776  44956   ??  Ss    5:14PM   0:09.58 /var/mobile/Applications/8723004E-9E54-4B37-856D-86292780E958/Portal.app/Portal
root       497   0.0  0.0   329252    176 s000  R+    5:21PM   0:00.00 grep Portal



3)Cycript钩住支付宝进程

Primer:/ root# cycript -p 479
cy# 




4)获取当前界面的viewController并修改背景色

cy# var app = [UIApplication sharedApplication]
@"<DFApplication: 0x16530660>"

cy# app.delegate
@"<DFClientDelegate: 0x165384d0>"

cy# var keyWindow = app.keyWindow
@"<UIWindow: 0x1654abb0; frame = (0 0; 320 568); gestureRecognizers = <NSArray: 0x1654b190>; layer = <UIWindowLayer: 0x1654ace0>>"

cy# var rootController = keyWindow.rootViewController
@"<DFNavigationController: 0x1654b6c0>"

cy# var visibleController = rootController.visibleViewController
@"<ALPLauncherController: 0x166acfb0>"

cy# visibleController.childViewControllers
@["<HPHomeWidgetGroup: 0x166afbc0>","<ADWRootViewController: 0x165745c0>","<ALPAssetsRootViewController: 0x16577250>","<SWSecurityWidgetGroup: 0x166bd940>"]

cy# var assetsController = new Instance(0x16577250)
@"<ALPAssetsRootViewController: 0x16577250>"

cy# assetsController.view.backgroundColor = [UIColor blueColor]
@"UIDeviceRGBColorSpace 0 0 1 1"







当然,只是修改个背景色好没意思……
想修改更多信息,还得介绍一下另一个利器: class-dump 。下篇再总结~









分享到:
评论

相关推荐

    iOS安全攻防-v1.1

    本课程主要适用于 iOS 的开发人员,希望对 iOS 应用的安全性有深入理解并能应用于实战。

    iOS应用逆向工程:分析与实战

    1.2.1 与安全相关的iOS 逆向工程 4 1.2.2 与开发相关的iOS 逆向工程 5 1.3 iOS 软件逆向工程的一般过程 6 1.3.1 系统分析 7 1.3.2 代码分析 7 1.4 iOS 软件逆向工程用到的工具 8 1.4.1 监测工具 8 ...

    Python-mjcript基于Cycript实现的一些实用函数

    mjcript:基于Cycript实现的一些实用函数

    iOS应用逆向工程

     内容系统深入,逻辑紧密,实战性强,从iOS系统架构等理论出发,以多个实例贯穿全书,阐述class-dump、Theos、Cycript、Reveal、IDA、LLDB等常用工具的使用,通俗易懂;  总结提炼出一套从UI观察切入代码分析的...

    frida-cycript:由 Frida 提供支持的 Cycript 叉

    动机 [Cycript] 是一个很棒的交互式控制台,用于探索和修改在 iOS、Mac 和 Android 上运行的应用程序。 它由 [@saurik] 创建,主要由四部分组成: 其基于 readline 的用户界面; 以 cylang 作为输入并生成纯 ...

    iOS 应用逆向工程 分析与实战

    从iOS系统架构、文件类型等逆向理论出发,逐一讲解Class-dump、Theos、Cycript、IDA、GDB等最常用逆向工具的使用方法,进而分析使用这些工具时的思考方式和碰到问题时的解决思路,最后以社交应用消息拦截、iOS电话...

    iOS 逆向工程学习

    《iOS应用逆向工程:分析与实战》站在普通iOS开发者的角度,从iOS系统架构、文件类型等逆向理论出发,逐一讲解Class-dump、Theos、Cycript、IDA、GDB等最常用逆向工具的使用方法,进而分析使用这些工具时的思考方式...

    iOS逆向工具

    iOS逆向相关的工具 如debugserver、lldb命令行、class-dump、cycript常用命令行

    cycript_patched:为现代macOS修补的Cycript 0.9.594

    cycript_patched 带有固定LC_LOAD_DYLIB命令的Cycript 0.9.594(适用于较新的macOS版本)。 注入仍然无法正常工作,但可以改用LLDB并执行以下操作: p (( void *(*)( int ))dlsym(( void *)dlopen( " /path/to/...

    hacking-ios-on-the-run-using-cycript.pdf

    hacking-ios-on-the-run-using-cycript.pdf

    iphone4(ios7.1.2),逆向工具deb离线包

    iPhone手机端: 1.Apple File Conduit 2(替换afc2add),使PC端的管理工具可以访问iPhone的所有目录与文件...16.top是运行于iOS平台上的查看当前内存使用情况的工具. 17.Vi IMProved (即vim). 18.keychaineditor 19.netcat

    iOS逆向工程使用dumpdecrypted工具给App脱壳

    ”砸壳”在iOS逆向工程中是经常做的一件事情,,因为从AppStore直接下载安装的App是加壳的,其实就是经过加密的,这个“砸壳”的过程就是一个解密的过程。未砸壳的App是无法在Class-dump、Hopper等工具中使用的。...

    iOS逆向技术视频教程

    课时02.iOS系统安全机制 课时03.认识越狱设备 课时04.越狱环境配置 课时05.第一章文档总结 课时06.App结构与构建过程 课时07.寻找控件背后的代码 课时08.数据存储 课时09.类与方法 课时10.runtime特性 课时...

    iOS应用逆向工程(第2版)高清版 沙梓社 吴航 著

    1.2.1 安全相关的iOS逆向工程 5 1.2.2 开发相关的iOS逆向工程 6 1.3 iOS应用逆向工程的过程 7 1.3.1 系 统分析 7 1.3.2 代码分析 8 1.4 iOS应用逆向工程的工具 8 1.4.1 监测工具 9 1.4.2 反汇编工具 9 1.4.3...

    iOS应用逆向工程(第2版)

    内容系统深入,逻辑紧密,实战性强,从iOS系统架构等理论出发,以多个实例贯穿全书,阐述class-dump、Theos、Cycript、Reveal、IDA、LLDB等常用工具的使用,通俗易懂。 总结提炼出一套从UI观察切入代码分析的iOS...

    iOSREBook-issues:《iOS应用逆向与安全》 勘误

    iOSREBook-issues提交格式:印次: 第x次印刷位置: xxx页xxx行问题: 发现问题修改: 修改建议范例:印次: 第1次印刷位置: 100页3行问题: macho文件修改: 建议统一写成Mach-O文件勘误内容:第一次印刷(2018年6月)提交人...

    CycriptLoader:像 Substrate 加载 dylib 一样加载 cycriptjavascript

    用于将 cycript/javascript 加载到进程中的“框架”。 与 iOS 7 兼容 具有cycript的全部功能。 功能过滤器列表,如 Substrate: Bundles, Executables, and Classes 还具有 Enabled 键:全局启用/禁用 cycript __...

    ios应用逆向工程完整版,有标题目录

    完全站在普通iOS开发者的角度,从iOS系统架构等理论出发,以多个实例贯穿全书,阐述class-dump、Theos、Cycript、Reveal、IDA、LLDB等常用工具的使用,总结提炼出一套从UI观察切入代码分析的iOS应用逆向工程方法论。...

    iOS应用逆向工程(第2版) 黑码哥

    完全站在普通iOS开发者的角度,从iOS系统架构等理论出发,以多个实例贯穿全书,阐述class-dump、Theos、Cycript、Reveal、IDA、LLDB等常用工具的使用,总结提炼出一套从UI观察切入代码分析的iOS应用逆向工程方法论。...

Global site tag (gtag.js) - Google Analytics