fatal error: openssl/opensslconf.h: No such file or directory
fatal error: openssl/opensslconf.h: No such file or directory
我尝试编译一个 C 文件,该文件使用虚拟分配解密并执行 rc-4 加密的 shellcode。
现在我得到一个错误:
"In file included from rc-4.c:2: rc4.h:62:11: fatal error:
openssl/opensslconf.h: No such file or directory
#include <openssl/opensslconf.h>/* OPENSSL_NO_RC4, RC4_INT */"
我的编译命令是:
i586-mingw32msvc-gcc rc-4.c -o test.exe -lcrypto
一开始mingw32报错说找不到rc-4.h。
我通过在当前目录中复制 rc-4.h 并将其包含在 #include "rc-4.h"
中来修复此问题
前两行代码
```
#include <windows.h>
#include "rc4.h"
```
如何解密和执行 rc-4 shellcode:
int lpBufSize = sizeof(int) * PAYLOADSIZE;
LPVOID lpBuf = VirtualAlloc(NULL, lpBufSize, MEM_COMMIT, 0x04);
memset(lpBuf, '[=11=]', lpBufSize);
RC4(RC4KEY, payload, (char*) lpBuf, PAYLOADSIZE);
MessageBox(NULL, (char*) lpBuf, "Test", MB_OK);
return 0;
预期的输出应该是编译后的 test.exe 文件
我使用的是 MinGW64,因为这是这里安装的。我知道标签 "mingw32",希望它没问题。
1.正在编译
头文件 rc4.h
位于路径 <path-of-installation>/<version>/mingw64/opt/include
中,因此必须将其作为参数提供给 -I
:
i586-mingw32msvc-gcc -c -I "<path-of-installation>/<version>/mingw64/opt/include" rc-4.c -o rc-4.o
你也可以设置CPATH
或C_INCLUDE_PATH
,见The C Preprocessor: Environment Variables。
2。链接
注意:因为您没有提供足够的源代码,所以我无法尝试。
库文件 libcrypto.a
位于路径 <path-of-installation>/<version>/mingw64/opt/lib
中,因此必须将其作为参数提供给 -L
:
i586-mingw32msvc-gcc -L "<path-of-installation>/<version>/mingw64/opt/lib" rc-4.o -lcrypto -o test.exe
我尝试编译一个 C 文件,该文件使用虚拟分配解密并执行 rc-4 加密的 shellcode。
现在我得到一个错误:
"In file included from rc-4.c:2: rc4.h:62:11: fatal error: openssl/opensslconf.h: No such file or directory #include <openssl/opensslconf.h>/* OPENSSL_NO_RC4, RC4_INT */"
我的编译命令是: i586-mingw32msvc-gcc rc-4.c -o test.exe -lcrypto
一开始mingw32报错说找不到rc-4.h。 我通过在当前目录中复制 rc-4.h 并将其包含在 #include "rc-4.h"
中来修复此问题前两行代码
```
#include <windows.h>
#include "rc4.h"
```
如何解密和执行 rc-4 shellcode:
int lpBufSize = sizeof(int) * PAYLOADSIZE;
LPVOID lpBuf = VirtualAlloc(NULL, lpBufSize, MEM_COMMIT, 0x04);
memset(lpBuf, '[=11=]', lpBufSize);
RC4(RC4KEY, payload, (char*) lpBuf, PAYLOADSIZE);
MessageBox(NULL, (char*) lpBuf, "Test", MB_OK);
return 0;
预期的输出应该是编译后的 test.exe 文件
我使用的是 MinGW64,因为这是这里安装的。我知道标签 "mingw32",希望它没问题。
1.正在编译
头文件 rc4.h
位于路径 <path-of-installation>/<version>/mingw64/opt/include
中,因此必须将其作为参数提供给 -I
:
i586-mingw32msvc-gcc -c -I "<path-of-installation>/<version>/mingw64/opt/include" rc-4.c -o rc-4.o
你也可以设置CPATH
或C_INCLUDE_PATH
,见The C Preprocessor: Environment Variables。
2。链接
注意:因为您没有提供足够的源代码,所以我无法尝试。
库文件 libcrypto.a
位于路径 <path-of-installation>/<version>/mingw64/opt/lib
中,因此必须将其作为参数提供给 -L
:
i586-mingw32msvc-gcc -L "<path-of-installation>/<version>/mingw64/opt/lib" rc-4.o -lcrypto -o test.exe