Organizador da saída do objdump

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

[ Hits: 1.870 ]

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

Migrar de MySQL 3.x e 4.x para 5.0 no Debian

Corrigindo problema com Splash no Ubuntu

Script em Xdialog para montar/desmontar dispositivos

Abrindo Sessão Cluster Beowulf

Converter slides swf baixados do slideshare para pdf


  

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