upload_url 作为 Action 输入参数从 workflow 的 with 块读取后,未经过任何 URL 安全校验即直接传递给外部 bash 脚本执行 HTTP 上传请求。在 pull_request_target 事件场景下,若调用方 workflow 将 PR 可控数据传入 upload_url,攻击者可控制扫描结果的上传目标地址,导致数据泄露、凭据泄露、SSRF探测云元数据端点等。
对 upload_url 进行URL白名单校验,仅允许 HTTPS 协议和预定义域名,禁止 file://、gopher:// 等非 HTTP(S) 协议。
漏洞信息
漏洞描述
upload_url 作为 Action 输入参数从 workflow 的 with 块读取后,未经过任何 URL 安全校验即直接传递给外部 bash 脚本执行 HTTP 上传请求。在 pull_request_target 事件场景下,若调用方 workflow 将 PR 可控数据传入 upload_url,攻击者可控制扫描结果的上传目标地址,导致数据泄露、凭据泄露、SSRF探测云元数据端点等。
受影响资产
修复建议
对 upload_url 进行URL白名单校验,仅允许 HTTPS 协议和预定义域名,禁止 file://、gopher:// 等非 HTTP(S) 协议。