重要な情報 脆弱性名称: OpenRefine Zip Slip 脆弱性 CVE番号: CVE-2023-46751 CVSSスコア: 9.8 (深刻) 影響対象バージョン: OpenRefine 3.6.0 およびそれ以前のバージョン 修正バージョン: OpenRefine 3.6.1 脆弱性の概要 OpenRefine は、データ処理タスクで広く使用されているオープンソースのデータクリーニングおよび変換ツールです。このツールは、ZIP ファイルを含む様々な形式のデータファイルをインポートすることを許可しています。しかし、ZIP ファイルの処理には、Zip Slip 脆弱性として知られる重大なセキュリティ脆弱性が存在します。 脆弱性の影響 攻撃者は悪意のある ZIP ファイルを構築し、Zip Slip 脆弱性を利用して、標的システム上で任意のコードを実行したり、重要なファイルを上書きしたりすることが可能です。これにより、データ漏洩、システムの崩壊、またはシステム全体の乗っ取りにつながる可能性があります。 技術的な詳細 脆弱性の発見 SonarQube チームは OpenRefine のソースコードを分析する際にこの脆弱性を発見しました。具体的には、OpenRefine が ZIP ファイルを解凍する際、解凍パスを正しく検証しなかったため、攻撃者は特製の ZIP ファイルを使用してパスTraversal(ディレクトリトラバーサル)攻撃を行うことができました。 脆弱性の悪用 攻撃者は、 などの特殊なパスを含む ZIP ファイルを作成し、OpenRefine にアップロードできます。OpenRefine がこのファイルを解凍すると、内容が標的システムの任意の位置に書き込まれ、重要なファイルが上書きされたり、悪意のあるコードが実行されたりします。 修正措置 OpenRefine チームはバージョン 3.6.1 でこの脆弱性を修正しました。修正措置には以下が含まれます: 1. 解凍パスが予期された範囲を超えないことを保証するためのパス検証ロジックを追加しました。 2. 依存ライブラリを更新し、より安全な ZIP 解凍方法を使用するようにしました。 タイムライン 2023-09-01: 脆弱性が発見され、OpenRefine チームに報告されました。 2023-09-15: OpenRefine チームが脆弱性を確認し、修正作業を開始しました。 2023-10-01: 脆弱性を修正した OpenRefine 3.6.1 がリリースされました。 総括 Zip Slip 脆弱性は、特にユーザーアップロードされた ZIP ファイルを扱う際に一般的なセキュリティ問題です。OpenRefine のこの脆弱性は、ファイル解凍操作を実行する際に開発者が厳格なパス検証を実施し、パスTraversal 攻撃を防止する必要があることを示しています。ソフトウェアおよび依存ライブラリの適時な更新は、此类の脆弱性を防止するための有効な手段です。