iosre Blog

iOS 逆向开发,熟悉iphone/tweak、iphone/tool、cydia的repo 制作 、cocoapods的Specs repo制作(using-pod-lib-create、private-cocoapods)

AntiJailbreak

越狱环境检测

前言 AntiJailbreak.m hook #import <mach-o/dyld.h> extern uint32_t _dyld_image_count(void) __OSX_AVAILABLE_STARTING(__MAC_10_1, __IPHONE_2_0); ...

macaddressOfJOJOWang

macaddress

前言 hook sysctl.xm platform : 使用capstone 进行hook 动态库libMobileGestalt.dylib,修改设备类型的时候 ,有些属性是失效的。 比如hw.machine,即设备类型iPhone5,2 ;这个时候我们可以直接修改获取信息 对应的方法———原因:使用sysctlbyname 函数,就比较不容易hook到...

bssid

ssid的获取

前言 ChangeCode.m sysctlbyname:Tweak.xm MSHookFunction(&CNCopySupportedInterfaces, &newCNCopySupportedInterfaces, &oldCNCopySupportedInterfaces); UUString.m #import <Syst...

A_Brief_History_of_mankind

人类简史

前言 关于作者 尤瓦尔·赫拉利是以色列历史学家,出生于1976年,牛津大学历史学博士,耶路撒冷希伯来大学历史系教授,代表作为《人类简史》和《未来简史》。尤瓦尔·赫拉利擅长世界历史和宏观历史进程研究,是学界公认的“青年怪才”。 关于本书 从十万年前有生命迹象开始到21世纪资本、科技交织的人类发展史。十万年前,地球上至少有六个人种,为何今天却只剩下了我们自己?我们曾经只是非洲角落一个毫不...

Accelerate_social_efficiency_through_meetings_and_communities

通过会议和社群,加速社交效率

前言 这一讲的关键词是“效率”,我要告诉你如何利用会议、社群,最大化你的社交效率。 你会获得会议前、会议中、会议后的三个行动清单,你还将学到如何在线上寻找和创立社群,在线下缔结真实的交情。 首先,我们要认识到,建立人脉和建立账户不一样。不要理解为:在人脉账户里,你存入你的时间精力,取出他人等量的时间精力。不对,我们的时间精力都是无价的。 所以,我们努力的方向是,让自己的信息、价值、影...

MBExample_With_action_button_cancelationExample

展示包含progress、hud.label、hud.detailsLabel的MBProgressHUD

前言 code BOOL _canceled; static MBProgressHUD *hud ; + (void)doSomeWorkWithProgress { _canceled = NO; // This just increases the progress indicator in a loop. [self gethardwareInfo]...

Modify_positioning

修改定位 直接hook CLLocation

# code /** 1. 修改定位; hook 原生API,直接替换为自己的即可 */ #import <CaptainHook/CaptainHook.h> #import "WechatPodForm.h" #import <UIKit/UIKit.h> CHDeclareClass(CLLocation); CHOptimizedMethod0(s...

swizzle_Objective-c_instance_and_class_methods

Method Swizzling

# https://github.com/kunnan/SwizzlePod CydiaSubstrate.zip CaptainHook:Common hooking/monkey patching headers for Objective-C on Mac OS X and iPhone OS. MIT licensed See Also Objective C...

Confusing_static_libraries_with_Bitcode_Sectname

混淆带有bitcode sectname 的静态库

前言 编译器混淆是基于中间代码(bitcode)进行的。那么编译生成一个带bitcode的静态库,我们就可以提取其中的bitcode进行混淆 关于bitcode的注意事项 关闭bitcode 之后,此时的test 20-08-2018, 4.41 PM.xcarchive 是没有对应的dSYMs文件 · Xcode 7默认开启...

Code_obfuscation

代码混淆

前言 在编译器处理分析生成代码的时候,来 增加一些无用的代码、拆分代码块、使代码扁平化,进而提升静态分析的难度。 Chris Lattner 生于 1978 年,2005年加入苹果,将苹果使用的 GCC 全面转为 LLVM。2010年开始主导开发 Swift 语言。 Xcode的编译器前端是clang,clang是llvm的一部分;而llvm本身是开源的,基于l...