我使用 Frida 挂钩了本机 Windows 应用程序的函数HttpSendRequestExA,但我无法读取通过此函数的参数lpBuffersIn传递的结构INTERNET_BUFFERSA:
BOOLAPI HttpSendRequestExA(
HINTERNET hRequest,
LPINTERNET_BUFFERSA lpBuffersIn,
LPINTERNET_BUFFERSA lpBuffersOut,
DWORD dwFlags,
DWORD_PTR dwContext
);
typedef struct _INTERNET_BUFFERSA {
DWORD dwStructSize;
struct _INTERNET_BUFFERSA *Next;
LPCSTR lpcszHeader;
DWORD dwHeadersLength;
DWORD dwHeadersTotal;
LPVOID lpvBuffer;
DWORD dwBufferLength;
DWORD dwBufferTotal;
DWORD dwOffsetLow;
DWORD dwOffsetHigh;
} INTERNET_BUFFERSA, *LPINTERNET_BUFFERSA;
这是挂钩脚本的功能:
onEnter: function (log, args, state) {
log('###### HttpSendRequestExA() ###################');
log("lpBuffersIn = " + args[1].readPointer());//I'm stuck here to reach the structure
log('###############################################');
}
我在 Internet 上进行了搜索,但没有找到如何读取指针并将其与预期结构相关联。
非常感谢您的任何帮助或提示:)