大家好,我是 polarisxu。
这是两个小版本更新,主要是安全更新,修复了 3 个 bug。
archive/tar:读取 header 时,可能会导致无尽的内存消耗。Reader.Read 没有对文件头的最大大小设置限制。恶意制作的存档可能会导致 Read 分配无限 量的内存,从而可能导致资源耗尽或 panic。Reader.Read 现在将 header 块的最大大小限制为 1 MiB。issue 见:https://github.com/golang/go/issues/54853。
net/http/httputil:ReverseProxy 不应转发不可解析的查询参数。ReverseProxy 转发的请求包括来自入站请求的原始查询参数,包括被 net/http 拒绝的无法解析的参数。 当 Go 代理转发具有不可解析值的参数时,这可能允许查询参数走私。在 ReverseProxy.Director 函数返回后设置出站请求的 Form 字段时,ReverseProxy 现在将清理转发查询中的查询参数,表明代理已解析查询参数。不解析查询参数的代理继续转发原始查询参数不变。issue 见:https://github.com/golang/go/issues/54663。
regexp/syntax:限制解析正则表达式使用的内存。解析的正则表达式表示在输入大小上是线性的,但在某些情况下,常数因子可能高达 40,000,使得相对较小的正则表达式消耗大量内存。每个被解析的正则表达式现在被限制为 256 MB 的内存占用。 现在拒绝其表示将使用更多空间的正则表达式。正则表达式的正常使用不受影响。issue 见:https://github.com/golang/go/issues/55949。
Go语言中文网已经为大家准备好了安装包:https://studygolang.com/dl,当然,也可以采用官方的方式更新:
推荐阅读