ios逆向之:dump应用的头文件

平常我们用class-dump导AppStore中下载的应用的头文件时,就dump出了个CDStructures.h文件,还什么内容都没有。

这就属于常识问题了-_-


就像这样,所以呢,我们还需要先拿个榔头给它砸一下壳

这里借用了某行的APP,无恶意行为

先看看工具准备吧,什么 dump、decrypted、Xcode、crcyript 啦 网上都是有资源滴

dumpdecrypted  github地址  https://github.com/stefanesser/dumpdecrypted

ios逆向工具集(后面提到)

class-dump官网  http://stevenygard.com/projects/class-dump

好了,先从App Store中下载需dump的应用,关掉所有后台进程,运行它,看看ipad的应用进程

ipad:~ root# ps -e | grep Application


没错啦,进程路径已经找到了,我们瞧瞧它的沙盒路径,上cycript去定位app的沙盒路径 (ps: Ctr+D退出cycript)

ipad:~ root# cycript -p CCBMobileBank

cy#[[NSFileManagerdefaultManager]URLsForDirectory:NSDocumentDirectoryinDomains:NSUserDomainMask][0]

#"file:///var/mobile/Containers/Data/Application/D297B5AF-E508-4697-B69F-59A88FFE1A54/Documents/"

cy#


scp 传砸壳的榔头

scp+[dumpdecrypted.dylib 文件路径][email protected][设备IP]+目标APP沙盒路径

现在就可以开始砸壳了,为避免 killer 9,使用moblie用户ssh设备,cd到app的沙盒目录,开始砸壳

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib + 目标APP进程路径


ls -l 一下,多了个 .decrypted文件


就导出这个文件,dump它,有时候需要指定 --arch armv7 参数,不然只能导出CDStructures.h这个文件啦

xiaoyue:CCBdumpfile 0o0$ class-dump -S -s -H CCBMobileBank ./

xiaoyue:CCBdumpfile 0o0$ rm CCBMobileBank.decrypted

xiaoyue:CCBdumpfile 0o0$


这样,头文件就出来了


另外,dumpdecrypted 从仓库下下来,别忘记编译一下,可以先cat下 Makefile 文件,

没什么要修改的参数,就直接编译  DDOS  www.33ddos.com  DDOS攻击  ddos  ddos攻击

原文地址:http://blog.51cto.com/13659284/2089338

时间: 2024-07-30 02:46:41

ios逆向之:dump应用的头文件的相关文章

iOS - 逆向 - Objective-C代码混淆 -confuse.sh文件写法

class-dump可以很方便的导出程序头文件,不仅让攻击者了解了程序结构方便逆向,还让着急赶进度时写出的欠完善的程序给同行留下笑柄. 所以,我们迫切的希望混淆自己的代码. 混淆的常规思路 混淆分许多思路,比如: 1)花代码花指令,即随意往程序中加入迷惑人的代码指令 2)易读字符替换 等等 防止class-dump出可读信息的有效办法是易读字符替换. Objective-C的方法名混淆 混淆的时机 我们希望在开发时一直保留清晰可读的程序代码,方便自己. 同时,希望编译出来的二进制包含乱七八糟的混

转:IOS:查找SDK路径和Framework头文件

通过Terminal进入Xcode.app所在目录,可以找到相应的SDK路径,相关 的Framework的头文件也在改目录下. 示例如下: Frameworks /Applications/xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/System/Library/Frameworks 头文件: /Applications/xcode.ap

iOS开发中一些公用的头文件

转自:http://my.oschina.net/u/1025290/blog/300037 #ifndef UI_DEFINITIONS #define UI_DEFINITIONS #pragma mark UI相关常量 //导航栏高度 #define CONTENT_NAVIGATIONBAR_HEIGHT 44 //底部tabbar 高度 #define CONTENT_TABBAR_HEIGHT 49 //英文状态下键盘的高度 #define ENGISH_KEYBOARD_HEIGH

iOS中中UIView头文件详细解析

@interface UIView : UIResponder<NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem> /** *  通过一个frame来初始化一个UI控件 */ - (id)initWithFrame:(CGRect)frame; // YES:能够跟用户进行交互 @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteraction

看别人iOS应用的界面和头文件。

一.看别人应用界面 1.准备越狱手机一部,网上搜索一键越狱,会有很多应用. 2.越狱完成安装openSSH和cydia substrate 3.拷贝 scp libReveal.dylib [email protected]设备IP地址:/Library/MobileSubstrate/DynamicLibraries/ 4.拷贝 scp libReveal.plist [email protected]设备IP地址:/Library/MobileSubstrate/DynamicLibrari

iOS布局---pch头文件设置和字号适配

由于4s,5s,6,6p,界面尺寸差别过大,如果在界面上,只是用同一个字号,在4s和5s上就会略显偏大,而在6p上就会显小.并且ios9系统原生字体相较于ios8和之前原生字体略粗,在字号上也错了一号,所以在不同的设备上,字号也应该有所不同,ios9上的字号要比ios8上的字号都要略小一号. 我设置的字号适配需要用到全局引用文件pch文件,如果你的项目中已存在pch文件,请忽略1-2步骤. 在Xcode6之前,新建工程的时候,系统就会帮我们自动新建一个以工程名为名字的pch (precompil

ios多线程之NSThread头文件详解

1.NSThread 头文件中的相关方法 //获取当前线程 +(NSThread *)currentThread; //创建线程后自动启动线程 + (void)detachNewThreadSelector:(SEL)selector toTarget:(id)target withObject:(id)argument; //是否是多线程 + (BOOL)isMultiThreaded; //线程字典 - (NSMutableDictionary *)threadDictionary; //线

iOS import framework头文件时报错could not build module xxx

导致这个错误的原因有多种: 1.库的search paths没有设置对. 2.库里面某些头文件找不到. 而导致.h头文件找不到的原因也有多种: (a)search paths没设置对,文件可能换过位置. (b)文件可能删除了,出现红色情况. (c)有时明明有那个.h文件,search paths是对的,但还是会报错xxx.h文件找不到,那么检查一下库里的这个.h头文件是否是在public里 暂时先列举这些原因,肯定还有其他原因的.

iOS全局头文件引用报一些系统库出错

#ifdef __OBJC__ #import "UIButton+Block.h" #endif // 加入这两句在中间引入头文件