Нужен совет

Discussion in 'Реверсинг' started by buzulukland, 16 Jul 2008.

  1. buzulukland

    buzulukland Elder - Старейшина

    Joined:
    24 Jan 2008
    Messages:
    40
    Likes Received:
    4
    Reputations:
    0
    По адресу
    _http://ifolder.ru/7358607
    скачал crackme. проблема в следующем: убиться веником, но я никак не пойму как сделать поле для ввода активным и как подгрузить кнопку... С текстом ввода вчера провозился - возможно я ошибаюсь - но проблема там с параметрами функции SetWindowTextA, а именнов в родителе его вызвавшего. Но опять таки это лишь предположение. Поэтому решил отдать на растерзание людям, опыта у которых более, чем у меня.Буду благодарен за подробное объяснение.
     
  2. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    смотреть сабж нет времени, но, как я понимаю, 4тобы сделать поле ввода активным (как и любое другое окно), достато4но ему послать сообщение WM_ENABLED 1. а еще проще использовать олькин плагин WindowJuggler (http://tuts4you.com/download.php?view.113)
     
  3. 0verbreaK

    0verbreaK Elder - Старейшина

    Joined:
    30 Apr 2008
    Messages:
    318
    Likes Received:
    42
    Reputations:
    -3
    Смотря на чем написана программа (может и не иметь значения), при создании контрола (кнопка, едит, мемо...) в Delphi используется функция CreateWindowEx, которая кладет в стек параметры отображения созданного контрола, так вот твоя задача изменить аргумент передаваемый стеку (WS_DISABLE сделать WS_ENABLE)

    WS_DISABLE = 58
    WS_ENABLE = 50

    Залей на вебфайл, скачать не могу.
     
    1 person likes this.
  4. buzulukland

    buzulukland Elder - Старейшина

    Joined:
    24 Jan 2008
    Messages:
    40
    Likes Received:
    4
    Reputations:
    0
    Сделано _http://webfile.ru/2097688
     
  5. 0verbreaK

    0verbreaK Elder - Старейшина

    Joined:
    30 Apr 2008
    Messages:
    318
    Likes Received:
    42
    Reputations:
    -3
    Она упх'ом пожата! Ее пожатую надо пропатчить или распаковать и пропатчить?
     
  6. buzulukland

    buzulukland Elder - Старейшина

    Joined:
    24 Jan 2008
    Messages:
    40
    Likes Received:
    4
    Reputations:
    0

    ))) да я на это его первым делом и проверил. На самом деле большой проблемы нет при реверсинге программ пожатых упх (благо она не динамически распаковывается). Но все равно спасибо за совет)))
     
  7. buzulukland

    buzulukland Elder - Старейшина

    Joined:
    24 Jan 2008
    Messages:
    40
    Likes Received:
    4
    Reputations:
    0

    Как работает плагин я разобрался. Еще один вопрос: как можно сохранить результат работы, т.е. я с помщью него разблокировал и окно ввода и кнопку, но
    1. Я не понял где плагин меняет значение (пробовал ставить bp on write, но olly просто зависала).
    2. Всеми знакомыми мне методами пытался найти значения Wnd Handle и Wnd Id в дампе. но тож успехов нет((
     
  8. 0verbreaK

    0verbreaK Elder - Старейшина

    Joined:
    30 Apr 2008
    Messages:
    318
    Likes Received:
    42
    Reputations:
    -3
    Если не ошибаюсь, то плагин работает на лету (сохранить изменения нельзя) внесенные плагином.

    В крэкми используетеся DialogBoxParam, следовательно лепится интерфейс из ресурса(не используется CreateWindowEx). Распакуй файл посмотри импортируемые
    функции и сделай вывод может, та или иная припятствовать отображению контрола.
     
  9. Flint_ta

    Flint_ta New Member

    Joined:
    1 Oct 2007
    Messages:
    3
    Likes Received:
    1
    Reputations:
    0
    А че тут сложного, crackme запакован UPX, распаковавыешь, затем REShackerom правишь ресурсы (кнопку и эдитбокс), потом трейсишь иполучаешь код "I'm no patcher!"
     
    1 person likes this.
  10. 0verbreaK

    0verbreaK Elder - Старейшина

    Joined:
    30 Apr 2008
    Messages:
    318
    Likes Received:
    42
    Reputations:
    -3
    Flint_ta есть же такие крэкми в которых надо патчить на лету.