-
-
[注意]访问当前目录下的文件
-
发表于:
2010-3-30 15:32
3712
-
刚刚得到邀请码,发文庆祝一下吧,看到本版是安全编程,就写了下面一个入门级的,水平有限,大家不要介意。
为方便阐述,先做前提假设:
有两个文件c:\load.exe,c:\1.dll,当load.exe运行起来后,需要加载1.dll
有些人喜欢直接写:LoadLibrary(1.dll)
但这样写会会有问题--如果当前路径不是C,就可能加载错误的dll或者提示寻址错误
于是,有人喜欢用SetCurrentDirectory(C:),然后在LoadLibrary(1.dll)
这样也不安全,如果在SetCurrentDirectory之后本线程中断,其他线程调度运行时,也调用了
SetCurrentDirectory,那么切换回本线程时依然会错。
安全的方法是:
GetModuleFileName获得load.exe全路径,即 c:\load.exe
PathRemoveFileSpec获得路径,即c:\
lstrcat追加1.dll,即c:\1.dll
LoadLibrary(...)
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法