Amazon Linux 2023 : golang、golang-bin、golang-misc (ALAS2023-2023-048)

critical Nessus プラグイン ID 173069

概要

リモートの Amazon Linux 2023 ホストに、セキュリティ更新プログラムがありません。

説明

したがって、ALAS2023-2023-048 のアドバイザリに記載されている複数の脆弱性の影響を受けます。

- 1.15.13より前および 1.16.5 より前の 1.16.x の Go の archive/zip では、(アーカイブのヘッダー内) の細工されたファイルカウントにより、NewReader または OpenReader パニックが引き起こされる可能性があります。(CVE-2021-33196)

- GOARCH=wasm GOOS=js が使用されている場合、WASM モジュールからの関数呼び出しで、1.16.9 より前の Go および 1.17.2より前の 1.17.xに大きな引数を介した、バッファオーバーフローがあります。(CVE-2021-38297)

- 1.16.10以前の Go および 1.17.3以前の 1.17.xにおける debug/macho (Open または OpenFat 用) の ImportedSymbols は、バッファの終わりの後のメモリ位置 (別名: 領域外スライス状態) にアクセスします。
(CVE-2021-41771)

- 1.16.10以前の Go および 1.17.3以前の 1.17.xでは、不正な名前または空のファイル名フィールドを含む細工された ZIP アーカイブを介して、アーカイブ/zip Reader.Open パニックが発生する可能性があります。(CVE-2021-41772)

- 1.16.12より前および 1.17.5より前の 1.17.xの Go の net/http により、HTTP/2 リクエストを介したヘッダー正規化キャッシュで、メモリ消費が制御されない事態が発生する可能性があります。(CVE-2021-44716)

- UNIX の 1.16.12より前、および 1.17.5より前の 1.17.xの Go では、意図しないファイルまたは意図しないネットワーク接続に書き込み操作が行われる可能性があります。これはファイル記述子が枯渇した後にファイル記述子 0 が誤って閉じられた結果として発生します。(CVE-2021-44717)

- Go 1.17.12および Go 1.18.4より前に net/http の HTTP/1 クライアントで無効な Transfer-Encoding ヘッダーを受け入れると、ヘッダーを無効として不適切に拒否する中間サーバーと組み合わせた場合に、HTTP リクエストスマグリングが可能になります。(CVE-2022-1705)

-Go 1.17.12および Go 1.18.4より前の go/parser の Parse 関数における制御されない再帰により、攻撃者が、深くネストされた型または宣言を介して、スタック枯渇によりパニックを引き起こす可能性があります。(CVE-2022-1962)

- Go の 1.16.14より前および 1.17.7より前の 1.17.xの math/big の Rat.SetString には、オーバーフローがあり、制御されないメモリ消費が発生する可能性があります。(CVE-2022-23772)

- Go の 1.16.14より前および 1.17.7より前の 1.17.xの cmd/go は、バージョンタグのように偽装して表示されるブランチ名を誤って解釈する可能性があります。これにより、アクターがブランチは作成できるが、タグは作成できないと想定されている場合、不適切なアクセスコントロールが発生する可能性があります。(CVE-2022-23773)

- 1.16.14 より前の Go および 1.17.7 より前の 1.17.x の crypto/elliptic の Curve.IsOnCurve が、有効なフィールド要素ではない big.Int 値を持つ状況で、誤って true を返す可能性があります。(CVE-2022-23806)

- 1.17.9より前の Go および 1.18.1 より前 1.18.x の encoding/pem で、大量の PEM データを介したデコードスタックオーバーフローが発生します。(CVE-2022-24675)

- Go 1.16.15 より前および 1.17.8 より前の 1.17.x の前の regexp.Compile により、深くネスト化された式を介して、スタックの枯渇が可能となっています。(CVE-2022-24921)

- Go の0.0.0-20220314234659-1baeb1ce4c0b より前の golang.org/x/crypto/ssh パッケージにより、攻撃者が AddHostKey に関連する特定の状況でサーバーをクラッシュさせる可能性があります。(CVE-2022-27191)

- 1.18.6より前の Go および 1.19.1より前の 1.19.xの net/http では、シャットダウンが致命的なエラーによりプリエンプトされた場合、HTTP/2 接続が終了中にハングアップする可能性があるため、攻撃者がサービス拒否を引き起こす可能性があります。(CVE-2022-27664)

- Go 1.17.12および Go 1.18.4より前の encoding/xml の Decoder.Skip の制御されない再帰により、深くネスト化された XML ドキュメントを介してスタックの枯渇により攻撃者がパニックを引き起こす可能性があります。(CVE-2022-28131)

- Go 1.17.9より前および 1.18.1より前の 1.18.xの crypto/elliptic の汎用 P-256 機能により、長いスカラー入力を介したパニックが可能になります。(CVE-2022-28327)

- Reader.Read は、ファイルヘッダーの最大サイズに制限を設定しません。悪意を持って細工されたアーカイブにより、Read が無制限の量のメモリを割り当て、リソースの枯渇またはパニックを引き起こす可能性があります。
修正後の Reader.Read はヘッダーブロックの最大サイズを 1 MiB に制限します。(CVE-2022-2879)

- 1.17.10より前の Go および 1.18.2より前の 1.18.xに不適切な権限が割り当てられています。ゼロ以外のフラグパラメーターで呼び出されると、Faccessat 関数が、ファイルがアクセス可能であると誤って報告する可能性があります。
(CVE-2022-29526)

- Go 1.17.11および Go 1.18.3より前の crypto/tls のセッションチケットの ticket_age_add のランダムではない値により、TLS ハンドシェイクを観察できる攻撃者が、セッション再開中にチケットの有効期間を比較することで、連続する接続を相互に関連付けることができます。(CVE-2022-30629)

- Go 1.17.12および Go 1.18.4より前の io/fs における Glob の制御されない再帰により、攻撃者が、多数のパスセパレーターを含むパスを介して、スタック枯渇によりパニックを引き起こす可能性があります。
(CVE-2022-30630)

- Go 1.17.12および Go 1.18.4の前の compress/gzip の Reader.Read における制御されない再帰により、攻撃者が、多数の連結された長さゼロの圧縮ファイルを含むアーカイブを介して、スタック枯渇によりパニックを引き起こす可能性があります。(CVE-2022-30631)

- Go 1.17.12および Go 1.18.4より前の path/filepath における Glob の制御されない再帰により、攻撃者が、多数のパスセパレーターを含むパスを介して、スタック枯渇によりパニックを引き起こす可能性があります。
(CVE-2022-30632)

- Go 1.17.12および Go 1.18.4の前の encoding/xml の Unmarshal における制御されない再帰により、攻撃者は、「any」フィールドタグを使用するネスト化されたフィールドを持つ Go 構造体に XML ドキュメントをアンマーシャリングすることで、スタック枯渇によりパニックを引き起こす可能性があります。(CVE-2022-30633)

- Go 1.17.12および Go 1.18.4より前の encoding/gob の Decoder.Decode の制御されない再帰により、深くネスト化された構造を含むメッセージを介して、スタック枯渇により攻撃者がパニックを引き起こす可能性があります。
(CVE-2022-30635)

- Go 1.17.12および Go 1.18.4の前の net/http でのクライアント IP アドレスの不適切な漏洩は、X-Forwarded-For ヘッダーの nil 値を含む Request.Header マップで httputil.ReverseProxy.ServeHTTP を呼び出すことで発生する可能性があります。これにより、クライアント IP を X-Forwarded-For ヘッダーの値として設定するための ReverseProxy が発生します。(CVE-2022-32148)

- エンコードされたメッセージが短すぎると、1.17.13 および 1.18.5より前の Go の math/big で、Float.GobDecode および Rat GobDecode にパニックが発生し、サービス拒否が発生する可能性があります。(CVE-2022-32189)

- JoinPath および URL.JoinPath は、相対パスに追加された ../ パス要素を削除しません。たとえば、JoinPath(https://go.dev, ../go) は、JoinPath のドキュメントに ../ パス要素が結果から取り除かれると書かれているにもかかわらず、URL https://go.dev/../goを返します。(CVE-2022-32190)

- 信頼できないソースから正規表現をコンパイルするプログラムは、メモリ枯渇またはサービス拒否に脆弱な場合があります。解析された正規表現は入力サイズに線形ですが、場合によっては定数係数が 40,000 にもなり、比較的小さな正規表現がはるかに多くのメモリを消費します。修正後に解析される各正規表現は 256 MB のメモリフットプリントに制限されます。表現がそれより多くのスペースを使用する正規表現は、拒否されます。正規表現の通常の使用は影響を受けません。(CVE-2022-41715)

- NUL 値がサニタイズされていないため、攻撃者が Windows で悪意を持って環境変数を設定できる可能性があります。
syscall.StartProcess および os/exec.Cmd で、NUL 値を含む無効な環境変数値が適切にチェックされません。悪意のある環境変数の値がこの動作を悪用して、別の環境変数に値を設定する可能性があります。例えば、環境変数文字列 A=B\x00C=D は、変数 A = B および C = D を設定します。(CVE-2022-41716)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションの自己報告されたバージョン番号にのみ依存しています。

ソリューション

「dnf update golang --releasever=2023.0.20230222」を実行してシステムを更新してください。

参考資料

https://alas.aws.amazon.com/AL2023/ALAS-2023-048.html

https://alas.aws.amazon.com/faqs.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33196.html

https://alas.aws.amazon.com/cve/html/CVE-2021-38297.html

https://alas.aws.amazon.com/cve/html/CVE-2021-41771.html

https://alas.aws.amazon.com/cve/html/CVE-2021-41772.html

https://alas.aws.amazon.com/cve/html/CVE-2021-44716.html

https://alas.aws.amazon.com/cve/html/CVE-2021-44717.html

https://alas.aws.amazon.com/cve/html/CVE-2022-1705.html

https://alas.aws.amazon.com/cve/html/CVE-2022-1962.html

https://alas.aws.amazon.com/cve/html/CVE-2022-23772.html

https://alas.aws.amazon.com/cve/html/CVE-2022-23773.html

https://alas.aws.amazon.com/cve/html/CVE-2022-23806.html

https://alas.aws.amazon.com/cve/html/CVE-2022-2879.html

https://alas.aws.amazon.com/cve/html/CVE-2022-24675.html

https://alas.aws.amazon.com/cve/html/CVE-2022-24921.html

https://alas.aws.amazon.com/cve/html/CVE-2022-27191.html

https://alas.aws.amazon.com/cve/html/CVE-2022-27664.html

https://alas.aws.amazon.com/cve/html/CVE-2022-28131.html

https://alas.aws.amazon.com/cve/html/CVE-2022-28327.html

https://alas.aws.amazon.com/cve/html/CVE-2022-29526.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30629.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30630.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30631.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30632.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30633.html

https://alas.aws.amazon.com/cve/html/CVE-2022-30635.html

https://alas.aws.amazon.com/cve/html/CVE-2022-32148.html

https://alas.aws.amazon.com/cve/html/CVE-2022-32189.html

https://alas.aws.amazon.com/cve/html/CVE-2022-32190.html

https://alas.aws.amazon.com/cve/html/CVE-2022-41715.html

https://alas.aws.amazon.com/cve/html/CVE-2022-41716.html

プラグインの詳細

深刻度: Critical

ID: 173069

ファイル名: al2023_ALAS2023-2023-048.nasl

バージョン: 1.5

タイプ: local

エージェント: unix

公開日: 2023/3/21

更新日: 2023/12/12

サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 5.9

CVSS v2

リスクファクター: High

基本値: 7.5

現状値: 5.9

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS スコアのソース: CVE-2021-38297

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 8.8

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:P/RL:O/RC:C

脆弱性情報

CPE: p-cpe:/a:amazon:linux:golang-bin, p-cpe:/a:amazon:linux:golang-src, p-cpe:/a:amazon:linux:golang-race, p-cpe:/a:amazon:linux:golang-tests, p-cpe:/a:amazon:linux:golang, p-cpe:/a:amazon:linux:golang-shared, p-cpe:/a:amazon:linux:golang-docs, p-cpe:/a:amazon:linux:golang-misc, cpe:/o:amazon:linux:2023

必要な KB アイテム: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

エクスプロイトが利用可能: true

エクスプロイトの容易さ: Exploits are available

パッチ公開日: 2023/2/17

脆弱性公開日: 2021/8/2

参照情報

CVE: CVE-2021-33196, CVE-2021-38297, CVE-2021-41771, CVE-2021-41772, CVE-2021-44716, CVE-2021-44717, CVE-2022-1705, CVE-2022-1962, CVE-2022-23772, CVE-2022-23773, CVE-2022-23806, CVE-2022-24675, CVE-2022-24921, CVE-2022-27191, CVE-2022-27664, CVE-2022-28131, CVE-2022-28327, CVE-2022-2879, CVE-2022-29526, CVE-2022-30629, CVE-2022-30630, CVE-2022-30631, CVE-2022-30632, CVE-2022-30633, CVE-2022-30635, CVE-2022-32148, CVE-2022-32189, CVE-2022-32190, CVE-2022-41715, CVE-2022-41716

IAVB: 2021-B-0069-S, 2022-B-0025-S, 2022-B-0042-S, 2022-B-0046-S