Skip to content

Instantly share code, notes, and snippets.

View NikoXu's full-sized avatar
😃
Not available sometime.

NikoXu

😃
Not available sometime.
View GitHub Profile
@NikoXu
NikoXu / terminal
Last active September 29, 2018 02:32
tree lipo nm ar netstat curl
// 监控网站响应速度
curl -o /dev/null -s -w %{time_namelookup}::%{time_connect}::%{time_starttransfer}::%{time_total}::%{speed_download}"\n" $(aURL)
@NikoXu
NikoXu / BreakOnMethod.py
Created March 14, 2018 02:43
Break on Objective-C 's method using its address
'''
Break on Objective-C 's method using its address'
'''
import shlex
import lldb
import re
def breakonmethod(debugger, command, exe_ctx,result, internal_dict):
args=shlex.split(command)
Class=args[0]
Method=args[1]
@NikoXu
NikoXu / private_debug_methods.m
Last active July 1, 2022 02:24
Powerful private methods for debugging in Cycript & LLDB
## recursiveDescription
I don't think it necessary to introduce this method again. It prints the hierarchy of an UIView object. Here's how we use it in Cycript:
```objc
cy# [[UIApp keyWindow] recursiveDescription].toString()
`<iConsoleWindow: 0x156b6410; baseClass = UIWindow; frame = (0 0; 320 480); autoresize = W+H; gestureRecognizers = <NSArray: 0x156b6bc0>; layer = <UIWindowLayer: 0x156b6720>>
| <UILayoutContainerView: 0x16258d80; frame = (0 0; 320 480); autoresize = W+H; layer = <CALayer: 0x16258e00>>
| | <UITransitionView: 0x16259610; frame = (0 0; 320 480); clipsToBounds = YES; autoresize = W+H; layer = <CALayer: 0x16259760>>
| | | <UIViewControllerWrapperView: 0x16243bb0; frame = (0 0; 320 480); autoresize = W+H; layer = <CALayer: 0x1625a670>>
@NikoXu
NikoXu / dump_ios.js
Last active December 27, 2017 06:45
$ frida --codeshare lichao890427/dump-ios -f YOUR_BINARY Fingerprint: bde3ec627bac9237aeff029d6014424b51fdbe8503200a8faaf2f1e099d7da95
// https://codeshare.frida.re/@lichao890427/dump_ios/
// https://github.com/lichao890427/frida_script analysis_hook.js => submit issues
/*
Usage: dumpModule("BWA.app"); dumpModule("aaa.dylib")
[iPhone::PID::20457]-> dumpModule(".app")
Fix decrypted at:ac0
Fix decrypted at:4000
*/