应用程序可执行文件和 3d 方库之间的嗅探函数调用

Posted

技术标签:

【中文标题】应用程序可执行文件和 3d 方库之间的嗅探函数调用【英文标题】:Sniffing function calling between application executable file and 3d party library 【发布时间】:2015-09-18 11:29:16 【问题描述】:

我有一个用 MFC 编写的应用程序。该应用程序使用了一个 c 库(lib 文件夹中有 .h、.dll 和 .lib 文件)。

我可以用库嗅探 .exe 的函数调用吗?我想知道.h文件的哪个函数被调用了。

更多信息:库是 D2XX,当然应用程序的源代码或应用程序的调试模式不可用。

【问题讨论】:

编写一个代理 DLL,拦截对 3rd 方库的所有调用。让它导出与原始 DLL 相同的符号,并从原始 DLL 导入这些符号以转发调用。重命名代理 DLL 以匹配原始 DLL 的名称。 在 Solaris 上,您可以使用 truss(1),但我不知道任何适用于 Windows 的等效软件。 实际上应该没有调用“.h 文件中的函数”,因为它不应该包含 定义inline 函数有些特殊)。 【参考方案1】:

你可以试试API Monitor,它似乎支持跟踪自定义 DLL 库调用:http://www.rohitab.com/discuss/topic/37421-monitor-custom-dll/

【讨论】:

谢谢,我试试

以上是关于应用程序可执行文件和 3d 方库之间的嗅探函数调用的主要内容,如果未能解决你的问题,请参考以下文章

过滤 IPv6 数据包的嗅探器

我的嗅探器程序无法分析数据包的类型

网络安全:基于ARP欺骗的嗅探原理

python绝技 — 用Scapy测试无线网卡的嗅探功能

如何写一个开放WLAN下的嗅探测试工具?

捕获的包,怎么都是乱码啊,我用winPcap作的嗅探器,读出来的包都是乱码,怎么回事啊? 难道要加入新的线程