今早,Go Team 发布了 Go1.12.1 和 Go1.20.8,这是两个小版本,主要设计安全更新。
- cmd/go: go.mod toolchain 指令允许任意执行
这个指令是在 Go 1.21 中引入的,它可以被利用来在模块的根目录下执行脚本和二进制文件,当在模块内部使用 “go” 命令时。这适用于使用 “go” 命令从模块代理下载的模块,以及直接使用 VCS 软件下载的模块。issue:<https://go.dev/issue/62198>。
- html/template: 在 script 上下文中不正确地处理 HTML-like 注释
html/template 包没有正确地处理在 `<script>` 上下文中出现的 HMTL-like `<!–` 和 `–>` 注释标记,也没有正确地处理 hashbang `#!` 注释标记。这可能导致模板解析器不正确地解释 `<script>` 上下文的内容,导致 action 被不正确地转义。这可能被利用来进行 XSS 攻击。issue:<https://go.dev/issue/62196>。
- html/template: 在 script 上下文中不正确地处理特殊标签
html/template 包没有正确地应用处理在 `<script>` 上下文中出现的 `<script`, `<!–` 和 `</script` 的规则。这可能导致模板解析器过早地认为 script 上下文被终止,导致 action 被不正确地转义。这可能被利用来进行 XSS 攻击。issue:<https://go.dev/issue/62197>。
- crypto/tls: 在 QUIC 连接上处理握手后消息时 panic
处理一个不完整的握手后消息会导致 QUIC 连接 panic。issue:<https://go.dev/issue/62266>。
可以按照官方提供的方式更新试用:
![go1.21.1.webp](https://static.golangjob.cn/230907/7999ebf9037ef617e4264991d46de0d2.webp)
Go 语言中文网也为大家提供了最新安装包:<https://studygolang.com/dl>。