Go 1.16.4 のリリース【セキュリティ・アップデート】

no extension

Go 1.16.4 がリリースされた。

今回は1件の脆弱性修正を含んでいる。

go1.16.4 (released 2021/05/06) includes a security fix to the net/http package, as well as bug fixes to the runtime, the compiler, and the archive/zip, time, and syscall packages. See the Go 1.16.4 milestone on our issue tracker for details.

CVE-2021-31525

ReadRequest and ReadResponse in net/http can hit an unrecoverable panic when reading a very large header (over 7MB on 64-bit architectures, or over 4MB on 32-bit ones). Transport and Client are vulnerable and the program can be made to crash by a malicious server. Server is not vulnerable by default, but can be if the default max header of 1MB is overridden by setting Server.MaxHeaderBytes to a higher value, in which case the program can be made to crash by a malicious client.

この脆弱性は

にも影響するらしい。 該当のパッケージを利用している場合は最新リビジョンにアップデートすること。

  • CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
  • 深刻度: 警告 (Score: 5.9)
基本評価基準 評価値
攻撃元区分 ネットワーク
攻撃条件の複雑さ
必要な特権レベル 不要
ユーザ関与レベル 不要
スコープ 変更なし
機密性への影響 なし
完全性への影響 なし
可用性への影響

例によって…

Ubuntu の APT で管理している Go コンパイラは古いので,ダウンロードページからバイナリ(go1.16.4.linux-amd64.tar.gz)を取ってきて手動でインストールすることを強く推奨する。 以下は手動での作業例。

$ cd /usr/local/src
$ sudo curl -L "https://golang.org/dl/go1.16.4.linux-amd64.tar.gz" -O
$ cd ..
$ sudo unlink go # 以前の Go が入っている場合
$ sudo tar xvf src/go1.16.4.linux-amd64.tar.gz
$ sudo mv go go1.16.4
$ sudo ln -s go1.16.4 go
$ go version # /usr/local/go/bin にパスが通っている場合
go version go1.16.1 linux/amd64

アップデートは計画的に。

参考図書

photo
プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
丸善出版 2016-06-20
単行本(ソフトカバー)
4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
評価     

著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。

reviewed by Spiegel on 2016-07-13 (powered by PA-APIv5)