Organizador da saída do objdump

Publicado por Ruan (última atualização em 06/04/2015)

[ Hits: 1.903 ]

Homepage: N/A

Download odump.sh




Apenas para facilitar um pouco a vida. Organiza, salva ou apenas imprime na tela.

Aceito sugestões de mudanças.

Muito obrigado.

  



Esconder código-fonte

#!/bin/bash
# Organize exit the objdump
# Autor: Slack
# Date: 24/03/2015
# version 1.3
# ld -s hello.o bar.o -o foobar
# Var COUNT -1 becaus in C, strlen () starts counting from zero, wc -l starts counting from one

    # Test
    if [[ "$#" < 2 ]]; then
        echo "Usage: `basename $0` {-p|-s|-ps} filename.o"
        exit 1
    fi

    if ! [[ "$2" =~ .o$ ]]; then
        echo "Please check the argument "foo.o""
        echo "nasm -f elf foo.asm -o foo.o"
        exit 1
    fi

    if [[ -z "$(type -p objdump)"  || -z "$(type -p nasm)" ]]; then
        echo "Obs: Objdump or Nasm -- NOT INSTALLED!!"
        exit 1
    fi

    test -e "$2.txt" || touch "$2.txt"

    # Vars
    ASM="$2"
    ORGANIZE="$(objdump -d "$ASM" | egrep -v "[0-9]{8}\s<" | egrep -o "([0-9a-f]{2}\s){1,5}" | sed -e 's/^/"\\x/' -e 's/\s/\\x/g' -e 's/\\x$/"/g')"
    COUNT="$(objdump -d "$ASM" | egrep -v "[0-9]{8}\s<"  | egrep -o "([0-9a-f]{2}\s){1,5}" | wc -l)"
    OUT="$2.txt"

    # Working
save () {
    echo "$ORGANIZE" > "$OUT"
    echo "Length: $(expr "$COUNT" - 1)" && echo "Length: $(expr "$COUNT" -1 )" >> "$OUT"
    }


print () {
    echo "**********Shellcode***********"
    echo "$ORGANIZE"
    echo "**********Shellcode***********"
    echo
    echo "Length: $(expr "$COUNT" -1 )"
    echo
    }

    case "$1" in
        -p)
            print
        ;;

        -s)
            save
                echo "Shellcode organized save in "$OUT""
        ;;

        -ps)
           save
           print
        ;;

        *)
           echo "Usage: `basename $0` {-p|-s|-ps} filename.o"
           echo "-p for print"
               echo "-s just save"
               echo "-ps save and print"
           exit 1
    esac

Scripts recomendados

DefaultApps V2.1

Remover e-mails com MX inexistente e status deferred em servidores Postfix

Formatar disquetes msdos & ext2.

Ping para servidores tendo um arquivo TXT com a lista dos IPs/Hostnames

Script para monitoramento de processos em execução no sistema


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts