手机版
你好,游客 登录 注册
背景:
阅读新闻

Go 1.11.3和1.10.6发布,修复了安全问题

[日期:2018-12-15] 来源:Linux公社  作者:醉落红尘 [字体: ]

昨天,Go团队发布了Go 1.11.3和Go 1.10.6。 Go团队建议所有用户更新到其中一个版本。如果您不确定要更新哪一个,请选择Go 1.11.3。这些版本解决了以下安全问题:

cmd/go:  “go get -u” 期间执行远程命令

go get -u命令下载,更新和构建源代码,不应该执行任意代码。在自定义域的帮助下,可以使用以 /.git结尾的虚导入路径将Git存储库克隆到名为.git的文件夹中。

如果Git存储库根目录包含HEAD文件,对象目录,配置文件,refsdirectory,那么go get -u可用于将父目录视为存储库根目录,并在其上运行Git命令。这将有助于在原始Git存储库根目录中使用配置文件进行配置。如果配置文件包含恶意命令,它们将在运行go get -u的系统上执行。

cmd/go:通过导入路径中的花括号“go get”进行目录遍历

go get命令下载并构建源代码。严格来说,不应允许任意文件系统写入。当使用-u标志或使用包含花括号({和}字符)的恶意Go包的导入路径执行时,go get命令容易受到远程代码执行的攻击。它仅在GOPATH模式下易受攻击,而在模块模式下不受攻击。攻击者可以创建任意文件系统写入,这可以进一步导致代码执行。

crypto/x509:链验证中的CPU拒绝服务

包crypto/x509解析并验证X.509编码的密钥和证书。它应该处理由具有合理资源使用的攻击者提供的证书链。此程序包不限制为每个链验证执行的工作,并可能帮助攻击者创建病态输入,进一步导致CPU拒绝服务。接受客户端证书的Go TLS服务器和验证证书的TLS客户端受到影响。

在GOPATH模式下在包含“...”的导入路径模式上执行时,“go get”中的功能回归在GOPATH工作空间中不存在。此问题将在下一版本Go 1.11.4和Go 1.10.7中得到解决。

此更新收到了用户的反应。很少有用户认为如果Go团队应该使用上下文。 WithTimeout甚至TLSHandshakeTimeout用于旧Go的安全性。其他用户对Go团队所做的努力表示赞赏。

要了解有关此版本的更多信息,请查看官方声明

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-12/155858.htm

linux
相关资讯       Go 1.11.3  Go 1.10.6 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款