Удалённая отладка

Тема в разделе "WASM.RESEARCH", создана пользователем Kopeicev, 4 сен 2011.

  1. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Всем привет!
    Недавно попался упакованный файлик (малвара), решил разобрать, дамп снял, нашёл оффсеты, куда хотелось бы поставить бряки и посмотреть что да как. Т.к. это малвара, для отладки выбрал Remote Win32 Debugger в IDA и вот тут возникла проблема, после распаковки сампл становится в памяти больше, чем оригинальный файл и найденные в дампе оффсеты просто отсутствуют в файле.
    Вопрос такой: Как можно настроить удалённую отладку в Иде (или в любом другом дебаггере) по оффсету, если этот оффсет отсутствует в файле?
     
  2. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Скорее всего Вы его не правильно распаковали, а для этого Вам помогут хардварные бряки.
     
  3. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    То, что я сделал, даже не распаковка, я просто дал процессу поработать некоторое время и снял дамп :)
    Хочу уточнить: как поставить хардварные бряки, если по сути оффсеты не известны?
     
  4. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    я не совсем понимаю, что значит оффсеты не известны? программа выделяет память и копирует себя туда, каждый раз по разным адрессам?
     
  5. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Ну то и значит :) Мне нужны определённые оффсеты, которые я узнал посмотрев дамп. Но прямо до запуска файла на эти оффсеты хардварную бряку поставить нельзя, такой оффсет просто отсутствует в файле. Получается оффсет в файле до запуска того участка кода, который нам нужен не известен.
     
  6. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    хардварные бряки ставятся непосредственно по адресу, если он известен то добавляете бряк указывайте адрес и условия срабатывания в исполнение
     
  7. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Это всё можно сделать в Иде или нужно юзать что то другое? Олли?
     
  8. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    [​IMG]

    Можно и в Olly и в Syser'e и в Soft-Ice'e)))
     
  9. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Клёво, спасибо большое :)
    Ещё вопрос, ImageBase программы всегда будет постоянным? (Нужен для того, чтобы сложить его в оффсетом и получить адрес в памяти).
     
  10. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Для исполняемых фалов (в смысле exe а не dll) можно сказать что да...
     
  11. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Ок, спасибо :)
     
  12. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Возникла следующая проблема:
    Вот определился куда ставить бряку, поставил, стартую файл на удалённой отладке и Ида вываливается с ошибкой доступа к памяти, а если просто запустить файл, не под отладкой то отрабатывает корректно. Значит ли это, что малвара защищается от дебага?
     
  13. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Не обязательно IDy иногда глючит, но скорее всего да, нужно смотреть код который приводит к ошибке.
     
  14. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Сделал скрин окна ошибки Иды:
    [​IMG]
    Может с ним можно что то сказать точнее
     
  15. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    я код хотел который к ошибке приводит....
    хотя судя по всему там мусор...

    Трассируйте, смотрите что к чему...
     
  16. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Сложно его достать, как я говорил, сам файл запакован. А во время отладки сложно сказать где упало...
     
  17. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Можете залить куда-нибудь файл, я гляну...
     
  18. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Послал ЛС с объяснением ситуации...
     
  19. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Можете попробовать отдавать исключение программе, возможно заработает.

    P.S. личку глянте...
     
  20. Kopeicev

    Kopeicev New Member

    Публикаций:
    0
    Регистрация:
    4 сен 2011
    Сообщения:
    11
    Ответил :)