如何挂钩其导出功能不可用的本机进程?
我需要解决原生过程的逆向工程问题。 我有非托管的.exe有一些控制(例如文本框,按钮,TextAreas,组合框)。填写完所有控件数据后,用户将按“打开”。如何挂钩其导出功能不可用的本机进程?
实际上它会打开调制解调器端口,并会发送AT命令。我想检查数据的格式和它将发送到调制解调器COM端口的消息。
因此,一些我需要怎么逆向工程过程和钩的功能(最有可能的功能,“打开”调制解调器端口,当用户点击“打开”,它会被称为)。
意见建议??我的方向是对的,在注射后我需要挂钩它的功能,我的目标将会实现。
注意:
未检测到EXPORTED功能。我为此使用了CFF/PE Explorer。
问候 乌斯曼
OllyDbg的可以帮助你。您还需要一些汇编语言和调用约定的基本知识。当然,安装拦截器功能的原则(绕行)。
我看到两种可能性。一种方法是将显示器挂到通讯端口,然后看看那里出现了什么。这完全避免了代码的RE,通常会更快更容易。
[编辑:有两种形式的这样的:一个是硬件 - 连接到COM端口硬件逻辑分析仪(或一些数量级上)。它解码和显示串行数据流,因为它穿过电线。另一种形式是使用IAT挂接到WriteFile
的调用的软件,并显示打开了哪些文件以及写入哪些数据。微软Detours库可以对此很有帮助。]
如果您决定无论如何RE的代码,你可能需要一个像样的反汇编如IDAPro。你会可能能够找到通过从调用CreateFile
和WriteFile
(假设你正在处理的Win32,基于“PE”的提及)的地方开始与COM端口处理的部分。你可能会在某个地方有一些像“\\。\ COM”(或者至少是“COM”)的字符串,并且你会想要找到一个使用该字符串(或其副本)的CreateFile
的调用, 。
从那里,你就必须逆向操作,发现放在一起,实际上被写入到COM端口的串码。很难猜测这将是多么复杂。
第一部分更吸引人,看起来更快,并会给我100%准确的结果。那么你能给我正确的方向吗?我的意思是“挂钩显示器COM端口”?接下来的事情很简单,当数据到达时,我会通过修改其“导入地址表”(IAT)或EAT(导出地址表)来捕获它。这使得数据首先出现在我的过程中。 – Usman
是的我正在努力,并试图看看我需要哪个点挂钩过程和依赖dll的功能。它只是将数据发送给接收者。你能否给我提供你的邮件地址,我可以给你安装程序,并给你样本测试输入,然后你将能够看到数据将去的地方!谦虚的请求先生.. – Usman
@Usman:对不起,但没有。如果你想在某个地方张贴某些东西,你可能会找到下载和测试它的人(我可能会在其中),但是我的邮寄地址却是一个不同的故事。 –
我需要检查所有后作填充所有字段,然后单击“打开”按钮数据。如何为接收者应用程序准备数据(或者如何为接收者应用程序创建数据包发送者应用程序的格式)。而已!! 但主要的问题是,出口表没有显示任何内容,它是空的 – Usman