
public disclosure
影響を受けるアプリケーション: MindManager23_setup.exe
プラットフォーム: Windows
問題: MSIインストーラの修復モードによるローカル権限昇格(EXEハイジャックの競合状態)
発見および報告者: Pawel Karwowski および Julian Horoszkiewicz (Eviden Red Team)
提案された緩和策: https://learn.microsoft.com/en-us/windows/win32/msi/disablemsi
公開開示の理由: この問題を無期限に秘匿しておくことは、長期的には脅威アクターに利益をもたらします(この問題は発見が自明です)。一方で、ユーザーや管理者はリスクを認識しないままにされます。
ベンダーの立場は? ベンダーによれば、脆弱性はサードパーティのコンポーネント(CVE-2021-41526)に存在するため、ベンダーの責任ではないとのことです。しかし、これは彼らのソフトウェアに脆弱性がないことを意味するものではありません。 私たちはこの問題を2023年8月22日にベンダーへ最初に報告しました。それ以降、US CERTを調整作業に巻き込んだにもかかわらず、修正プログラムのリリースを彼らに納得させることができませんでした。長期間にわたってメッセージをやり取りした後、私たちはCERTと、この状況では公開開示が適切な行動であると合意しました。
脆弱性とは? MindManager23がインストールされているシステムでは、一般ユーザーが次のコマンドを実行することで、インストーラを「修復」モードで起動することが可能です: msiexec.exe /fa PATH_TO_INSTALLER_FILE.msi
これによりmsiexecサービスが起動し、修復プロセスが実行され、複数のアクションが実行され、その中にはC:\Users\pk\AppData\Local\Tempディレクトリ内にファイルを作成するものも含まれます。これらのファイル名は動的に生成され、次のパターンになります: "wac<4つのランダムな文字または数字>.tmp"、例えば wac98DF.tmp です。 その後、プロセスは生成されたwac****.tmpファイル(実行可能ファイル)をNT AUTHORITY/SYSTEMとして使用し、それ自身のイメージを書き込み、読み込みます。
C:\Users\pk\AppData\Local\ディレクトリは一般ユーザーが所有しているため、C:\Users\pk\AppData\Local\Temp\ディレクトリはその権限を引き継ぎ、一般ユーザーがディレクトリの内容に干渉することが可能になります。例えば、動的に生成されたDLL\EXEファイルを上書きすることができます。
Mind Managerインストーラにおける権限昇格は、既知の脆弱性を持つコンポーネント - CVE-2021-41526の影響を受けるFlexera Installshield - を使用していることに起因します。Mind Managerは、最新版のFlexera Installshieldを使用するか、MSIを再パッケージして「修復モード」をサポートしないようにするか、実行に管理者権限を必要とするようにすべきです。
悪用プロセスは? 悪用は、.MSIファイルを実行し、対象となる正当なDLL\EXEの存在と生成を確認し、PoCのDLL\EXEファイルをAppData\Local\Tempディレクトリに繰り返しコピーして、正当なDLL\EXEファイルを実質的に上書きするPowerShellスクリプトを使用して行われます。実行後、PoCのDLL\EXEファイルはC:\Users\Publicにpoc.txtファイルを作成し、それに呼び出し元のコマンドラインとwhoamiの出力を記載します。