IDA+GDB远程调试android平台 - Aarch64- elf64程序
gdb配置
gdb和gdbserver
gdbserver的是在 android-ndk-r10e\prebuilt\android-arm\gdbserver 這個(gè)目錄下
 gdb 是在 android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin 目錄下,名稱(chēng)是arm-linux-androideabi-gdb.exe
 需要注意的是,ndk r11開(kāi)始,移除了gdb,舊版本NDK
然后把gdbserver安裝到設(shè)備的 /system/bin下
adb push gdbserver /system/bin/ adb shell chmod u+x /system/bin/gdbserver啟動(dòng)程序
adb push hello /data/local/tmp/ adb shell chmod u+x /data/local/tmp/hello gdbserver :8123 /data/local/tmp/hello我這里36即為被調(diào)試應(yīng)用
 
設(shè)置adb的轉(zhuǎn)發(fā)
adb forward tcp:1234 tcp:8123IDA配置
選擇GDB調(diào)試器
 
 選擇附加進(jìn)程,之后自動(dòng)附加上被GDB啟動(dòng)的調(diào)試進(jìn)程,回車(chē)確認(rèn)對(duì)話(huà)框即可
 選擇如下調(diào)試進(jìn)程會(huì)提示權(quán)限不足,需要重新gdb啟動(dòng)進(jìn)程
 
IDA遠(yuǎn)程調(diào)試 The debugger could not attach to the selected process. irs_recv 等待的操作過(guò)時(shí)
 IDA連接android_server 選中進(jìn)程點(diǎn)ok之后 連接不上報(bào)錯(cuò)
 The debugger could not attach to the selected process.
 This can perhaps indicate the process was just terminated, or that you dot’t have the necessary privileges.
 輸出窗口提示 irs_recv 等待的操作過(guò)時(shí)
原因:
 Android5.0之后默認(rèn)啟用了 SELinux/SEAndroid
 查看是否開(kāi)啟
 getenforce
解決辦法:
 setenforce 0
 或者
 echo 0 > /sys/fs/selinux/enforce
 
 Cannot attach to lwp xxxx1: Operation not permitted (1)
參考鏈接
 用GDB遠(yuǎn)程調(diào)試android native程序
總結(jié)
以上是生活随笔為你收集整理的IDA+GDB远程调试android平台 - Aarch64- elf64程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
                            
                        - 上一篇: PowerShell脚本遇到的问题汇总
 - 下一篇: Aarch64汇编语言