優缺點
- 優點
- 基於 unicorn 的 qiling framework 可以有各種系統的 System call 如 windows 或 linux 等等,可以做很多 hook
- 缺點
- 速度很慢
相似工具 (Related Works)
- Unicorn
- Unicorn 為 CPU 模擬器,Qiling 基於 Unicorn 來處理更高級別如 share library 等等
- Qemu Usermode
- Qiling 可以動態進行補丁,並且支持更多平台如 MacOS, Windows
- 像 Qemu
-R
參數可以設定地址大小,但是還是有一定的限制,這時透過 qiling 就可以解決這個問題 - 比如在 32 bit 需要使用超過 4G 的大小,如
read(len=-1)
的檢查需要透過這樣子去確定漏洞。
功能 (Feature)
- Emulating other platform executable/shellcode like macOS, Windows, on Linux
- Hooking
- 可以 reverse debugging
常用 APIs
-
對於機器的操作
-
- Patch ELF 特定的 offset 內容
ql.set_api()
主要用來替換,劫持函數等等ql.add_fs_mapper()
可以映射到另外一個檔案,或者 python 的 class 上
-
Hook 相關的 api
Emulation Reverse Engineering IoT Security Firmware Hooking