linux二進位制分析讀書筆記(一)
/proc 下相關檔案
-
/proc/
/maps
該檔案儲存了一個程序的映象佈局,內容包括:可執行檔案,共享庫,堆,棧,VDSO。
- /proc/kcore
linux核心動態核心檔案
- /boot/System.map
包含了整個核心的所有符號
- /proc/kallsyms
與system.map檔案類似,詳細還是baidu linux核心符號表吧
- /proc/iomen
與系統記憶體有關,可以由此獲得核心的text段儲存的實體地址
root@kaka-virtual-machine:/# cat /proc/iomem | grep Kernel 68200000-68e031d0 : Kernel code 68e031d1-69869abf : Kernel data 69ae1000-69d3cfff : Kernel bss
連結器相關環境指標
- LD_PRELOAD 設定為一個共享庫的路徑,在動態連結時有更高的優先順序。這項技術可用於繞過反除錯程式碼,使用者級rootkit等。
- LD_SHOW_AUXV 通知程式載入器展示程式執行時的輔助向量
kaka@kaka-virtual-machine:/$ LD_SHOW_AUXV=1 whoami AT_SYSINFO_EHDR: 0x7ffde7778000 AT_HWCAP:1f8bfbff AT_PAGESZ:4096 AT_CLKTCK:100 AT_PHDR:0x5652d56d6040 AT_PHENT:56 AT_PHNUM:9 AT_BASE:0x7f28114bc000 AT_FLAGS:0x0 AT_ENTRY:0x5652d56d7a10 AT_UID:1000 AT_EUID:1000 AT_GID:1000 AT_EGID:1000 AT_SECURE:0 AT_RANDOM:0x7ffde7732de9 AT_HWCAP2:0x0 AT_EXECFN:/usr/bin/whoami AT_PLATFORM:x86_64 kaka