將libc database下載到本地
這個是libc-database的網站,可以線上查詢libc。libc-database
本文對自己下載使用libc database做一個記錄,詳情請檢視libc database的官方文件: https://github.com/niklasb/libc-database
下載
這個無需安裝,從官方的github下載zip,放到liunx解壓即可。niklasb/libc-database: Build a database of libc offsets to simplify exploitation (github.com)
會得到這樣的資料夾。
初始化
接著執行如下命令下載libc符號表與偏移檔案。
$ ./get # List categories
$ ./get ubuntu debian # Download Ubuntu's and Debian's libc, old default behavior
$ ./get all # Download all categories. Can take a while!
官方文件說get不會重複下載,所以之後也可以用於更新libc_database。
這個下載可能會持續幾個小時,請做好心理準備,不過好在佔用磁碟空間不大。
下載的libc存放在db中,之後透過符號和偏移查詢libc版本時就會依賴於這個db,所以上一步儘量多下載些libc到db。
get libc之後就可以正常使用了。
支援的命令
- find 用於根據符號和偏移查詢libc版本,列印libc ID。
- dump 用於轉儲查到的libc庫中的一些常用符號和偏移,也可以透過指定符號轉儲偏移。
- add 用於手動新增一些libc庫到db。
- identify 用於判斷某個libc是否已經存在於db,支援hash查詢。
- download 用於下載與libc ID相對應的整個libc到libs目錄。
- get 下載libc到db,用於初始化於更新libc database。