Конвертор шела

Discussion in 'Реверсинг' started by gr0t, 7 Feb 2010.

  1. gr0t

    gr0t New Member

    Joined:
    21 Jan 2010
    Messages:
    34
    Likes Received:
    0
    Reputations:
    0
    Народ, скажите как можно просмотреть (сконвертить) набор машинных инструкций шел кода в читабельный вид асма, к примеру такой(хотя разговор о любом вообще)

    Code:
    #
    
    char shellcode[] =
    #
            "\x23\x21\x2f\x75\x73\x72\x2f\x62\x69\x6e\x2f\x70\x65\x72\x6c\x0a"
    #
            "\x24\x63\x68\x61\x6e\x3d\x22\x23\x63\x6e\x22\x3b\x0a\x24\x6b\x65"................
    
     
  2. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    241
    Likes Received:
    163
    Reputations:
    32
    можешь попробовать скомпилить этот кусок кода, а потом глянуть в дебаггере что получится, будет этот кусок храниться в данных и нужно будет ещё постараться найти смещение при котором значения твоего шеллкода будут преобразовываться в инструкции с самого начала, не прихватив предыдущие значения, в принципе это наверно можно будет поправить nop'ами (0x90).

    Зы. более чем уверен что есть что-то типа дизассемблера длин для подобных вещей, а ещё можно сохранить это в бинарке и попробовать открыть в асм-режиме в hiew (хотя вожно будут проблемы, так как файл то будет не ехе)

    зыы. в hiew проверил на обычном текстовике - всё работает, так что смело записывай шеллкод в бинарник и в hiew
     
    #2 VERte][, 7 Feb 2010
    Last edited: 7 Feb 2010
  3. gr0t

    gr0t New Member

    Joined:
    21 Jan 2010
    Messages:
    34
    Likes Received:
    0
    Reputations:
    0
    Все эти шелкоды создаются автоматически так предполагаю, человеку запариться можно сидеть и инструкции на асм коде переводить в машинные, значит есть и обратный путь...может кто пользовался каким то подобным софтом и есть уже решения....
     
  4. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    241
    Likes Received:
    163
    Reputations:
    32
    чти добавку к посту выше, а вот обратно, я так полагаю все делается тоже просто, компилишь код на языке, а там уже из того-же hiew или любого дебаггера берешь значения
     
  5. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    Это не опкоды, найди конвертер hex->text и посмотри
     
  6. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    241
    Likes Received:
    163
    Reputations:
    32
    в шеллкоде нет опкодов? да часть строки скорее всего идет на ввод, часть на забитие адреса в стеке, остальная часть должна быть программной разве не так?
     
  7. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,937
    Likes Received:
    805
    Reputations:
    224
    В этом нет


    \x23\x21\x2f\x75\x73\x72\x2f\x62\x69\x6e\x2f\x70\x65\x72\x6c\x0a = #!/usr/bin/perl
     
    2 people like this.
  8. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    241
    Likes Received:
    163
    Reputations:
    32
    ну оке, был не прав, на перле так на перле. думаю тс'у будет интересно почитать это http://www.hackzona.ru/hz.php?name=News&file=article&sid=7342
    или тоже самое с картинками http://xs-rus.ucoz.ru/publ/5-1-0-13
     
    #8 VERte][, 7 Feb 2010
    Last edited: 7 Feb 2010
  9. Hiro Protagonist

    Joined:
    26 Aug 2009
    Messages:
    132
    Likes Received:
    24
    Reputations:
    -2
    а записать этот массив в файл программно и посмотреть в том же хьюве, что это значит так сложно?
     
  10. gr0t

    gr0t New Member

    Joined:
    21 Jan 2010
    Messages:
    34
    Likes Received:
    0
    Reputations:
    0
    Kaimi, VERte][
    спс за инфу, закинул бы в репу, но оказывается люди с репутацией в 0 не имеют права.