打开一个程序的安装目录,在这里面可以看到一些dll的一些文件。如果在它的上面双击的话会在它的旁边提示:如果是想要查看它可以下载安装一个叫exescope的自定义应用软件的工具。
右边有一个更多,点击一下“更多”,可以看到它的默认安装路径,如果不需要更改的话,它就会默认的安装到c盘的程序文件夹中。
点击安装之后,在它d出颂唤唯的面板中有一个自动汉化的说明,我们点击“已阅”。接着在它的安装过程中会出现一个安装类型,可以根据需要选择一个安装类型,这里就选择它默认的“典型安装”,然后点击:下一步。当安装到汉化的安装目录的时候它会提示,如果是不想把它安装到默认位置的话,可以在点击浏览选择一个安链亏装的文件位置。
dll文件是动态链接库,也有人称作应用程序拓展。
Windows应用程序中,实行了模块化设计,也就是说并不是每个应用程序都编写完所有的功能代码,而是在运行过程中调用相应功能的DLL。
不需运行的功能就不调用,所以大大加快了程序的消虚谈加载速度和效率,其他应用程序也可以调用相关的DLL,这样也有利于促进代码重用以及内存使用效率,减少了资源占用,而且程序更新时也只要更新相关的DLL就可以了。
dll文件劫持原理:
由于誉磨输入表中只包含DLL名而没有它的路径名,因此加载程序必须在拿碰磁盘上搜索DLL文件。首先会尝试从当前程序所在的目录加载DLL,如果没找到,则在Windows系统目录中查找,最后是在环境变量中列出的各个目录下查找。
利用这个特点,先伪造一个系统同名的DLL,提供同样的输出表,每个输出函数转向真正的系统DLL。程序调用系统DLL时会先调用当前目录下伪造的DLL,完成相关功能后,再跳到系统DLL同名函数里执行。这个过程用个形象的词来描述就是系统DLL被劫持(hijack)了。
伪造的dll制作好后,放到程序当前目录下,这样当原程序调用原函数时就调用了伪造的dll的同名函数,进入劫持DLL的代码,处理完毕后,再调用原DLL此函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)