我有一个可执行文件链接到一些DLL文件。为了避免DLL劫持,我将该应用程序安装在受保护的路径(例如C:\ Program Files)中,其中只有管理员具有“创建”或“写入”权限。
仍有一些攻击者可以将整个安装文件夹复制到其他目录,并能够创建具有相同名称的书面函数来执行恶意行为,例如删除文件或修改注册表设置。 .DLL文件将以与正在运行的应用程序相同的权限运行。
我需要验证我的应用程序是否只从已安装的路径运行..如何使用C ++实现可能...
查看GetModuleFileName
以查看模块的位置。