12345678910111213141516171819202122232425262728293031323334353637383940 |
- //
- // disableAttach.h
- // MCPlus
- //
- // Created by seo ha on 18/02/2019.
- // Copyright © 2019 KangSH. All rights reserved.
- //
- #ifndef disableAttach_h
- #define disableAttach_h
- #import <sys/mman.h>
- #import <dlfcn.h>
- typedef int (*command_ptr_t)(int _request, pid_t _pid, caddr_t _addr, int _data);
- #if !defined(PT_DENY_ATTACH)
- #define PT_DENY_ATTACH 31
- #endif
- /**
- 디버그 메소드 swift 에서 사용시 buildsetting - swift otherflag에 "-DDEBUG"값을 입력후
- 전처리문을 통해 입력
- ex)
- #if DEBUG
-
- #else
- //안티디버거
- disable_attach()
- #endif
- */
- //Anti-debug method
- void disable_attach() {
- void* handle = dlopen(0, RTLD_GLOBAL | RTLD_NOW);
- command_ptr_t command_ptr = dlsym(handle, "ptrace");
- command_ptr(PT_DENY_ATTACH, 0, 0, 0);
- dlclose(handle);
- }
- #endif /* disableAttach_h */
|