Go1.16.4 发布

polaris · · 2198 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

Go 官方发布了 Go1.16.4 和 Go1.15.12,这是两个小版本,修复一个安全问题,这是根据新的安全策略而发布的:<https://github.com/golang/go/issues/44918>。 这个完全漏洞如下: 在读取一个非常大的 header(64 位架构上超过 7MB 或 32 位架构超过 4MB)时,net/http 中的 ReadRequest 和 ReadResponse 会导致不可恢复 panic。Transport 和 Client 易受攻击,并且可以通过恶意服务器导致程序崩溃。默认情况下,服务器不容易受到攻击,但如果通过将 Server.MaxheaderBytes 设置为更高的值,比如超过默认的 1M ,在这种情况下,恶意客户端会导致服务端崩溃。 这个问题也会影响到 golang.org/x/net/http2/h2c 包和 golang.org/x/net/http/httpguts 包中的 HeaderValuesContainsToken。因此,这也进行了修复,升级到 golang.org/x/net@v0.0.0-20210428140749-89ef3d95e781。 该问题对应的 issue 在这里:<https://github.com/golang/go/issues/45710>。 发现这个 Bug 是因为 [Ethereum 2.0 bounty program](https://ethereum.org/en/eth2/get-involved/bug-bounty) 出现了 crash。 因为 Go 只维护最近的两个版本,如果你的项目有此风险,建议升级到 1.15.12 或 1.16.4。 你可以按照下图的方式升级: ![1.16.4.png](https://static.studygolang.com/210508/4d7f0b6215fab4ae2164e721a8af6848.png) 也可以通过 「Go语言中文网」下载:<https://studygolang.com/dl>,源码和预编译包都为你准备好了。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:701969077

2198 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传