我有一个从目录启动的正在运行的进程,让可执行文件的名称为 foo.exe (windows),我怀疑进程是否会破坏其自身的可执行文件?
如果是这样,下一次运行是否会不允许我启动可执行文件,或者当前运行的可执行文件是否会显示有问题的行为? 对其可能使用的一些DLL也有类似的疑虑。
我正在使用 windows,但对 windows 和 linux 的回答表示赞赏。
最佳答案
Windows 在运行时锁定可执行文件,无法编辑或重命名/删除 .EXE。
.DLL 文件也是只读的,因此无法编辑,但可以重命名,因此恶意程序可以执行 .DLL 替换攻击。
Linux 允许文件在使用时被取消链接
,因此替换攻击适用。我不知道是否有办法就地编辑它们。
如果可执行文件在网络共享上,这些限制可能不适用,这取决于服务器实现和使用的协议(protocol)。
关于linux - 正在运行的进程是否会损坏其目录中的可执行文件和文件(当前正在使用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56285587/