Rustの標準ライブラリにCVSS 10.0の脆弱性 任意のシェルコマンドを実行されるリスク:セキュリティニュースアラート
Rustセキュリティレスポンスワーキンググループは、Rustの標準ライブラリに脆弱性(CVE-2024-24576)が存在すると報告した。サイバー攻撃者が任意のシェルコマンドを実行できる可能性がある。
Rustセキュリティレスポンスワーキンググループは2024年4月9日(現地時間)、プログラミング言語「Rust」の標準ライブラリに不適切な引数のエスケープ処理に起因する脆弱(ぜいじゃく)性が存在すると伝えた。
Rustの標準ライブラリにCVSS 10.0の脆弱性 急ぎ対処を
この脆弱性は「CVE-2024-24576」として特定されており、CVSSスコアは「10.0」で深刻度「緊急」と評価されている。この脆弱性を悪用した場合、サイバー攻撃者は任意のシェルコマンドを実行できる可能性がある。
Rustセキュリティレスポンスワーキンググループによると、この問題は「Windows」においてAPIを使ってバッチファイルを起動する際に引数を適切にエスケープ処理していないことに原因がある。サイバー攻撃者はこの脆弱性を利用してプロセスに渡される引数を使って任意のシェルコマンドを実行できる。
同ワーキンググループによると、「Windows API」はスポーンされるプロセスへの全ての引数を含む単一の文字列しか提供せず、それらを分割するのは生成されるプロセス側だという。多くのプログラムでは標準的な「C」言語のランタイムargv値を使用しており、実際には引数の分割方法はほとんど一貫している。
だがバッチファイルは例外で、独自の引数分割ロジックを持っている。そのため、バッチファイルに渡される引数のカスタムエスケープを標準ライブラリに実装させることになる。今回の問題はこの部分に関係しており、Rustのエスケープロジックは十分に徹底されておらず、任意のシェル実行をもたらす悪意のある引数を渡すことが可能であることが報告された。
脆弱性の影響を受けるバージョンは以下の通りだ。
- Rust バージョン1.77.2より以前の全てのバージョン
脆弱性が修正されたバージョンは以下の通りだ。
- Rust バージョン1.77.2
既に問題が修正されたバージョンが提供されていることから、脆弱性が存在するバージョンを使っている場合は修正済みバージョンにアップデートすることが求められる。
Rustは開発者からの人気が高いプログラミング言語だ。ホワイトハウスが2024年2月、メモリ安全性を考慮したプログラミング言語に切り替えることを推奨したレポートにおいてRustを引き合いに出すなど、最近注目度が高まっている。
関連記事
- Rustは「Go」や「C++」と比較して何が優れているのか? Googleエンジニアが語る
Googleは自社の経験を基に、ソフトウェア開発において、プログラミング言語RustがC++と比較して高い生産性と安全性を実現していると報告した。 - バイデン政権、メモリ安全性の高いプログラミング言語の採用を呼びかけ
重大な脆弱性を減らすための取り組みの一環として、メモリ安全性の高いプログラミング言語をソフトウェアに採用する傾向が強まっている。 - Linuxカーネルに特権昇格の脆弱性 急ぎ確認とアップデートを
NSFOCUSはLinuxカーネルの特権昇格の脆弱性(CVE-2024-1086)について詳細情報とPoCツールが公開されたとし、影響を受けるユーザーに対して修正されたバージョンへの迅速なアップデートを呼びかけた。 - Red Hatが緊急警告、XZ UtilsにCVSS 10.0の脆弱性 悪意あるコードが挿入か
Red Hatは最新バージョンのXZ Utilsに不正アクセスを意図する悪意あるコードが含まれていると発表した。この脆弱性はバージョン5.6.0および5.6.1に存在しCVSSスコアは「10.0」と評価されている。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.