环境
- windows 10虚拟机
- PyCharm Community Edition
- Pocsuite3 1.9.11
正文
主要是分析一些比较重要的函数
1.cmd_line_parser()
位于cli.py中第50行,init_options(cmd_line_parser().dict),此函数主要是用argparse模块来解析脚本传入的参数、定义在pocsuite3.lib.parse.cmd模块中,这就是我们常用的命令,比如说:-u -f --attack --shell等等 一共有63个参数
2.init_options()
位于cli.py中第50行,init_options(cmd_line_parser().dict),此函数的作用接受argparse模块传递的参数、一共有63个键值对。主要初始化conf、kb这两个始终贯穿程序的重要变量(自定义字典)。
其中_set_conf_attributes()是初始化conf这个重要的变量 conf初始化了70个键值对
_set_kb_attributes() kb一共初始化了30个键值对
3.init()
位于cli.py中第53行,init()此函数主要作用是pocsuite运行的一系列初始化工作,定义在lib\core\option.py模块中,其中定义了控制台日志的详细程度、清理配置、基础信息的验证、创建一些目录、创建Poc模版、加载Poc、判断是否使用一些插件、一些数据包的参数用户是否自定义。
set_verbosity()就是定义了控制台日志的输出的日志信息 默认是1
pocsuite3是试用 pocsuites3 --new这个命令创建的poc模版 就是通过create_poc_plugin_template()这个函数来判断是否需要创作模版