FreeBSD Execve

Publicado por Perfil removido 07/07/2008

[ Hits: 5.760 ]

Download execve.c




Usando syscall execve em um FreeBSD.

  



Esconder código-fonte

#Assembly FreeBSD x86
#syscall(59,"/bin/sh".....);
#as execve.s -o execve.o
#ld execve.o -o execve
#______[execve.s]_________

.section .text
.globl _start
_start:

        xor %eax,%eax          #%eax = 0
        push %eax                 #Empurra %eax = 0 = NULL na stack 
        push $0x68732f6e       #Empurra sh/n
        push $0x69622f2f       #Empurra ib//
        mov %esp,%edx        #Move %esp = sh/nib// para %edx
        push %eax                 #Empurra %eax = 0 = NULL 
        push %esp                 #Empurra %esp  = /bin/sh terminando com NULL
        push %edx                 #Empurra %edx  = /bin/sh
        push %eax                 #Empurra %eax  = NULL
        mov $0x3b,%al           #Syscall 0x3b = 59 = execve
        int $0x80                    #Interupção do Kernel

Scripts recomendados

Fibonnaci de N em Assembly

Árvore binária de busca em Assembly - com comentários

"Clear Screen" para Linux x86 com Inline Assembly (embutido no código) em C

Escrita de um número em decimal na tela em Assembly Puro para Linux x86 (GNU Assembler)

"Clear Screen" para Linux 64 bits em Assembly Puro (GNU Assembly)


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário