iOS---防动态调试

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

#import <dlfcn.h>

#import <sys/types.h>

typedefint(*ptrace_ptr_t)(int_request,pid_t_pid,caddr_t_addr,int_data);

#if !defined(PT_DENY_ATTACH)

#define PT_DENY_ATTACH31

#endif

-(void) disable_gdb() {

    void* handle =dlopen(0,RTLD_GLOBAL|RTLD_NOW);

    ptrace_ptr_tptrace_ptr =dlsym(handle,"ptrace");

    ptrace_ptr(PT_DENY_ATTACH,0,0,0);

    dlclose(handle);

}

[self  disable_gdb];

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天有一个需求,需要对项目进行反调试处理 查看了很多的博客,终于找到了,大多写的不是很全.我总结下. 一般使用 ...
    我是码神阅读 2,859评论 0 1
  • GDB 是大多数 hackers 的首选,阻止 GDB 依附到应用的常规办法是: #importint main(...
    无沣阅读 549评论 0 0
  • 通过看一些文档发现越狱有风险,但是风险还是在可控范围内的,所以touchid用于交易还是可行的。 一越狱存在的问题...
    泺莫繁华阅读 3,903评论 0 0
  • #import #import "AppDelegate.h" #import #import #pragma m...
    msn北极光阅读 1,112评论 1 0
  • 怎么样花钱才会有幸福感? 如果把花钱两字去掉,怎么样才会有幸福感? 突然想到马斯洛理论:马斯洛理论把需求分成生理需...
    胖灯阅读 93评论 0 0