1

ちょっとした質問がありました。

コンソール アプリケーション内に次のコードがあるとします。

printf("Enter name: ");

scanf("%s", &name);

この脆弱性を悪用して、次のシェル コード (MessageboxA) を入力します。

6A 00 68 04 21 2F 01 68 0C 21 2F 01 6A 00 FF 15 B0 20 2F 01

コンソールからシェル コード (16 進値) を入力するにはどうすればよいですか?

入力をそのまま入力すると、数値は16進数ではなく文字として扱われます。

どうもありがとう。

4

1 に答える 1

2

目的のコンテンツを含むファイルを stdin として使用するか、echo コマンドを使用できます。

シェル コードが AA BB CC DD であるとします (明らかに、これは有効なシェルコードではありません)。

echo -e "\xAA\xBB\xCC\xDD" | prog
于 2012-05-19T12:47:26.443 に答える