用途:回答“这台设备运行的 Cisco 软件版本是否受已发布安全公告影响”。它不连接设备、无网络凭据,也不读取版本,必须由使用者先提供版本号。
主要能力:check_version 按 ostype 与 version 查询;check_versions 批量查询多台设备并按版本去重;check_cve 查某 CVE 对应的 Cisco 公告;check_advisory 按公告 ID 查询;list_recent 按严重级别与日期列出近期公告;psirt_status 查看认证状态、剩余速率额度、缓存统计与支持的 OS 家族。
使用方式:先用 pyATS 或 multivendor CLI 驱动读取 show version,再调用 check_version,例如 python3 $MCP_CALL "python3 -u $CISCO_PSIRT_MCP_SCRIPT" check_version '{"ostype":"iosxe","version":"17.3.1"}'。批量场景优先用 check_versions,避免逐台循环。
结果语义:返回五种 outcome。advisories_found 表示有公告;none_published 仅表示 Cisco 未发布匹配该版本字符串的公告,不等于设备安全;normalisation_failed 与 api_error 表示问题未被检查,不能当作好消息;unsupported_ostype 表示非 PSIRT OS 家族。
限制:支持的 ostype 为 ios、iosxe、nxos、asa、fmc、ftd、aci;IOS-XR 不受支持,会返回 404,需改用 check_cve 或按产品 ID 查公告。各家族版本格式不同,ACI 需用交换机镜像版本而非 APIC 版本。速率限制为 5 次/秒、30 次/分钟,共享同一凭据;refresh 会绕过 6 小时缓存,不宜默认开启。Bug、EoX、Case、Serial-to-Info 等 API 返回 403,CX Cloud 返回 504。与 nvd-cve 互补,重要安全问题建议两者都查并说明来源。