#1 楼
您可以使用Ida的Appcall功能:Appcall是一种机制,可以从调试器或脚本中调用已调试程序内部的函数,就像它是内置函数一样。
这种机制可用于调试,模糊测试和测试应用程序。 Appcall机制在很大程度上取决于要调用的函数的类型信息。因此,在执行Appcall之前必须具有正确的函数原型,否则可能会返回不同或不正确的结果。
我有一个例子使用Appcall或在此处在我的博客上滚动展示自己的内容。
评论
谢谢,您的帖子很棒!您能显示代码如何在不使用IDA的情况下如何调用sub_41C91C吗?通过使用lpStartAddress和CreateRemoteThread,如何将文件路径作为参数传递给此函数
–g319909.nwytg.coM
18/12/27在20:09
我的博客文章底部的@ g319909.nwytg.coM是一个下载链接,恰好包含源代码(如文章中所述)
–雷姆科
18/12/27在23:15
#2 楼
如果要使其简单,则不能对整个内存进行大量的系统调用和交互。不太依赖的函数,并为您提供寄存器和内存的视图。模拟系统调用和您需要的所有内容。#3 楼
我建议使用LIEF。它具有一个整齐的功能add_exported_function
,可以在新文件中导出的地址处添加功能。您可以在这里查看此功能评论
感谢您的重播。我不确定我是否理解您的报价。我的exe文件具有很多功能,我想调用特殊功能。您是否可以导出此功能?运行exe时如何调用此功能?谢谢
–g319909.nwytg.coM
18/12/27在9:15
如果您转到链接的教程,您将看到如何使用导出的函数进行调用。
– sudhackar
18/12/27在10:24
评论
问题太广泛了。阅读以下内容:hex-rays.com/products/ida/debugger/index.shtml和hex-rays.com/products/ida/support/tutorials/debugging.shtml@Biswapriyo我知道如何调试程序,不是我想要的,我想从spesific offset开始创建一个新的exe文件并设置参数
提供一个像这样的世界。这将有助于理解您的问题。