runas with restricted access

最近、数箇所*1 で iehook *2 の話題が取り上げられている。iehook そのものは特にイマサラ的な内容で面白いものではないと思っていますが、id:NyaRuRu:20050423#p7 みたいな派生話題はちょっと興味がでますね。
今、手元では Windows XPWindows Server 2003 も動かないので確認できませんが、タイトルのようなオプションが増えているらしい。動作に関しては上記 NyaRuRu さんの日記のリンク先の英文を読む限りは…たぶん理解できた。時間が取れたときに覚えていたら、ちょっと遊んでみようかなぁ…。


そういや、SetWindowsHookEx の話題が出てるのは iehook が SetWindowsHookEx を使ってるってことなのかな、お手軽極楽的には CreateRemoteThread ですかね。Win9X はサポート外で(笑
SetWindowsHookEx でグローバルに仕掛けた場合、CallNextHookEx の第0引数の hhk には NULL が指定できるんだけど、これも Windows Server 2003 で試してないなぁ。NULL で不具合が出る環境は XP まででは存在していないと思うので、きっと大丈夫だろう。*3


そして、.NET アセンブリをグローバルフックとして非 .NET アプリケーション上に挿入する C++ ライブラリのデバッグを途中で放棄していることを思い出すのであった。

*1:って、3人ぐらいしか知らないけど

*2:id:yaneurao:20050425#p1あたり?

*3:Microsoft のサンプルなんかでは堂々と NULL を渡しているのだが、オンラインで発見できるサンプルの多くでは PE ファイルに共有データセクションを作ったりして、そこでハンドル管理していたりする。