ニュース

広く採用されている書庫展開処理に任意コード実行を許す脆弱性 ~数千のプロジェクトに影響

英セキュリティ企業が“Zip Slip”と命名、StackOverflowを介して拡散か

Snyk社が公開したホワイトペーパー

 イギリスのセキュリティベンダーSnykは5日(現地時間)、多くのオープンソースプロジェクトやライブラリで広く採用されている書庫ファイルの展開処理に重大な脆弱性があることを明らかにした。この脆弱性は“Zip Slip”と命名されており、リモートから任意のコードを実行可能になるという。

 同社によると、書庫ファイルを操作するアプリケーションのなかには、書庫に含まれるファイルのパスの検証を十分に行わずにパスを連結する処理を含むものが多くあり、“../../evil.sh”といったディレクトリトラバーサル(親フォルダーの参照)を含んだ書庫ファイルを介して攻撃が行える場合があるという。脆弱性の名前に“ZIP”が冠せられているが、TAR、JAR、WAR、CPIO、APK、RARと7Zなど、ZIP以外のファイル形式でも同様の攻撃が可能だ。

 “Zip Slip”脆弱性の影響を受けるプロジェクトは、JavaScript、Ruby、.NET、Goなど、プラットフォームを問わず確認されているが、なかでもプログラミング言語のコアライブラリで高水準なアーカイブ処理を提供していないJavaで顕著にみられるとのこと。開発者向けのQ&Aサイト“StackOverflow”などを介して脆弱性のあるコードスニペット(ソースコードの断片、サンプル)が共有され、そのまま使われていたようだ。

 本脆弱性は4月半ばに報告され、非公開でHP、Amazon、Apache、Pivotalなどのベンダーへ通知された。大半のプロジェクトではすでに対策が実施されており、最新版へ更新すれば問題は解決される。影響を受ける製品とバージョン、対策の有無などは“GitHub”のプロジェクトページでまとめられている。