[英]linux dynamic link library injection
目前,我正在開發一些用C ++編寫的應用程序插件-在Windows上,我正在將dll注入進程,捕獲接口並完成工作-但我的問題是-我如何在linux上做類似的事情? 我更願意在不編輯可執行文件的情況下執行此操作-將代碼注入到正在運行的進程中。
如果您可以控制進程的啟動,只需使用LD_PRELOAD
強制將庫與可執行文件一起加載,可能會屏蔽其他庫中的符號(鏈接到二進制文件):
LD_PRELOAD=/path/to/libfoo.so myapplication
以下是通過攔截ioctl
向僅v4l1應用程序添加v4l2支持層的實際用例:
LD_PRELOAD=/usr/local/lib/libv4l/v4l1compat.so camorama
要將符號注入已運行的進程中,請簽出此答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.