1. 程式人生 > >解決多程序ptrace反除錯保護的一種方法

解決多程序ptrace反除錯保護的一種方法

轉:http://bbs.pediy.com/showthread.php?p=1436691#post1436691

前言:我們經常看到很多加固都採用多程序ptrace的方式來反除錯,這裡想到一個小技巧繞過這種保護,測試目標是一款娜迦加固的APK,效果如下:
點選圖片以檢視大圖圖片名稱: multi.png檢視次數: 1檔案大小: 7.1 KB檔案 ID : 105761
原理:多程序都是通過fork出來的,因此我們修改/bionic/libc/bionic/fork.c裡面的fork函式來使得目標程序fork失敗,程式碼如下:
點選圖片以檢視大圖圖片名稱: source.png檢視次數: 2檔案大小: 24.5 KB檔案 ID : 105759
結果:修改fork函式後,目標APK只剩下一個程序了,使用gdb attach正常,效果如下:
點選圖片以檢視大圖圖片名稱: single.png檢視次數: 0檔案大小: 7.5 KB檔案 ID : 105760
結束語:有興趣的同學可以試試其他的加固系統。 
注: 這個get_target2函式就是作為過濾條件用的。

可以考慮結合注入+HOOK