Skip to content

About

Linux system monitoring & hooking framework via LD_PRELOAD / 基于 LD_PRELOAD 机制的用户态系统行为监控工具。

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

30 Commits

Folders and files

Repository files navigation

利用Preload机制的系统监控方案 Hits

项目成因

  • 适配驱动程序工作量太大,内核版本、补丁版本差异太大,所以想在应用层寻求一个一劳永逸的方法

致命缺陷

  • 由于其主要是利用预加载机制使被hook的符号先于本来的符号被找到,所以无法hook不依赖libc的程序,例如:
    • 越来越多的go程序
    • 对于静态连接libc的程序
    • 直接利用汇编调用系统调用的汇编程序
  • dl系列函数难以hook
    • 对于刻意使用dlopen\dlsym来查找libc中符号的程序难以适用
  • 与系统中原本的安全机制的兼容问题
    • seccomp
    • Snap
  • 临界资源问题
    • 即使利用TLS机制,我记得有些地方也不容易进行处理
  • 一旦被装载,只能重启被hook的服务才能卸载的问题
    • 这不算太严重,在hook的接口前装一个开关即可,但对于hook接口外的其它代码,一旦出现问题,只能重启机器,这对服务器来说,是十分不可靠的

About

Linux system monitoring & hooking framework via LD_PRELOAD / 基于 LD_PRELOAD 机制的用户态系统行为监控工具。

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages