Windows ウィンドウクラスのエクストラバイト悪用に関する互換性メモ
データを隠す不正な場所を見つける話。本記事では、Windowsウィンドウクラスのエクストラバイトを本来の用途以外で使用する互換性上の問題について解説しています。
背景メモ
- **Raymond Chen**(レイモンド・チェン)はMicrosoftのエンジニアで、ブログ「The Old New Thing」でWindowsの歴史的・技術的トリビアを発信している。Windowsの「なぜそうなったか」を知るための第一級の情報源。
- **ウィンドウクラス拡張バイト(window class extra bytes)** とは、Windowsの各ウィンドウクラスに付与できる数バイトのユーザー定義記憶領域。本来はウィンドウごとの軽量データ保存用だが、一部の古いアプリやハッキング的手法で、ウィンドウプロシージャのフック時などに「隠しデータ」の格納場所として濫用された。
- 本記事は、そうした濫用がWindowsの互換性維持にどう影響するか、そして新しいWindowsバージョンでその挙動が変更された場合に旧アプリが壊れるリスクについて述べている。Microsoftがどれだけ後方互換性を重視しているか、その一端が垣間見える内容。