Toggle navigation
iosre Blog
Home
About
Tags
Tags
满激情的逆向工程师、C/C++/java/Object-C/Swift开发者、安全研究员。
iOS
Debug
Open_Source_Framework
RunLoop
Swift
Xcode
ReactiveCocoa
Runtime
Mac
Efficiency
Terminal
Git
设计模式
objc
CocoaPods
ruby
RVM
shell
iosre
Cycript
OutlineOfChineseHistory
iget
Workplace
GoogleMethodology
Search
CocoaTouchStaticLibrary
GithubPages
ReadaBookEveryDay
Thread
miniprogram
flex
Sublime
es6
internet
minigame
py
Xiang_Shuai_Beida_Finance_Course
aso
theos
MonkeyDev
frida
WebScoket
note
MobileSubstrate
security
dyld
lldb
MGCopy
SpringBoard
Logical_thinking
UUID
Knowledge_is_power
RegularExpressions
jb
How_to_be_a_master_of_network_management
Assembly
The_outline_of_Western_history
hook
tweak
DeviceInfo
Video
iOS
App_processes_can_still_be_broadcast_when_they_are_in_a_background_state_where_they_may_be_killed
通过NotificationServiceExtension实现【app进程处于后台或许被杀死的状态时候仍然可以进行语言播报】
Fixed-point_Zoom_pop-up_window
iOS开发中常用的动画(定点缩放弹窗)
R.swiftDemo
Get strong typed, autocompleted resources like images, fonts and segues in Swift projects
Swift_lazy_getter
lazy、getter
rvm_guide
RVM 实用指南
how_to_Using_CocoaPods
CocoaPods的安装和使用
swift_printLog
利用`file`、`line`、`column `、`function `强化swift中的print
New_in_Swift_3.1
What’s New in Swift 3.1?
AsyncDisplayKit_2.0
AsyncDisplayKit Tutorial:Getting Started
making_private_cocoapods
use a private Spec Repo to do sharing components across projects:deploy Podspecs to your own private specs repo with` pod repo push REPO [NAME.podspec]`
getting_setup_with_trunk
guide to deploy to the public pod repo :`pod trunk push [NAME.podspec] `
ReactiveCocoa
函数式编程框架ReactiveCocoa
iOS_Timer
iOS Timer:`dispatch_source_t`、`CADisplayLink`、`NSTimer `
about_Xcode
Xcode 的一些基本操作
IB_DESIGNABLE&IBInspectable
以`设置控件圆角和描边为例`谈谈IB_DESIGNABLE、IBInspectable
Objective-C:RunLoop
深入理解RunLoop
avaudiorecorder
avaudiorecorder的averagePowerForChannel:测噪音
iOS_GestureRecognizer_CGAffineTransform
手势与变形
Debug
DerekSelander_LLDB
A collection of LLDB aliases/regexes and Python scripts to aid in your debugging sessions
Chisel_fblldb.py_lldbinit
Chisel is a collection of LLDB commands to assist debugging iOS apps.
CycriptUsefulCommand
常用的cycript命令、分析思路
UIButton_sendActionsForControlEvents
iOS 代码触发button点击事件
swift_printLog
利用`file`、`line`、`column `、`function `强化swift中的print
Xcode_Debug
iOS开发调试Bug的方法
Open_Source_Framework
One_viewController_can_display_multiple_viewController
A custom PageViewController for iOS with the tab bar control at the top
MBExample_With_action_button_cancelationExample
展示包含progress、hud.label、hud.detailsLabel的MBProgressHUD
ReactiveCocoa
函数式编程框架ReactiveCocoa
yy_modelWithJSON & JSONModel
yy_modelWithJSON:json
RunLoop
iOS_Timer
iOS Timer:`dispatch_source_t`、`CADisplayLink`、`NSTimer `
Objective-C:RunLoop
深入理解RunLoop
Swift
Swift&objc4HMAC_SHA1
swift中利用HMAC的SHA1对文本进行加密
R.swiftDemo
Get strong typed, autocompleted resources like images, fonts and segues in Swift projects
Swift_lazy_getter
lazy、getter
swift_printLog
利用`file`、`line`、`column `、`function `强化swift中的print
New_in_Swift_3.1
What’s New in Swift 3.1?
Swift&objc_how_to_using_delegate
objc、Swift中如何使用代理模式
IB_DESIGNABLE&IBInspectable
以`设置控件圆角和描边为例`谈谈IB_DESIGNABLE、IBInspectable
Xcode
iOS_Auto_Archive_Script
利用xcdeobulid打包项目
how_to_Using_CocoaPods
CocoaPods的安装和使用
swift_printLog
利用`file`、`line`、`column `、`function `强化swift中的print
New_in_Swift_3.1
What’s New in Swift 3.1?
about_Xcode
Xcode 的一些基本操作
ReactiveCocoa
ReactiveCocoa_MVVM
函数式编程框架 ReactiveCocoa 进阶
ReactiveCocoa
函数式编程框架ReactiveCocoa
Runtime
AssociatedObject
动态创建属性:使用分类、@dynamic、objc_setAssociatedObject、objc_getAssociatedObject 进行实现
Objective-C_Runtime_Cases
Runtime的使用案例
OC_Runtime_system
read this document to gain an understanding of how the Objective-C runtime system works and how you can take advantage of it
Mac
checkcoverage
查看保障状态
scp_mac
iphone scp 到Mac
useful_Git_Command
常用的Git指令:https://github.com/zhangkn/KNBin
Mac_Automator
在Mac下为终端设置快捷键,创建工作流,调试AppleScript
Efficiency
previous_path_key_Bindings
文档注释和Alfred的file search navigation的快捷键冲突的解决方式
deviceconsole
An iOS system log tailer that doesn't suck. Improved
typora
Markdown编辑器:Typora will give you a seamless experience as both a reader and a writer
snippets-lab
SnippetsLab is an easy-to-use code snippets manager
alfredapp
Alfred is an award-winning app for Mac OS X which boosts your efficiency with hotkeys, keywords, text expansion and more. Search your Mac and the web, and be more productive with custom actions to control your Mac
Postman-osx-6.1.3
Postman helps you develop APIs faster
autojump
autojump is a faster way to navigate your filesystem. It works by maintaining a database of the directories you use the most from the command line.
tree
Mac终端显示输树状文件结构
Mac_Automator
在Mac下为终端设置快捷键,创建工作流,调试AppleScript
Terminal
grep
file pattern searcher
find
walk a file hierarchy
du
display disk usage statistics
clean_Mac
利用 du 和sort 找出大文件、目录
tree
Mac终端显示输树状文件结构
useful_Git_Command
常用的Git指令:https://github.com/zhangkn/KNBin
Git
recover_branch
git branch recover_branch commit_id;git 误删分支恢复方法
gitmodules
submodules a URL is specified which can be used for cloning the submodules.
git_subtree
以子目录形式引用外部项目
making_private_cocoapods
use a private Spec Repo to do sharing components across projects:deploy Podspecs to your own private specs repo with` pod repo push REPO [NAME.podspec]`
getting_setup_with_trunk
guide to deploy to the public pod repo :`pod trunk push [NAME.podspec] `
useful_Git_Command
常用的Git指令:https://github.com/zhangkn/KNBin
设计模式
Swift&objc_how_to_using_delegate
objc、Swift中如何使用代理模式
objc
Record_a_few_questions_about_iOS_discussed_with_a_friend
记录和一个朋友讨论的关于iOS的几个问题:新增weak修饰的object属性的实现方式、UI 事件处理的NSRunLoopMode、和定时器的NSRunLoopMode 的关系是什么样的时候,可以保证它们能并发执行不影响个自的运行
addObserver_forKeyPath_options_options
An instance 0x18a02a00 of class WCNewCommitViewController was deallocated while key value observers were still registered with it.
UIDeviceBattery
电池的状态处理:电池状态获取及监测、电池电量获取及监测、低电量模式切换监测
NSLocale
note that this list does not indicate what language the app is actually running in; the NSBundle.mainBundle object determines that at launch and knows that information
saveDictionaryToKeyChain
保存字典字符串到钥匙串
CFUUIDCreate
Create and return a brand new unique identifier
NSCoding
存储自定义对象到文件的解决方案
stringByReplacingOccurrencesOfString_substringWithRange_NSRegularExpression
处理字符串的常用方法
UIImageTobase64EncodedString
二维码的base64字符串转换;通过我们更喜欢传递二维码的信息
respondsToSelector
处理不同版本的API
EnumStringinterrotation
枚举字符串互转,常用语服务端不使用整型枚举的场景
NSAssert
Terminating app due to uncaught exception `'NSInternalInconsistencyException'`
HBLog
cat /opt/theos/vendor/include/_Prefix/HBLog.h
UIButton_sendActionsForControlEvents
iOS 代码触发button点击事件
develop_process_MobileSafari
Safari 远程调试
convertHexStrToString
将十六进制的字符串转换成NSString则可使用如下方式
two_day_UIImageView_UILabel_Plist
02天-图片浏览
DeviceId
iOS App获取唯一标识符方案
objc_brief_introduction
01天-入门
symbolicatecrash
符号化
NSPredicate
谓词NSPredicate技术的应用
CFNotificationCenterAddObserver
CFNotificationCenterAddObserver 的使用
NSTask_posix_spawn_popen
NSTask、posix_spawn、popen 的应用例子
NSFileManager_NSFileHandle
NSFileManager类对文件的操作、NSFileHandle对文件内容进行读取和写入例子
Swift&objc4HMAC_SHA1
swift中利用HMAC的SHA1对文本进行加密
Swift&objc_how_to_using_delegate
objc、Swift中如何使用代理模式
CocoaPods
pod_lib_create
采用 `pod lib` 开发并打包静态库,比我之前自己搭建的模板更方便
how_to_Using_CocoaPods
CocoaPods的安装和使用
making_private_cocoapods
use a private Spec Repo to do sharing components across projects:deploy Podspecs to your own private specs repo with` pod repo push REPO [NAME.podspec]`
getting_setup_with_trunk
guide to deploy to the public pod repo :`pod trunk push [NAME.podspec] `
ruby
rvm_guide
RVM 实用指南
how_to_Using_CocoaPods
CocoaPods的安装和使用
RVM
rvm_guide
RVM 实用指南
shell
uname
The uname utility writes symbols representing one or more system characteristics to the standard output
ln_How_to_remove_symbolic_link
How_to_remove_symbolic_link
rvm_guide
RVM 实用指南
iosre
Safe_Mode
安全模式的处理
ar
create and maintain library archives,分析object文件
IDA
Interactive Disassembler Professional(“交互式反汇编器专业版”) 共有(File , Edit , Jump , Search , View , Debugger , Options , Windows , Help)9个模块.
Hopper
反汇编、伪代码转换、查看交叉引用、跳转地址、修改汇编
jailbreak_toolkit
越狱设备
iosre_anti
iOS 应用逆向与安全
dumpdecrypted
Dumps decrypted mach-o files from encrypted applications、framework or app extensions.
class-dump
Generate Objective-C headers from Mach-O files
hooking-swift-methods
利用theos、MSHookFunction、MSFindSymbol进行实现
hookClass_knhook_hookClassLog
hookClassLog 打印类的执行方法
iosObfuscation
马甲包混淆方案
` __attribute__`
`__attribute__((constructor))`在`main()` 之前执行,`__attribute__((destructor))` 在`main()`执行结束之后执行
ios-ssl-kill-switch
Blackbox tool to disable SSL certificate validation - including certificate pinning - within iOS Apps
iOS-private-api-checker
Developer tool to scan iOS apps for private API usage before submitting to Apple
iOS-checkIPA
Scans an IPA file and parses its Info.plist and embedded.mobileprovision files. Performs checks of expected key/value relationships and displays the results.
Keychain-Dumper
A tool to check which keychain items are available to an attacker once an iOS device has been jailbroken
Mach-O_introduce
Mach-O基础知识
Mach-O
mach-o文件解析
iosreWIKI
IOS安全学习资料汇总
iosre_wx
相关的参考资料
dismissViewControllerAnimatedUIAlertController
UIIAlertController的自动消失
com.apple.storeservices
StoreServices.framework的应用
wifiutil
连接特定Wi-Fi
iosre_tool
逆向常用工具
YYWKWebView_evaluateJavaScriptFromString
YYWKWebView 在oc 执行js 的使用方法
how_to_host_cydia_repo
CycriptTricks
Powerful_private_methods
Cycript
cy_p
cycript -p /var/root/utils.cy > /dev/null; cycript -p $1;
CYListenServer
开发集成cycript
CycriptUsefulCommand
常用的cycript命令、分析思路
CycriptTricks
Powerful_private_methods
OutlineOfChineseHistory
Powerful_Clan_Society
中国史纲之豪族社会篇
Feudal_society
中国史纲之封建社会
iget
Effectively_Enhance_The_Value_Of_Workplace
精品课之‘有效提升你的职场价值‘
Workplace
Resume
实时最新的个人简历
Resume
201807的个人简历
Personal_Development_Skills_Introduced
201806个人简历
Effectively_Enhance_The_Value_Of_Workplace
精品课之‘有效提升你的职场价值‘
GoogleMethodology
How_to_implement_the_function_of_spelling_error_correction
怎样实现拼写纠错的功能?
Viterbi_and_Qualcomm_Corp
CDMA、FDMA、TDMA,解决移动通信的传输安全和带宽问题
Viterbi_algorithm
通信中使用最多的算法-----维特比算法
Equivalence_problems_and_artificial_intelligence
等价问题和人工智能
Why_do_good_nvestors_never_draw_K-line
来信补充 | 为什么好的投资人从来不画K线
There_are_no_silly_questions_only_people_who_pretend_to_be
第145封信 | 没有傻问题,只有不懂装懂的人
The_longest_growth_period_of_a_stock
股票最长的增长期
My_speech_at_the_global_start_of_today's_brief_history
来信补充 | 我在《今日简史》全球首发上的讲演
Is_there_a_way_to_find_a_regular_process
答读者问35 | 寻找规律的过程,有方法可循吗?
How_many_1_in_the_32-bit_binary
32位的二进制里有多少个1?
How_do_I_download_all_the_pages_on_the_entire_Internet
第141封信 | 如何下载整个互联网上的全部网页?
Graph_theory_and_computer_science
第140封信 | 图论和计算机科学
currency
<吴军的谷歌方法论>之'货币的起源及其特质'
Venture_Capital_Investment
<吴军的谷歌方法论>之'什么是风险投资'
TheWayOfThinking
<吴军的谷歌方法论>之'计算机思维‘
Beyond_Free
<吴军的谷歌方法论>之'超越免费'
Search
githubSearch
Advanced github search options
GoogleHacking
Advanced Google Dorking Commands
CocoaTouchStaticLibrary
pod_lib_create
采用 `pod lib` 开发并打包静态库,比我之前自己搭建的模板更方便
setup_Cocoa_Touch_Static_Library
搭建一个针对iOS静态库开发的主项目,提高开发效率,方便调试
GithubPages
Github_Pages_Useful_Tool
维护GitHuh_Pages和jekyll搭建的个人博客,我写文章常用的辅助工具:ImageOptim、ipic、MacDown
ReadaBookEveryDay
Alliance
联盟
A_Brief_History_of_mankind
人类简史
The_summit_of_the_Tide
《浪潮之巅》| 张凯解读
The_road_to_the_university
大学之路
The_light_of_Civilization
文明之光
The_beauty_of_mathematics
《数学之美》音频【宝木】修改
The_age_of_Intelligence
《智能时代》|张凯解读
The_Mystery_of_Silicon_Valley
硅谷之谜
How_to_get_from_making_Big_Country_to_great_power
罗胖精选 | 如何从“制造大国”到“强国”?
You_can_talk_about_the_point
开口就能说重点
The_logic_of_the_rich
《富人的逻辑》| 张玥解读
Online
在线
Human-Machine_Platform
人机平台
Founder_Spirit
创始人精神
Enter_2050
<走进2050>
12_Basic_of_the_work
12个工作的基本能力
Pyramid_principle
金字塔原理
The_wisdom_of_decision-making
决策的智慧
Life_sorting
怦然心动的人生整理魔法
Copywriting_Manual
《文案创作完全手册》
how_to_get_a_venture
《创业,如何搞定风投》
Gamified_thinking
《游戏化思维》
Life_guidance_algorithm
指导生活的算法
hub_Display
《枢纽》--今天中国在世界上的位置:世界秩序的枢纽
Thread
Thread_Management
an overview of the thread technologies available in OS X and iOS along with examples of how to use those technologies in your applications
miniprogram
performance
tips&tools
custom_component
将复杂的页面拆分成多个低耦合的模块,与基础组件的用法非常相似
API
微信原生API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能
notice
高效触达用户的模板消息能力
component
组件是视图层的基本组成单元,通过组合这些基础组件进行快速开发
WXSS
WeiXin Style Sheets 样式语言,用于描述 WXML 的组件样式
wepy_Advanced
wepy进阶介绍
wepy
小程序组件化开发框架
WXS
WeiXin Script 结合 WXML 构建页面结构
miniprogram_framework_view
视图层
wxadoc_devtools
微信开发者工具
minicode
创建代码片段
miniprogram_Code_that_constitutes
小程序的代码构成
flex
flex_layout
Flex 布局教程:语法篇
Sublime
Sublime_plugin
小程序开发相关的插件下载
es6
es6_function
函数的扩展
ECMAScript_6_let_const
let 和 const 命令
internet
tcpdump
截获分析网络数据包
protocol
协议三要素
ifconfig
查看 IP 地址
Wireshark
wireshark基本用法及过虑规则
Network_Layer
揭秘层与层之间的关系
minigame
game
小游戏
py
dump.py
frida-ios-dump 基于frida提供的强大功能通过注入js实现内存dump然后通过python自动拷贝到电脑生成ipa文件
debug_py
调试py脚本
Python_brief_introduction
Python 简介
Xiang_Shuai_Beida_Finance_Course
The_third_week
存款准备金、基准利率
How_modern_people_resist_risks
第一周和第二周
aso
aso
aso、PTFakeTouch
theos
Theos
Unified cross-platform Makefile system
MonkeyDev
MonkeyDev_Tricks
MonkeyDev 的使用小技巧
frida
The_use_of_Frida
通过Frida提高的python接口、注入js调用native的函数、利用Frida提供的各种动态函数拦截功能,实现对class的替换和监控( 这个高级功能是由js的API提供)
install_frida_on_device_and_mac
Frida的安装
WebScoket
socketRocket
A conforming Objective-C WebSocket client library.
WebSocket
一种网络通信协议,提供全双工通信信道,以基于事件的方式,赋予浏览器实时通信能力;协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。
note
entropyOfInformation
信息
And_even_but
也许 甚至 但
MM.sqlite
MM.sqlite
MobileSubstrate
MobileLoader
将第三方动态库加载到运行的目标应用中
MobileHooker
替换系统和应用的方法
security
AntiJailbreak
越狱环境检测
Confusing_static_libraries_with_Bitcode_Sectname
混淆带有bitcode sectname 的静态库
Code_obfuscation
代码混淆
String_encryption
字符串加密,使用clang-c接口将源代码转换成抽象语法树,并对抽象语法树进行遍历和分析,帮助我们分析代码中存在的字符串;进而对其中的字符串进行加密处理,来防止静态分析
Static_obfuscation
静态混淆,使用宏进行替换字符串,或者解析mach-o中对应的section进行类名和方法名的替换
HookDetection
反注入:注入检查机制,获取加载的模块名,判断是否都在白名单中;hook 检测:method swizzle、符号表替换、inline hook
Dynamic_protection
反调试、反反调试、反注入、hook检测、完整性校验
AntiAntiDebug
反反调试:针对ptrace、sysctl、syscall,采用hook函数->判断函数-〉返回结果的流程;hook的方式有越狱环境的hook、非越狱环境的hook以及在lldb的时候采用python脚本自动在目标函数设置条件断点,在断点的回调中改变对应的寄存器。
Security
安全保护
sanbox_Library_Caches_Snapshots
应用进入后台时的截屏行为,防止手机截屏图片泄密方案:
Keyboard
键盘缓存
Basic_Linux_profiling
List of handy commands that will allow you to find out more about the linux host
ethical-hacking-mobile-devices-and-platforms
Application data storage;Stored Data Protection;Cached and temp data;URL handlers;Binary protection;iOS Security
codesign
security:Command line interface to keychains and Security framework;codeding;重签名
dyld
Dyld_Introduction
动态库: 静态库、动态库的区别,编译和注入;导出和隐藏符号表;
code_Signature
Mach-O文件的签名信息
lazy_bindding
懒加载和非懒加载
dyld
dyld 简介
lldb
LLDBUsefulCommand
lldb 调试常用的命令
MGCopy
UUIDString
设备udid的收集
ios10_device_hook
iPhone device information fake tweak! uuid, idfa, etc.以及一些硬件信息的一些常用key
capstoneHook64_capstoneHook32
disassemble MGCopyAnswer and locate the subroutine for hooking
MGCopyAnswer_libMobileGestalt.dylib
硬件信息的获取和修改
SpringBoard
SpringBoard
分析SpringBoard的一些类和方法
Logical_thinking
The_Misunderstood_comfort_zone
被误解的舒适区
How_to_understand_other_people's_narrating
如果听懂别人的<画外音>
UUID
UUIDString
设备udid的收集
Knowledge_is_power
How_to_become_a_non-entangled_person
怎样成为不纠结的人
How_to_be_a_popular_person
怎样成为一个受欢迎的人
How_to_force_yourself_to_be_a_progressive_person
第六期:怎样逼自己成为一个上进的人?
How_to_find_a_suitable_job
第五期-怎样找到一份合适的工作
How_to_regain_the_trust_of_others
怎样重新获得别人的信任
How_to_be_a_man_of_no_impulse
怎么样成为一个不冲动的人
How_to_be_a_more_valuable_person
怎样做一个更有价值的人
How_to_Marry_yourself
怎样把自己嫁出去
RegularExpressions
Regular_expressions_that_are_commonly_used
常用的正则表达式
jb
keychain_Accounts3
帐号信息的分析以及清除
electra1131
Electra for iOS 11.0 - 11.3.1
How_to_be_a_master_of_network_management
Accelerate_social_efficiency_through_meetings_and_communities
通过会议和社群,加速社交效率
How_to_turn_to_others_with_grace
如何优雅地求助
Let_new_friends_like_you_willingto_help_you
让新朋友喜欢你,愿意帮助你,为你·背书·
Find_and_contact_your_target_person
找到并联系你的目标人物
Visualize_your_Contacts
可视化盘点自己的人脉
Maintain_and_upgrade_a_long_friendship
维护和升级长久的友谊
Assembly
arm
arm汇编
The_outline_of_Western_history
What_the_hell_is_the_West
到底什么是西方
hook
swizzle_Objective-c_instance_and_class_methods
Method Swizzling
hook_methods_in_ios
Common hook methods in iOS
tweak
Modify_positioning
修改定位 直接hook CLLocation
DeviceInfo
macaddressOfJOJOWang
macaddress
bssid
ssid的获取
Video
writeVideoAtPathToSavedPhotosAlbum
使用dataWithContentsOfURL进行视频下载,并保存到相册;以便提供给其他app进行加载使用
Video
Video 的编解码流程
PCM
PCM的原理和相关操作