CISA urges software devs to weed out path traversal vulnerabilities
2024/05/02 BleepingComputer — 5月2日 (木) にCISA と FBI が 公開した共同勧告は、ソフトウェア会社に対して、自社製品をリリース前に見直し、パス・トラバーサルの脆弱性を修正するよう求めるものだ。ディレクトリ・トラバーサルとも呼ばれる、パス・トラバーサル脆弱性の悪用に成功した攻撃者は、重要なファイルの作成/上書きを行い、認証などのセキュリティ・メカニズムをバイパスし、コード実行を引き起こす可能性を持つ。さらに、脅威アクターに対して、機密データへのアクセスを許してしまう可能性もある。もし、認証情報が盗まれた場合には、その後の、標的システムへの侵入において、既存アカウントへのブルートフォース (総当り) 攻撃に悪用されるケースもある。

もう一つのシナリオは、認証に使用される重要なファイルの上書/削除/破損により、脆弱なシステムのダウンや、アクセスのブロックにいたるものだ。それにより、全てのユーザーがロックアウトされる可能性が生じる。
CISA と FBI は、「ディレクトリ・トラバーサルの脆弱性が悪用されるのは、ユーザーから提供されたコンテンツを、攻撃者に狙われる可能性があるものとして、技術メーカーが扱わないことに起因している。そのため、ユーザーのコンテンツが、適切に保護されない状況が発生する。ディレクトリ・トラバーサルのような脆弱性は、遅くとも 2007 年以降において、“許しがたいもの” と言われてきた。しかし依然として、CWE-22/CWE-23 のようなディレクトリ・トラバーサルの脆弱性は、一般的な脆弱性のクラスとして存在し続けている」と述べている。
重要インフラ攻撃における最近の悪用がきっかけに
CISA と FBI は、「近頃よく報道されている、ヘルスケアおよび公衆衛生セクターなどの、重要インフラ・セクターのユーザーを危険にさらす、脅威アクターのキャンペーンに対応するために、この共同勧告を作成した。そこでは、依然として、CVE-2024-1708/CVE-2024-20345 などの、ソフトウェアのディレクトリ・トラバーサルの脆弱性が悪用されている」と説明している。
たとえば、ScreenConnect のパス・トラバーサルの脆弱性 CVE-2024-1708 は、CobaltStrike ビーコンと buhtiRansom LockBit 亜種をプッシュする、Black Basta/Bl00dy ランサムウェア攻撃において、CVE-2024-1709 認証バイパス欠陥と連鎖して悪用されている。
両機関は、ソフトウェア開発者に対して、ディレクトリ・トラバーサル脆弱性を防ぐために、以下のような “一般的かつ効果的な” 緩和策を実施するよう求めている:
- ファイル名を付ける際に、ファイル名を自分で作成するのではなく、各ファイルにランダムな識別子を生成して、関連するメタデータをデータベースなどの個別な場所に保存する。
- ファイル名に指定できる文字の種類を、英数字に限定するなど、厳密に制限する。
- アップロードされたファイルに、実行可能なパーミッションがないようにする。
パス・トラバーサルの脆弱性は、MITRE による 2023 年の “CWE Top 25 Most Dangerous Software Weaknesses” において、第8位にランクインしている。それより上位にあるのは、境界外書き込み/XSS (cross-site scripting)/SQL インジェクション/解放済みメモリの使用/OS コマンド・インジェクション/境界外読み取りなどの脆弱性となる。
CISA と FBI は、3月にも Secure by Design 警告を発表しており、ソフトウェアを製造する企業の経営幹部に対して、SQL インジェクション (SQLi:SQL injection) のセキュリティ脆弱性を防ぐための、緩和策を実施するよう求めている。
SQLi 脆弱性は、MITRE の 2023年の “CWE Top 25 Most Dangerous Software Weaknesses” では、境界外書き込み/XSS の脆弱性に続いて、第3位にランクされている。
最近のサーバー攻撃では、かなりの確率で横方向への移動が行われ、被害が拡大しがちですが、その際にもディレクトリ・トラバーサル脆弱性が悪用されているのでしょう。今回は FBI との共同勧告ですが、CISA の活躍が目立ちます。特に、Secure by Design は、とても良い試みのように思えます。よろしければ、CISA KEV ページも、ご参照ください。
You must be logged in to post a comment.