iOS安全攻防(四):阻止GDB依附
来源:互联网 发布:卡尔马龙业生涯数据 编辑:程序博客网 时间:2024/05/21 21:36
阻止GDB依附
GDB是大多数hackers的首选,阻止GDB依附到应用的常规办法是:
#import <sys/ptrace.h>int main(int argc, char *argv[]){#ifndef DEBUG ptrace(PT_DENY_ATTACH,0,0,0);#endif @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([WQMainPageAppDelegate class])); }}
但遗憾的是,iPhone真实的运行环境是没有sys/ptrace.h抛出的。虽然 ptrace 方法没有被抛出, 但是不用担心,我们可以通过dlopen拿到它。
dlopen: 当path 参数为0是,他会自动查找 $LD_LIBRARY_PATH,$DYLD_LIBRARY_PATH, $DYLD_FALLBACK_LIBRARY_PATH 和 当前工作目录中的动态链接库.
#import <dlfcn.h>#import <sys/types.h>typedef int (*ptrace_ptr_t)(int _request, pid_t _pid, caddr_t _addr, int _data);#if !defined(PT_DENY_ATTACH)#define PT_DENY_ATTACH 31#endif // !defined(PT_DENY_ATTACH)void disable_gdb() { void* handle = dlopen(0, RTLD_GLOBAL | RTLD_NOW); ptrace_ptr_t ptrace_ptr = dlsym(handle, "ptrace"); ptrace_ptr(PT_DENY_ATTACH, 0, 0, 0); dlclose(handle);}int main(int argc, char *argv[]){#ifndef DEBUG disable_gdb();#endif @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([WQMainPageAppDelegate class])); }}
2 0
- iOS安全攻防(四):阻止GDB依附
- iOS安全攻防(四):阻止GDB依附
- ios安全攻防(四)阻止GDB依附
- ios--安全攻防-阻止GDB依附
- iOS安全攻防-阻止lldb对app的依附
- 阻止GDB依附
- iOS安全攻防(四)使用OpenSSH
- iOS 安全攻防系列(四):分析二进制软件
- iOS安全攻防(十三):数据擦除
- iOS安全攻防(十七):Fishhook
- iOS安全攻防(十三):数据擦除
- iOS安全攻防(十七):Fishhook
- iOS安全攻防(十七):Fishhook
- 【链接】iOS安全攻防
- iOS安全攻防
- iOS 安全攻防系列
- iOS安全攻防
- iOS之安全攻防
- CodeForces Round 213 Div 2 E Sereja and Brackets 线段树
- 四线八拍步进电机(28BYJ48)Arduino 库stepper
- 多线程 or 多进程
- Linux定时器
- Cadstar格式导入功能
- iOS安全攻防(四):阻止GDB依附
- c# 保留2位小数
- loadrunner 数据库测试脚本
- OpenCV中Scalar解析
- iOS ASIHTTPRequest详解
- ubuntu环境下的JDBC开发
- winform引用Teechart可以绘制世界地图
- 【分组背包】开心的金明
- Java泛型使用总结