AWS ParallelCluster v3.15.1 の Copy Fail 対応を確認してみた

AWS ParallelCluster v3.15.1 の Copy Fail 対応を確認してみた

2026.05.29

はじめに

AWS ParallelCluster v3.15.1 が 2026 年 5 月 28 日にリリースされました。機能追加のないセキュリティパッチリリースです。対応 CVE は 2 件。うち CVE-2026-31431(通称 Copy Fail)は CVSS 7.8 のローカル権限昇格の脆弱性です。

https://github.com/aws/aws-parallelcluster/releases/tag/v3.15.1

HPC クラスターは Slurm によるマルチユーザー環境での運用が多く、ローカル権限昇格の影響を受けやすい構成です。v3.15.1 の Ubuntu 24.04 クラスターを起動し、algif_aead カーネルモジュールが無効化されているかを確認しました。

確認結果

v3.15.1 で対応した CVE 2 件と検証範囲は次のとおりです。

CVE 内容 ParallelCluster の対応 今回の検証
CVE-2026-31431(Copy Fail) Linux カーネルの algif_aead モジュールによるローカル権限昇格 公式 AMI にパッチ適用 + Ubuntu で algif_aead を無効化 Ubuntu クラスターで無効化を確認
CVE-2025-33219 NVIDIA カーネルモジュールの整数オーバーフロー NVIDIA ドライバを 580.126.20 へ更新(Amazon Linux 2 以外) ヘッドノードでドライバ 580.126.20 を確認

Copy Fail とは

Copy Fail(CVE-2026-31431)は、Linux カーネルの algif_aead モジュールに起因するローカル権限昇格の脆弱性です(CVSS 7.8)。Ubuntu 固有ではなく Linux カーネル全般に影響し、Amazon Linux 2023 や RHEL などでも exploit が確認されています。影響を受けるカーネルなどの詳細は以下の記事を参照ください。

https://www.ipa.go.jp/security/security-alert/2026/alert20260501.html

HPC クラスターでこの脆弱性が問題になりやすいのは、マルチユーザー環境を前提とするからです。Slurm クラスターでは非特権のジョブ投入ユーザーが同一ノードに同居します。ローカル権限昇格を突かれると、他ユーザーのデータ取得やノード全体の制御を許してしまいます。

v3.15.1 の変更点

v3.15.1 は機能追加のないセキュリティパッチリリースです。変更点は 2 つの CVE への対応のみです。

CVE-2026-31431 対応

ParallelCluster AMI にセキュリティパッチが適用されました。Ubuntu では加えて、algif_aead カーネルモジュールを無効化する設定が AMI に組み込まれています。この設定が実際に入っているかは、後ほどヘッドノードで確認します。

CVE-2025-33219 対応

NVIDIA GPU ドライバが 580.105.08 から 580.126.20 へ更新されました(Amazon Linux 2 を除く全 OS)。

Ubuntu クラスターを起動して algif_aead 無効化を確認する

Ubuntu 24.04 でクラスターを起動し、algif_aead が無効化されているかを確認します。

クラスター設定ファイル

次の設定ファイルでクラスターを作成します。

Region: ap-northeast-1
Image:
  Os: ubuntu2404
Tags:
  - Key: Name
    Value: cluster-v3.15.1-algif-aead
HeadNode:
  InstanceType: t3a.small
  Networking:
    ElasticIp: false
    SubnetId: subnet-029f0fb0acc64043d  # 自分のサブネット ID に置き換える
  LocalStorage:
    RootVolume:
      Size: 45
      Encrypted: true
      VolumeType: gp3
      Iops: 3000
      Throughput: 125
  Iam:
    AdditionalIamPolicies:
      - Policy: arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
Scheduling:
  Scheduler: slurm
  SlurmSettings:
    ScaledownIdletime: 5
  SlurmQueues:
    - Name: queue1
      ComputeResources:
        - Name: compute1
          Instances:
            - InstanceType: t3a.micro
          MinCount: 0
          MaxCount: 1
      ComputeSettings:
        LocalStorage:
          RootVolume:
            Size: 45
            Encrypted: true
            VolumeType: gp3
            Iops: 3000
            Throughput: 125
      CapacityType: SPOT
      AllocationStrategy: price-capacity-optimized
      Networking:
        SubnetIds:
          - subnet-0897827eb4d8cd2fe  # 自分のサブネット ID に置き換える
      Iam:
        AdditionalIamPolicies:
          - Policy: arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
Monitoring:
  Logs:
    CloudWatch:
      Enabled: true
      RetentionInDays: 180
      DeletionPolicy: "Delete"
  Dashboards:
    CloudWatch:
      Enabled: false

ヘッドノードに接続して algif_aead 無効化を確認する

ヘッドノードに SSM 経由で接続し、無効化設定の存在と modprobe の遮断を順に確認します。

設定ファイルの確認

modprobe.d に algif_aead の無効化設定が書かれているかを確認します。無効化設定は 2 ファイル(disable_algif_aead.confdisable-algif_aead.conf)に置かれていました。後者には CVE-2026-31431 (AKA copy.fail) を明記したコメントが付いています。どちらも記述は install algif_aead /bin/false です。modprobe algif_aead を実行すると /bin/false が走り、ロードは止まります。

grep -r algif /etc/modprobe.d/
実行結果
/etc/modprobe.d/disable_algif_aead.conf:install algif_aead /bin/false
/etc/modprobe.d/disable-algif_aead.conf:# Disable algif_aead module due to CVE-2026-31431 (AKA copy.fail)
/etc/modprobe.d/disable-algif_aead.conf:install algif_aead /bin/false

未ロード状態の確認

現在 algif_aead がロードされていないことを確認します。ロードされていなければ lsmod には何も表示されません。

lsmod | grep algif_aead
実行結果
(出力なし)

ロード試行の遮断確認

algif_aead をロードしようとすると、install ディレクティブの /bin/false が実行されてロードが拒否されます。retcode 1 が返り、exit=1 でコマンドが失敗することを確認します。

sudo modprobe algif_aead; echo "exit=$?"
実行結果
modprobe: ERROR: ../libkmod/libkmod-module.c:1084 command_do() Error running install command '/bin/false' for module algif_aead: retcode 1
modprobe: ERROR: could not insert 'algif_aead': Invalid argument
exit=1

ロード試行後の未ロード確認

modprobe 試行後も algif_aead がロードされていないことを確認します。遮断が効いていれば、lsmod には引き続き何も表示されません。

lsmod | grep algif_aead
実行結果
(出力なし)

modprobe を経由する以上、カーネルの自動ロードや非特権ユーザーのロード要求も同じ /bin/false で止まります。algif_aead のロードが遮断されていることを確認できました。

NVIDIA ドライバの CVE-2025-33219 について

もう 1 件の CVE-2025-33219 は、NVIDIA カーネルモジュールの整数オーバーフローです。コード実行・権限昇格・DoS・情報漏洩につながる可能性があり、CVSS は 7.8(High)で Copy Fail と同スコアです。

ドライバのバージョンは GPU インスタンスでなくても確認できます。ParallelCluster AMI には、ヘッドノードのインスタンスタイプを問わず NVIDIA ドライバ一式が導入済みです。GPU デバイスがないとカーネルモジュールがロードされず nvidia-smi は失敗しますが、modinfo ならモジュールファイルから直接バージョンを確認できます。

modinfo nvidia | grep -E '^(version|filename):'

今回の Ubuntu 24.04 ヘッドノード(t3a.small)での結果です。version フィールドが 580.126.20 なら、v3.15.1 で更新された版と一致します。

実行結果
filename:       /lib/modules/6.17.0-1015-aws/updates/dkms/nvidia.ko
version:        580.126.20

まとめ

AWS ParallelCluster v3.15.1 はセキュリティパッチリリースです。対応した CVE は以下の 2 件です。

  • CVE-2026-31431(Copy Fail): Ubuntu で algif_aead モジュールを無効化。Ubuntu 24.04 クラスターで modprobe.d の無効化設定と modprobe の失敗を確認
  • CVE-2025-33219: NVIDIA ドライバを 580.126.20 へ更新(Amazon Linux 2 を除く)。ヘッドノードで modinfo nvidia によりドライバ 580.126.20 を確認

HPC クラスターは複数ユーザーが同じノードでジョブを動かす構成です。CVSS 7.8 のローカル権限昇格を突かれると被害が他ユーザーに及びます。複数ユーザーでクラスターを運用している場合は、v3.15.1 への切り替えを推奨します。

おわりに

不特定多数で利用する大規模なクラスターを ParallelCluster で運用している場合は特に対応を検討していただきたいです。新規クラスターへの切り替えとなるため移行が大変なことは重々承知してはおりますが。

参考

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事