Skip to content

环境变量

自动管理终端环境变量,使终端会话与工作区状态保持同步。

工作原理

当 Markdown 文件中的主机和凭证被修改时,扩展会:

  1. 解析 YAML 块并更新工作区状态
  2. 将当前目标信息写入 .vscode/.zshrc
  3. 新终端自动加载这些变量

内置变量

主机变量

变量来源说明
$TARGET当前主机目标主机名
$HOST当前主机主机名(同 TARGET)
$DOMAIN当前主机域名
$RHOST当前主机目标 IP 地址
$IP当前主机IP 地址(同 RHOST)
$DC_HOST当前域控域控制器主机名
$DC_IP当前域控域控制器 IP

凭证变量

变量来源说明
$USER当前用户用户名
$USERNAME当前用户用户名(同 USER)
$PASS当前用户密码
$PASSWORD当前用户密码(同 PASS)
$NT_HASH当前用户NTLM 哈希
$LOGIN当前用户登录域

配置变量

变量来源说明
$LHOST配置本地监听 IP
$LPORT配置本地监听端口

自定义变量

通过主机/用户 props 字段添加 ENV_ 前缀的自定义环境变量:

yaml
- hostname: target.htb
  ip: 10.10.10.100
  props:
    ENV_WEB_PORT: "8080"

导出为:export WEB_PORT='8080'

也可通过设置添加:

json
{
  "weaponized.envs": {
    "WORDLIST_DIR": "/usr/share/wordlists"
  }
}

Shell 辅助函数

.vscode/.zshrc 还提供以下工具函数:

bash
current_status          # 查看当前目标状态
url encode "string"     # URL 编码
url decode "string"     # URL 解码
ntlm "password"         # 生成 NTLM 哈希
proxys on|off|show      # 代理切换

关键文件

  • src/features/targets/sync/markdownSync.ts — 解析和导出变量
  • src/features/targets/sync/index.ts — 同步入口
  • src/features/targets/sync/graphBuilder.ts — 构建目标图