如何在IDA Pro中执行此脚本并为脚本?
#1 楼
自然,最好的方法是编辑脚本,并要求用户提供这些参数。 IDA有很多方法可以做到这一点。您可以使用许多idc.Ask*
函数中的一个或几个。例如:AskYN
,AskLong
,AskSelector
,AskFunction
,AskFile
等。有时,当需要多个输入参数时,要求提供许多指定值变得很不方便,然后您可以创建一个完整的对话框。不能说我建议这样做。如果取决于您要执行的python脚本的实现方式,但是最好以一种pythonic方式包含/导入它或其他。
导入受保护的模块
如果脚本编写正确,它可能会用
popen
子句包装所有执行功能,从而保护了导入时执行的情况。如果是这种情况,只需将其与if __name__ == "__main__"
一起导入,然后调用其主/其他即可。导入
import modulename
模块如果该模块直接使用
sys.argv
而您不能/将不能阻止它这样做,您可以在导入模块之前模拟sys.argv
。只需执行以下操作即可:sys.argv
调用文件的
sys.argv = ['./script.py', 'command', 'parameter1', 'parameter2', 'optional']
import script
如果上述两种方法都不适合您,始终直接调用
execfile
并完全控制执行python脚本的上下文。您应该分别在此处和此处阅读execfile
和execfile
的文档。