能力值:
( LV3,RANK:30 )
|
-
-
2 楼
不要想太多2333
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
 也没想太多吧
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
最后确定是通过syscall调用0x1a系统调用设置禁止调试的
|
能力值:
( LV5,RANK:60 )
|
-
-
5 楼
IOS有这种禁止调试的标志开关,LZ能科普你的经验么
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
有两篇文章讲这个
203K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3y4G2M7X3g2V1N6h3#2H3i4K6u0W2k6%4u0Q4x3V1k6S2M7Y4c8A6j5$3I4W2M7#2)9J5c8X3W2G2M7#2)9J5k6r3q4F1N6r3W2Q4x3X3c8V1k6h3u0#2k6$3N6A6L8X3N6Q4x3X3c8H3M7X3!0@1k6h3y4@1K9h3!0F1M7#2)9J5k6s2m8S2M7Y4c8Q4x3X3b7I4i4K6u0r3
fdeK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3y4G2M7X3g2V1N6h3#2H3i4K6u0W2k6%4u0Q4x3V1k6S2M7Y4c8A6j5$3I4W2M7#2)9J5c8X3W2G2M7#2)9J5k6r3q4F1N6r3W2Q4x3X3c8V1k6h3u0#2k6$3N6A6L8X3N6Q4x3X3c8H3M7X3!0@1k6h3y4@1K9h3!0F1M7#2)9J5k6s2m8S2M7Y4c8Q4x3X3b7J5i4K6u0r3
第一篇讲通过ptrace系统调用设置PT_DENY_ATTACH,通过断ptrace系统调用就行;有时候开发中不会直接调用ptrace,而是通过syscall加系统调用号0x1a来实现。
第二篇就是通过sysctl,查看进程信息里的标记,看自己进程有没有被trace,有的话可以自己退出或其他。
另外就是stackoverflow上也有讲其他方法,225K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4y4@1j5h3y4C8L8%4k6W2M7X3k6D9L8%4N6Q4x3X3g2U0L8$3#2Q4x3V1k6I4N6h3g2K6N6r3W2G2L8Y4y4Q4x3V1j5K6y4e0V1$3y4K6R3I4i4K6u0r3k6r3g2@1k6h3y4@1i4K6u0V1K9h3k6Q4x3X3c8Y4k6r3u0Q4x3X3c8A6M7#2)9J5k6s2u0#2L8X3&6A6L8X3M7`.
fork一个子进程去ptrace attach父进程,如果父进程已经被gdb依附,这个操作就会失败,于是判断有调试器。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
mark
|
|
|