プログラミング言語「R」に任意コード実行の脆弱性 悪用の可能性あり更新を:セキュリティニュースアラート
プログラミング言語「R」に脆弱性「CVE-2024-27322」が存在すると報じられた。この脆弱性は安全ではないデータシリアライゼーションにより生じ、システム上で任意のコードが実行される可能性がある。
セキュリティ企業のHiddenLayerは2024年4月29日(現地時間)、プログラミング言語「R」に任意コードが実行可能な脆弱(ぜいじゃく)性が存在すると報じた。
Rはデータ分析やデータマイニング、統計分析、統計モデリング、機械学習などデータ処理の分野で人気の高いプログラミング言語だ。データの操作や計算、可視化などを実施する機能が備わっており、パッケージなどを使って高品質なグラフィックスを生成できる。科学技術分野だけでなくビジネス分析や金融分析などデータを処理する必要のある分野で高い人気がある。
人気のプログラミング言語「R」にRDSファイルが引き起こす脆弱性
今回見つかった脆弱性は、安全ではないデータシリアライゼーションが原因になっており、悪用された場合は最終的にシステム上で任意のコードが実行される危険性がある。この脆弱性は「CVE-2024-27322」として特定されている。
脆弱性が存在するバージョンは以下の通りだ。
- R 1.4.0から4.4.0よりも前のバージョン
脆弱性が修正されたバージョンは以下の通りだ。
- R バージョン4.4.0
Rはデータシリアライゼーションやデータデシリアライゼーションをサポートしており、シリアライズされたデータは「.rds」または「.rdx」という拡張子のRDSファイル(R Data Serialization)として保存される。この他、Rは遅延評価機能もサポートしており、必要なタイミングで呼び出し可能となっている。
CVE-2024-27322はこれらの機能や不具合を悪用するというものだ。具体的には、RDS形式で保持されているシリアライズされたPromiseクラスのオブジェクトが「eval()関数」にロードされる際に、オブジェクト内部の値が未評価の状態で参照されると、本来のタイミングではなく直ちに評価が実行される問題だとされている。
HiddenLayerはこの脆弱性がRDSファイルやRパッケージなどを介したサプライチェーン攻撃の一部として悪用される可能性があることを指摘している。該当バージョンを使用している場合は修正版にアップデートすることが望まれている。
関連記事
- Rustは「Go」や「C++」と比較して何が優れているのか? Googleエンジニアが語る
Googleは自社の経験を基に、ソフトウェア開発において、プログラミング言語RustがC++と比較して高い生産性と安全性を実現していると報告した。 - バイデン政権、メモリ安全性の高いプログラミング言語の採用を呼びかけ
重大な脆弱性を減らすための取り組みの一環として、メモリ安全性の高いプログラミング言語をソフトウェアに採用する傾向が強まっている。 - PHPやRust、Node.jsなどで引数処理の脆弱性を確認 急ぎ対応を
JPCERT/CCは複数のプログラミング言語や実行環境で、Windows環境におけるコマンド実行処理での脆弱性を公表した。この脆弱性は不適切なエスケープ処理によってコマンドインジェクションを引き起こす可能性がある。 - 「Copilot for Securityを使ってみた」 セキュリティ担当者が感じた4つのメリットと課題
一般提供が開始された生成AIチャットbot「Microsoft Copilot for Security」。これはセキュリティ業務の役に立つのだろうか。セキュリティ担当者が実際に使ってみたメリット/デメリットを語った。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.