cmd文件以空行为域分隔,如果开头不是以#和@开头,则认为是命令域,
域中变量属性只对域中命令生效.
不在命令域中的变量属性对本文件所有变量生效.
-
在命令中的变量定义
#{[if_has]var}为基本变量var为变量名称, 必填- 中括号内表示的是如果变量不为空,则完全显示, 优先级高于变量的if_has
- 变量名大写为全局变量,小写为局部变量, 以下划线连词,没有描述的时候转义为描述
-
在命令行外定义变量, 注意,字符串没有已引号包含
@var.desc(note_str)变量的描述@var.refresh()为清除变量之前所有推荐选项@var.recommend(comm)为新增推荐选项, 会继承全局定义, 格式为选项 (描述), 描述可不写@var.recommend_cmd(cmd)为新增推荐选项的命令@var.if_has(-p %s)如果变量不为空,则完整显示-p var
-
命令域中的属性值
#默认对命令的描述, 会显示在info中,但不会显示在命令展示中,有继承属性# """mulit line notes"""多行描述, 会显示在info中,但不会显示在命令展示中,有继承属性# desc:对命令的描述, 简短的一句话,显示在命令展示中, 没有继承属性# refer:命令所参考网址
-
不在命令域中的属性值
# link:将连接其他文件# port:文件所描述的接口# refer:文件所参考的网址
-
分割符
--- [description]语法为前面三个-,跟描述- 在Pentesting中,推荐按照
RECON、EXPLOIT、POST、PRIV四个阶段进行分割
现有的变量:
- RHOST
- RPORT
- LHOST
- LPORT
- USER
- PWD
- DOMAIN
- WORDLIST
- URL