2017-02-22 9 views
0

私は本当に私のC++プログラムを別の(コンパイルされた)プログラムに挿入したいと思っています。私がこれをやりたいのは、バイトの最初の部分(プログラムが始まる場所)を私のプログラムのバイナリ(例えばコーデックに貼り付けられたもの)に移動させ、実行の終了時に、プログラムの実行が開始されました。EXEに注入

これは可能ですか?もしそうであれば、そうするのは良い/賢いアイデアですか?

他の方法がありますか?

例: 現在の時刻をファイルに書き込んで終了するプログラムを作成しましたので、Internet Explorerに挿入して起動すると、現在の時刻がファイルに書き込まれてから開始されますインターネットエクスプローラ。

+2

あなた自身のためだけのものですか? –

+4

スタックオーバーフローには単純な核デバイスを構築するのに十分な答えがすでにあるでしょう。トロイの木馬を実装する際にはステップバイステップガイドは必要ありません。 – riodoro1

+0

@ riodoro1私はトロイの木馬を望んでいません。私がした場合、私はちょうど良い1つをオンラインでダウンロードし、それを使用します。 – Niels

答えて

0

これを行うには、microsoftからダウンロードできるPEファイルのドキュメントを読む必要があります。

これを行うには、多くの研究と実験が必要ですが、これはstackoverflowの対象外です。これを行うことは、パッチを適用しようとする実行可能プログラムに大きく依存することにも注意してください。あなたのバージョンではうまくいくかもしれませんが、他のバージョンではうまくいかない可能性があります。この種の攻撃に対しても技術があります。実行可能ファイルとOSに組み込まれることがあります。

可能ですか?

はい。もちろん、それは自明ではありません。

スマートですか?

あなたが何をするかによって異なります。時にはそれが唯一の方法かもしれません。