ニュース

ファイルを書き換えずにランサムウェアのような攻撃を行う手法が発見される。概念実証の「GhostLock」をセキュリティ研究者が発表

Windows NT 3.1から存在しているSMBの仕様を悪用

@@https://ghostlock.io/|GhostLock|bn@@より

 セキュリティ研究者のキム・ドヴァシュ氏は、データの書き込みを行わずにファイルのアクセスを不能にする概念実証の「GhostLock」を発表した。

 GhostLockは、Windowsがネットワーク経由のファイル共有で使用するプロトコル「SMB」の仕様を悪用した攻撃に関する、概念実証のためのプログラムである。

 このプログラムの関数「CreateFileW」でファイルを開くが、このとき共有モードを宣言する「dwShareMode」というパラメーターの値を0x00000000(ほかのアプリケーションによる同時アクセスを許可しない、排他的アクセス状態)に指定することが特徴で、これにより、ほかのアプリケーションはファイルへのアクセスができなくなる。

 キム氏は、この状態について、ファイルサーバーにあるWord文書を開こうとしたら、ほかのユーザーが編集中であるとのメッセージが表示されて開けない状態、と説明している。なお、この操作は管理者権限を持たないアカウントでも実行できてしまう。

 この操作を、システム内のファイル全体に対して行うことにより、システム上のアプリケーションは動作できなくなり、業務は継続不能となる。ファイルにアクセスできず、業務が継続できなくなるという効果はランサムウェアに近いが、共有モードを指定してファイルを開いているだけで、ディスク上に一切書き込みを行わないため、異常な書き込みを監視する既存のEDRツールでの検出は難しい。また、ファイルの暗号化といった時間のかかる処理も行わないため、短い時間でファイルがアクセス不能になってしまう。

 GhostLockとともにキム氏が公開したホワイトペーパーでは、50万個のファイルを含む共有フォルダーに対し、6分22秒で全体をマッピングし、2分37秒でファイルをロックしたという実験結果が紹介されている。

 この仕様は1993年のWindows NT 3.1から存在している。複数のプログラムが同じファイルを書き換えることでのデータの破損を防ぐ機能として使われており、動作自体を悪意があるものとして検知することは難しく、プロトコルの不具合や脆弱性ではないため、パッチによる修正は構造的に不可能と考えられている。

 実効的な対策としては、1つのセッションが異常な数の排他的なファイルアクセスを保持していないかを監視することに加え、攻撃発生時には管理者が該当のセッションを強制終了してファイルを解放する運用手順を事前に整備することが推奨されている。