Черти, новый OllyDbg появился!

Тема в разделе "WASM.HEAP", создана пользователем IceBars, 11 окт 2007.

  1. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    l_inc
    кнешно будет, но счяс-то она без плагинов зачем %)
     
  2. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    l_inc
    Dr0%7, это значительный недостаток. Я их очень часто использую. Вот например сейчас запустил, прога перехватывает некоторые функции устанавливая на них хардварный бряк. Просмотреть содержимое отладочных регистров нельзя. Alt+H - пустое окно. Запускаю - происходит останов, хотя в 1.10 останов не происходил, если отладочные регистры не оля изменяла, хз как теперь дебажить. Хотя предыдущая версия сбрасывала часть Dr - контекста при останове, эта версия не сбрасывает, что есть гуд.
    Не помогает. Открой разделяемую ядром память и посмотри - хоть и окно обновляется, но отображаемые значения показываются не в реальном времени, а те которые были при предыдущем останове. Это очень плохо.
    Да, это.
    Было Analysis -> [...] -> Command. Теперь вроде Analysis -> Remove analysis, но для всей секции сразу.
    Было правой мыши View -> [Список модулей]. Теперь этого вообще нет.

    Краткое поверхностное знакомство сотладчиком;
    Из улучшений:
    - добавили детачь.
    - останов на первой инструкции диспетчера исключений. Но это не возможно сделать без жестких либо аппаратных точек останова(нужно в ядре перед исполнением Iret взвести TF), не вникал глубоко, но это работает даже при защищённой от записи нтдлл, так что вероятно используются аппаратные точки останова.
    - Останов по возврату из прерываний.
    - Закрыли багу с ядерным GUI-калбэком, что позволяет трассировать оконное приложение, но с другой стороны открыли возможность детекта посредством тогоже калбэка.

    Недостатки:
    - При входе в процедуру в защищённом от записи модуле пишет "Unable to flush cashe" и вообще виснет, либо завершает процесс.
    - При запущенном отладчике нечто странное происходит с буфером обмена(залочен) во всей системе.
    - Не понятно как строку скопировать всю как есть.
    - Если память в которой проеция модуля не MEM_IMAGE, хотя запись о модуле валидны в загрузчике, в карте памяти и списке модулей он отсутствует. Ужос..
    - Багу с модификацией селектора стека так и не пофиксили.
    - Возврат по KiServiceExit(из инструкции Sysenter) также оставили без изменений(инструкция пропускается), впрочем как и остальное(некоторые тестовые примеры тут http://files.virustech.org/indy/Tracer/detect/).
    - Разрешили инструкцией Pushfd сохранять реальное значение флажков.
    - Не закрыли баг с выходом потока из под трассировки и отключением отладчика.
    - При вызове NtClose с не валидным хэндлом также вызывается ядерный калбэк(KiRaiseUserExceptionDispatcher из которого далее NtRaiseException).
    - Не известны сервисы с префиксом Zw, ассемблируются только Nt.
    Короче я оставил версию 1.10
     
  3. Hellspawn

    Hellspawn New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2006
    Сообщения:
    310
    Адрес:
    Москва
    толку тут распинаться то? атору отмыль :) да и недостатки в основном специфические.
     
  4. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    GoldFinch
    Лично я почти не пользуюсь плагинами... Да и что там... байтик отладки в PEB подредактировать? Всякие командные строки вообще ИМХО нафиг не нужны. Мне легче сделать CTRL+G/MessageBoxA/F2, чем bpx MessageBoxA: ИМХО нагляднее. Свои писать вообще лень. :) Ну дамп сделать... но в общем прям такого уж смертельного недостатка, чтобы писать: "Она без плагинов зачем", — я не вижу. А улучшений там немало.
    Clerk
    А Alt+E (или просто мышей до буквы E дотянуться) не проще? И табличка информативнее, и кликов меньше, то бишь быстрее.
    У меня было ровно один раз. Сейчас всё нормально.
    А... В смысле при работающей программе? Так как раз Appearance -> Autoupdate здесь и помогает. Т.е. у меня значения изменяются в реальном времени. Мало того: в 1.1 этого как раз нету. К тому же особой пользы от этой возможности я не вижу, но, если Вам это важно, то тут явное улучшение по сравнению с 1.1.
    Тут опять-таки по сравнению с 1.1 как раз улучшение: в 1.1 при нажатии Ctrl+E возможности копирования не было (только Paste), а теперь можно и копировать.
    Лень проверять, но, возможно, поможет Options->Debugging->Assume flat selectors.
    В каком смысле? call ZwCreateFile, например, прекрасно ассемблируется. А вот с Nt и раньше никогда не ассемблировалось.
    Ну и Вы перечисляете отчасти те баги, которые и в 1.1 присутствовали. Т.е. 2.0 по меньшей мере не хуже. Улучшений, разумеется, гораздо больше, чем Вы написали. В остальном либо согласен, либо лень проверять. Жалко, пока нет возможности сделать трассировку в обход через аппаратные точки останова... но не такой уж это и большой минус.
     
  5. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Не поможет, тут простым дизасмом не обойтись.)
    Нет не помогает. В 1.1 если все потоки остановлены при изменении окна, либо если выделять изменяются в нём данные, а в этой версии нет. Открой дамп страницы 0x7FFE0000 и посморти. И как это пользы нет, как мне смотреть что в памяти. Яж не только стек смотрю, я мэппинги, ядро и пр. олей сморю.
    У меня иначе. 1.1 не ассемблировала Nt, новая не знает про Zw, зато знает Nt, в отличае от предыдущей. Впрочем не столь важно.
    На счёт плагинов ты прав, толку от них мало.
    Короче со вкусами не спорят, оставлю ярлычёк(уже 4-й модификации), вдруг пригодится, но всёравно предпочту классику - 1.10.)
     
  6. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    Clerk
    Ну... смотрю... в первый раз проверял на адресах из GetTickCount. Если птичка Autoupdate стоит, то значения меняются в реальном времени. А в 1.1 как раз не меняются. Точнее меняются только тогда, когда я постоянно клацаю в дамп.