セキュリティ企業Snykの調査から、明らかになったアーカイブファイルの展開処理における脆弱性「Zip Slip」。JPCERT/CCでも6日に注意喚起を行っており、Snykでは影響を受けるプロジェクトの情報やCVE、Fixed dateなどのリストをGitHubで更新しているが、英国セキュリティベンダーSophosのオウンドメディアNaked securityに、同サイト運営者でもあるMark Stockley氏が寄稿。数千単位のプロジェクトが深刻な脆弱性「Zip Slip」による影響を受けていることが明らかになった。深刻だがシンプルなものだとMark Stockley氏はZip Slipを解説している。
攻撃者は、パス・トラバーサル手法を使って、感染したシステム上で重要なファイルを上書きできるZipアーカイブを作成することが可能になる。悪意あるファイルに置き換えるか、ファイルを破壊してしまう。攻撃者はこの機能を使って遠隔から狙ったファイルに対して攻撃することも可能になる。Webサイトの一部や、人気のアプリ、システムファイルなど、ユーザーまたはコンピュータが何らかの方法で動かすファイルを狙うことができると脆弱性が悪用された場合のケースを挙げる。また、Zip SlipはZipファイル方式の問題ではなく、さまざまなプロジェクトで長い間悪いプログラミングが繰り返された結果だと述べ、
"脆弱性はJavaScript、Ruby、.NET、Goなど多数のエコシステムで発見されている。特に、ハイレベルのアーカイブファイルの処理を提供する中央のライブラリを持たないJavaでよく見られる。そのようなファイルがないことから、脆弱なコードスニペットが加工され、StackOverflowなど開発者コミュニティの間で共有されることになったのだろう"
と、Snykの特設サイトに掲載されている文章を引用。残念ながら、悪いコード習慣複数のソフトウエアライブラリ、複数の言語で繰り返されており、これが広範囲での拡散につながっため、修正は簡単ではなさそうだとしている。ただ、関係するプロジェクトは、修正パッチの構築と実装ができるよう数カ月前にバグについて知らされており、バグは責任を持って公開されているという。
Mark Stockley氏はパス・トラバーサルの仕組みを解説した上で、慌てることはない。ソフトウエアバグに過ぎないのだ。深刻だが、修正すれば良いのだと前述のGitHub上プロジェクトとライブラリのリストに言及し、まずはここをチェックして脆弱ソフトウエアを使っていないか調べるように薦めているほか、標準ライブラリを使った方が良いのか検討、システムが防御を念頭に設定されているのか、アプリケーションが最低でも特権に基づき動作しているのかを確認したいといくつかのポイントを述べている。