使用angr时,第一行语句就是:b = angr.Project('path/bin_file_name')
该代码调用的为Project类的构造函数_init_()。Project类是angr模块的主类,它对一个二进制文件进行初始的分析以及参数配置,并将数据存储起来进行后续进一步分析。
构造函数参数:
angr.project.Project(thing, default_analysis_mode=None, ignore_functions=None, use_sim_procedures=True, exclude_sim_procedures_func=None, exclude_sim_procedures_list=(), arch=None, simos=None, load_options=None, translation_cache=True, support_selfmodifying_code=False, **kwargs)
所需参数解释.
:param thing: 要分析的主要可执行对象的路径,或CLE Loader对象.
下面的参数是可选的.
该代码调用的为Project类的构造函数_init_()。Project类是angr模块的主类,它对一个二进制文件进行初始的分析以及参数配置,并将数据存储起来进行后续进一步分析。
构造函数参数:
angr.project.Project(thing, default_analysis_mode=None, ignore_functions=None, use_sim_procedures=True, exclude_sim_procedures_func=None, exclude_sim_procedures_list=(), arch=None, simos=None, load_options=None, translation_cache=True, support_selfmodifying_code=False, **kwargs)
所需参数解释.
:param thing: 要分析的主要可执行对象的路径,或CLE Loader对象.
下面的参数是可选的.
:param default_analysis_mode: 默认使用的分析模式. 默认为 'symbolic'.
:param ignore_functions: 函数名称列表,当从共享库导入后,这些函数不会被进入分析(调用将返回一个非约束值)
:param use_sim_procedures: 是否用所述简化程序来替代已解决的依赖关系,其中简化程序可用