【发布时间】:2020-02-27 21:06:32
【问题描述】:
我用 C 代码编写二进制文件。如何防止其他用户在我的二进制文件上使用LD_PRELOAD?
在使用LD_PRELOAD时,有没有什么信号可以处理和破坏程序?
如果我静态编译二进制,听说LD_PRELOAD不行,对吧?
还有其他方法吗?
【问题讨论】:
-
可以查看是否设置了LD_PRELOAD环境变量。但他们可以链接到不同版本的
getenv()来增加难度。 -
你为什么关心这个?
-
@Barmar 你能解释一下吗?当以
LD_PRELOAD运行的进程是要处理的环境变量吗?我该如何检查,并且可以设置女巫类型的环境变量? -
这些用户能否对您提供给他们的二进制文件进行十六进制编辑?或者在
dtrace之类的东西下运行它?
标签: c linux hook ld-preload