公開:

【CVE-2024-49944】LinuxカーネルのSCTP脆弱性が修正、システムクラッシュの危険性に対処

text: XEXEQ編集部
(記事は執筆時の情報に基づいており、現在では異なる場合があります)


記事の要約

  • Linuxカーネルでsctpコンポーネントの脆弱性が修正
  • sctp_listen_start関数内でautobind失敗時の状態遷移に問題
  • NULL参照による潜在的なクラッシュの可能性を排除

Linuxカーネル5.4から6.12のSCTPの脆弱性

kernel.orgは、Linuxカーネルにおけるsctpコンポーネントの重要な脆弱性【CVE-2024-49944】を2024年10月21日に公開した。この脆弱性はsctp_listen_start関数内でautobindが失敗した際にsk_stateCLOSEDに戻す処理が欠落していることに起因している。特定の条件下でbind_hashがNULLのまま参照される可能性があるのだ。[1]

脆弱性の影響を受けるバージョンは、Linux 2.6.30からLinux 6.12-rc2までの広範囲に及んでいる。この問題は特にSCTP_REUSE_PORTオプションが設定されている環境で顕在化し、メモリ破壊やシステムのクラッシュを引き起こす可能性が高いだろう。

kernel.orgは複数のバージョン向けにパッチを提供しており、特にLinux 4.19.323、5.4.285、5.10.227、5.15.168、6.1.113、6.6.55などの安定版で修正が行われている。また、6.10.14以降および6.11.3以降のバージョンでも対策が実装され、システムの安定性が向上した。

Linuxカーネルの影響を受けるバージョンまとめ

項目 詳細
脆弱性識別子 CVE-2024-49944
影響を受けるバージョン Linux 2.6.30から6.12-rc2
修正済みバージョン 4.19.323、5.4.285、5.10.227、5.15.168、6.1.113、6.6.55以降
問題箇所 sctp_listen_start関数内のautobind失敗時の処理
影響 NULL参照によるシステムクラッシュの可能性

SCTPについて

SCTPとはStream Control Transmission Protocolの略称で、TCPやUDPと同様にトランスポート層のプロトコルとして機能する。主な特徴として、以下のような点が挙げられる。

  • マルチストリーミングによる並行データ転送が可能
  • マルチホーミングによる高い信頼性を確保
  • メッセージ指向の通信を実現

今回の脆弱性は、SCTPソケットのbind操作とlisten操作の間の状態遷移に関する問題が原因となっている。特にSCTP_REUSE_PORTオプションを使用する場合にbind_hashがNULLのままアクセスされることで、カーネルのクラッシュを引き起こす可能性があるのだ。

Linuxカーネルのセキュリティ強化に関する考察

Linuxカーネルのネットワークスタックにおける状態管理の重要性が改めて浮き彫りとなった。特にSCTPのような複雑なプロトコルでは、エラー処理と状態遷移の整合性を保つことが極めて重要であり、今回のような脆弱性は開発プロセスにおけるコードレビューの重要性を示唆している。

今後はより包括的なテストケースの導入とセキュリティチェックの自動化が求められるだろう。特にネットワークプロトコルのエラー処理パスに関しては、より厳密な検証が必要であり、静的解析ツールの活用やフォーマル検証の導入も検討に値するだろう。

また、バージョン管理とセキュリティパッチの適用についても、より効率的な仕組みの構築が望まれる。特に長期サポート版のカーネルを使用している環境では、セキュリティアップデートの迅速な適用が重要であり、自動化されたパッチ管理システムの整備が急務となっている。

参考サイト

  1. ^ CVE. 「CVE Record | CVE」. https://www.cve.org/CVERecord?id=CVE-2024-49944, (参照 24-11-15).

※上記コンテンツはAIで確認しておりますが、間違い等ある場合はコメントよりご連絡いただけますと幸いです。

「セキュリティ」に関するコラム一覧「セキュリティ」に関するニュース一覧
ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。