经过FIPSvalIDation的OpenSSL库必须在固定地址加载libeay32.dll。 这表示,例如,在: 固定的地址被占用.NET
使用下面描述的技术: IIS7 App Pool无法加载固定基地址库 ,以及如何禁用windows 7 x64上的ASLR(地址空间布局随机化)? ,以及如何运行没有链接kernel32.dll和ntdll.dll的PE映像 ,我已经强制加载的FIPS DLL尽早我能够。
对于来自ListDLLs输出的64位进程,我看到加载顺序为:
E:mymy64.exe C:windowsSYstem32ntdll.dll C:windowssystem32kernel32.dll C:windowssystem32KERNELBASE.dll E:myliBEAY_FIps32.dll ...
对于一个32位的进程,有一些额外的“哇”废话,即:
DLL链接器问题
DLL中的windows消息队列处理
在windows 7 x64上使用libnfc的RFIdio
C ++指针是否可以跨越EXE和DLL?
由VS2010生成.lib文件
E:mymy32.exe C:windowsSYstem32ntdll.dll C:windowsSYstem32wow64.dll C:windowsSYstem32wow64win.dll C:windowsSYstem32wow64cpu.dll C:windowsSysWOW64ntdll.dll C:windowssyswow64kernel32.dll C:windowssyswow64KERNELBASE.dll E:myliBEAY_FIps32.dll ...
现在,这是从我开始的一个巨大的改进,并且获得“0xc0000018未能加载到FIXED地址错误”的机会现在远低于liBEAY_FIps32.dll在第25个加载到进程中的DLL的时间。
但是,考虑到这些系统DLL是可重定位的并且可能受到ASLR的限制,我预计仍然有可能发生负载故障。
虽然我不想closureswindows ASLR,我想以某种方式告诉ASLR“请避免以下固定地址范围,因为我真的需要在该地址加载一个固定的DLL”。 有没有办法做到这一点?
或者用某种方法来控制一个或多个加载地址:ntdll.dll,kernel32.dll,kernelbase.dll?
如果没有,有没有办法强制FIPS openssl DLL加载到一个或多个之前的进程:ntdll.dll,kernel32.dll,kernelbase.dll?
如何使用2个第三方.net库时,他们的非托pipe依赖冲突?
VB6程序使用的32位DLL在64位Win 7中不起作用
有没有更好的方式来加载在C + +的DLL?
WinDbg Dr. Watson minIDump – 需要最初为安装的版本生成的pdb / dll?
用于类似于Office 2013的windows的windows GUI库?
总结以上是内存溢出为你收集整理的在Windows上的固定基地址加载FIPS OpenSSL DLL全部内容,希望文章能够帮你解决在Windows上的固定基地址加载FIPS OpenSSL DLL所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)