コンソールプログラムを「クラックさせて」何かを表示させようとしています。問題は、改行(\r\n
)を印刷できないことです。私は改行を印刷することができない、言ったように実行ファイルを編集するprintf()を呼び出す
push 4ad0eb46 ; the string (let's pretend "Hi guys")
push 4ad0eb80 ; and the format ("%s")
call near ds:[<&msvcrt.printf>] ; call printf
jmp 4ad0eb4f ; skip data
; now here I coded the strings
mov ds:[4ad289ec],eax ; and here the program resumes
:私は場所を発見し、バイナリを編集しdisasseblerで 。私は"%s\r\n"
となりますので、"%s\r\n"
となりますので、"Hi guys\r\n"
を印刷して 文字列(それを"Hi guys\x13\x10"
とする)にエンコードし、"Hi guys"
と2つの奇妙な文字、おそらくASCIIを取得します。 0x13と0x10の表現。
あなたが持っている「奇妙なキャラクター」はなんですか?あなたにとって奇妙に思われることは、他の人にとって有益な情報かもしれません。 –
一種の「!!」 '|>'と似た三角形 – BlackBear