C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: DLL INjection


(過去ログ 114 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■67147 / inTopicNo.1)  DLL INjection
  
□投稿者/ borg (3回)-(2013/07/07(Sun) 21:34:46)

分類:[C#] 

俗に言う DLL Injection を使用したアプリを C++ (VS2005) から C# (VS2010) に移植しています。
(CreateRemoteThread + LoadLibrary を使用する方法です)

Injection される側は既存のアプリで、今回C#に移植したのは Inject する側のアプリです。
(位置づけとして、Inject する側はシステム全体の管理アプリです)

Vista 環境では何ら問題無く動作しましたが、Win 7 環境だとうまく動作しません。
・Win7環境は、ドメインログオンしている
・管理アプリの動作は、
 @LoadLibrary の引数(DLL名)用のメモリを確保する VirtualAllocEx もエラーなし
(Injectされる側のプロセスメモリに確保するものです)
 ACreateRemoteThread も エラーなし。
  GetExitCodeThread も 0 が返ってきている。
 は確認しましたが、Inject した(はずの) DLL はロードされていません。
(PROCESS_ATTACH を通っていない)

アクセス権の不足かとも考えたのですが、それならAPIがそれなりのエラーを返
すと思います。
Vista環境では動作しているので、C#への移植は問題無いと思っていますが、

もし何か気付きあれば御教えください。


引用返信 編集キー/
■67149 / inTopicNo.2)  Re[1]: DLL INjection
□投稿者/ オショウ (80回)-(2013/07/08(Mon) 02:34:40)
> Vista環境では動作しているので、C#への移植は問題無いと思っていますが、
>
> もし何か気付きあれば御教えください。

  Advanced Windows は、読まれてます?
  他にも、Injectionを行う為の情報はいろいろありますが・・・

  で、何故、わざわざC++からC#にされたのでしょうか?
  基本的に大間違い。

  Vistaで動いたから・・・と言うのが間違いで、.NETなんて巨大な
  ランタイムを必要とするようなものを使っては、そのうちOSごと
  クラッシュしますヨ!

  極力、他に何も必要としないWin32 DLL 形式でInjection用のDLL
  を作成するのが、基本中の基本です。

以上。参考まで
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -