eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
обновлён 2 декабря!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: mkdev (+5 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Софт, инструменты —› OllyExt - плагин для OllyDbg2
Посл.ответ Сообщение


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 15 мая 2011 16:36 · Поправил: PE_Kill New!
Цитата · Личное сообщение · #1

Плагин для отладчика OllyDbg 2. Плагин помогает отлаживать программы с несложной защитой от отладки. Т.к. вторая версия OllyDbg не поддерживает плагины, вам придется внедрить код в отладчик для подгрузки плагина. В архиве уже пропатченый exe версии 2.01 (Alfa 2). При запуске отладчика плагин добавляет меню Options -> OllyExt, где есть скудные (пока) настройки.

* Hide from PEB - обнуляет в PEB флаги BeingDebugged и NtGlobalFlag
* Protect debug registers - скрывает и защищает от модификации отладочные регистры посредством SEH и Get/SetThreadContext

OllyExt 0.2 with patched OllyDbg 2.01 a2
OllyExt 0.2 with patched OllyDbg 2.01 c (patched by Vnv)

Баги:
XQuader пишет:
Кста, если стоит в настройках шагать юзая HW бряки, то процесс сразу стартует (в олькином логе видно, что прибивается её бряк на ЕП и остальные, если стояли при запуске ) => начало отладки должно начинаться с Int3 бряка.

| Сообщение посчитали полезным: Vnv, vnekrilov, mak, XQuader, _ruzmaz_, ff0h, obfuskator, Gideon Vi, ClockMan, [0utC4St], Usulgurt, AKAB, stas_02, 4kusNick, Dart Sergius, DenCoder, Isaev, Dem0n1C, Error13Tracer, SReg


Ранг: 88.3 (постоянный)
Статус: Участник

Создано: 15 мая 2011 17:30 New!
Цитата · Личное сообщение · #2

Позволил себе добавить плагин в 201c - http://rghost.ru/6469701


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 15 мая 2011 17:50 New!
Цитата · Личное сообщение · #3

Ага спасиб, добавил комент у себя.


Ранг: 133.2 (ветеран)
Статус: Участник
bbs.pediy.com

Создано: 15 мая 2011 18:56 New!
Цитата · Личное сообщение · #4

Thanks PE_Kill,Test .

Ранг: 73.7 (постоянный)
Статус: Участник

Создано: 15 мая 2011 19:08 · Поправил: XQuader New!
Цитата · Личное сообщение · #5

Кста, если стоит в настройках шагать юзая HW бряки, то процесс сразу стартует (в олькином логе видно, что прибивается её бряк на ЕП и остальные, если стояли при запуске ) => начало отладки должно начинаться с Int3 бряка.
ЗЫ. Прикрутил к сборке SND 2.0, брать здесь.
ЗЗЫ. Линк поправил

Ранг: 17.4 (новичок)
Статус: Участник

Создано: 16 мая 2011 06:06 New!
Цитата · Личное сообщение · #6

Кажется фемида его ещё палит.


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 16 мая 2011 06:49 New!
Цитата · Личное сообщение · #7

Поправил шапку, чтобы больше таких вопросов не возникало.

Ранг: 300.0 (мудрец)
Статус: Участник

Создано: 30 мая 2011 20:58 · Поправил: Veliant New!
Цитата · Личное сообщение · #8

Позволил себе немного попилить ольку, на вашей базе. Если быть точным подменил свою ollyext.dll
http://rghost.ru/8633771
Что обходит:
ZwQueryInformationProcess с классами
0x07 - ProcessDebugPort
0x1E - ProcessDebugObjectHandle
0x1F - ProcessDebugFlags
ZwSetInformationThread спараметром
0x11 - ThreadHideFromDebugger

байт Peb.BeingDebugged(IsDebuggerPresent), NtDebugFlags, ProcessHeapsFlags

Пока что без морды настроек. Есть желание сначала скрыть по максимуму, потом уже чебоксы прикрутить


Usulgurt пишет:
А достижения предыдущего товарища в этом направлении как бы игнорируются?

Ничуть не хочу оскорбить PE_Kill и его труд, просто попался прот который палит весь этот список, и оказалось проще написать свое чем прикручивать к чужому свой функционал. Если PE_Kill будет заинтерисован в объединении усилий - я только за, ну а нет - буду делать свою реализацию. Никому от этого хуже не станет.

Ранг: 17.4 (новичок)
Статус: Участник

Создано: 30 мая 2011 22:33 New!
Цитата · Личное сообщение · #9

Veliant пишет:
Позволил себе немного попилить ольку, на вашей базе. Если быть точным подменил свою ollyext.dll

А достижения предыдущего товарища в этом направлении как бы игнорируются?


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 31 мая 2011 10:23 New!
Цитата · Личное сообщение · #10

У меня сейчас на это абсолютно нет времени, можем перекинуться сорсами для увеличения живучести проекта.

Ранг: 17.4 (новичок)
Статус: Участник

Создано: 31 мая 2011 12:58 New!
Цитата · Личное сообщение · #11

PE_Kill пишет:
У меня сейчас на это абсолютно нет времени,


А может нужно твою dll слегка доработать, чтобы через неё ещё n новых произвольных плагинов можно было подключить в олю?


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 31 мая 2011 21:41 New!
Цитата · Личное сообщение · #12

Ну да я думал об этом, сделать PluginManager только вот со временем туговато сейчас.

Ранг: 300.0 (мудрец)
Статус: Участник

Создано: 5 июня 2011 00:13 · Поправил: Veliant New!
Цитата · Личное сообщение · #13

Итак. Так как выдался свободный денек решил попилить вторую ольку.
Начал навешивать на нее плагинную систему. Сразу скажу что изучив plugin api первой оли я отбросил затею делать совместимый код.
На данный момент уже имеются некоторые рабочие функции вроде добавления в меню, run/trace аналоги горячих клавиш, чтение памяти, запись в память, ассемблирование команды, установка/снятие int3 бряков, вывод в log.
(Остальные функции из экспорта пока как заглушки)

На данный момент пока что довольно сыро, тк писалось за один день на коленке в FASM'е.

Собственно вот пример на погонять.
http://rghost.ru/9405861

Буду признателен если кто изучал вторую ольку и подкинет пару адресов функций которые можно вынести в api плагина.

Сразу оговорюсь что проект будет свернут, если разработчик все же сблагоизволит добавить свой PDK, а пока это вынужденная необходимость

Временное описание для тех кого заинтересовало
AddMenuItem (WCHAR*text, FARPROC* MakeMenu, FARPROC* Handler)
text - надпись
makeMenu - указатель на процедуру, которая создаст подменю и вернет HMENU, либо 0 для однострочной записи
Handler - обработчик меню (для выпадающих меню передается ID,которое должен сам сравнивать и вернуть 0 или 1 в случае если ID принадлежит ему)
AddLogItem (_DWORD addr, WCHAR*text)
DbgReadMemory (void *addr, void *buffer, size)
DbgWriteMemory (void *addr, void *buffer, size)
DbgRun()
DbgRunThread()
DbgStepInto()
DbgStepOver()
DbgTillRet()
DbgSetInt3Break (void *addr)
DbgDelInt3Break (void *addr)
DbgAssemble (void *addr, WCHAR *command, void *buffer)
addr - адрес относительно которого ассемблировать
command - юникод строка с командой
buffer - указатель на массив в 32 байта, куда будет сохранен бинарный код

Для случаев патча самой ольки
PmHookOllyIAT (void *addr, void *handler)
addr - адрес который надо искать в IAT
handler - на что подменить

| Сообщение посчитали полезным: Gideon Vi, vnekrilov, obfuskator, Isaev, _ruzmaz_, ValdiS, Bronco



Ранг: 660.9 (! !)
Статус: Участник
ALIEN Hack Team

Создано: 6 июня 2011 10:34 · Поправил: ARCHANGEL New!
Цитата · Личное сообщение · #14

Veliant

А что - идея с хайдом ольки мне нравится. Хотя Плагин СДК как таковой меня мало интересует. Как вы отнеслилсь бы к драйверному сокрытию отладчика? Т.е. к присобачиванию дровины к вашему плагину? Честно говоря, не смотрел, как вы скрывали её. Может быть, это всё у вас уже реализовано? Если Вас не затруднит, введидте в курс дела, как вы добивались сокрытия?


Ранг: 793.4 (! !)
Статус: Участник
Шаман

Создано: 6 июня 2011 10:48 · Поправил: PE_Kill New!
Цитата · Личное сообщение · #15

ARCHANGEL Ring3 - хук апи, чистка пеба.

| Сообщение посчитали полезным: ARCHANGEL


Ранг: 300.0 (мудрец)
Статус: Участник

Создано: 6 июня 2011 13:08 New!
Цитата · Личное сообщение · #16

ARCHANGEL пишет:
А что - идея с хайдом ольки мне нравится. Хотя Плагин СДК как таковой меня мало интересует. Как вы отнеслилсь бы к драйверному сокрытию отладчика? Т.е. к присобачиванию дровины к вашему плагину? Честно говоря, не смотрел, как вы скрывали её. Может быть, это всё у вас уже реализовано? Если Вас не затруднит, введидте в курс дела, как вы добивались сокрытия?

Я бы с радостью, но у меня нет опыта программирования дров под винду. Поэтому на данный момент, как сказал PE_Kill, реализовано палевным способом - сплайсом функций ntdll кодом вида mov eax, address / call eax


Ранг: 72.2 (постоянный)
Статус: Участник

Создано: 8 июня 2011 05:11 New!
Цитата · Личное сообщение · #17

Скорее бы поддержку плагинов сделали бы для второй ольки, а то я замучался патчить.

Ранг: 1.6 (гость)
Статус: Участник

Создано: 8 августа 2011 15:56 New!
Цитата · Личное сообщение · #18

3 августа вышла OllyDbg 2.01 alpha 4 с поддержкой системы плагинов.

Ранг: 300.0 (мудрец)
Статус: Участник

Создано: 8 августа 2011 16:35 · Поправил: Veliant New!
Цитата · Личное сообщение · #19

dimcha пишет:
3 августа вышла OllyDbg 2.01 alpha 4 с поддержкой системы плагинов.

Да, я видел эту новость, поэтому, скорей всего, мой проект сворачивается


Gideon Vi пишет:
если сворачивать только из-за того, что в мега-глючной версии добавили плаги - зря.

Ну честно признаться первая мысля была - теперь проще будет все функции найти и забить себе)))
Поюзал новый билд пару дней - вернулся на старый


Ранг: 1120.2 (!!!!)
Статус: Участник

Создано: 9 августа 2011 04:30 · Поправил: Gideon Vi New!
Цитата · Личное сообщение · #20

Veliant, если сворачивать только из-за того, что в мега-глючной версии добавили плаги - зря.

Поюзал новый билд пару дней - вернулся на старый

а я о чем? Если проект не в напряг, то не забрасывай. Олег походу в эмо превращается

Ранг: 18.8 (новичок)
Статус: Участник

Создано: 9 августа 2011 16:13 · Поправил: Error13Tracer New!
Цитата · Личное сообщение · #21

PhantOm для второй ольки не планируется случаем?


Ранг: 79.4 (постоянный)
Статус: Участник

Создано: 10 августа 2011 22:24 New!
Цитата · Личное сообщение · #22

hide ollydbg2 plugin

{ Атач доступен только для участников форума } - HideOd.zip

| Сообщение посчитали полезным: hexusR



Ранг: 1120.2 (!!!!)
Статус: Участник

Создано: 11 августа 2011 03:28 New!
Цитата · Личное сообщение · #23

AKAB пишет:
hide ollydbg2 plugin


чье?


Ранг: 533.6 (!)
Статус: Uploader
retired

Создано: 11 августа 2011 10:39 New!
Цитата · Личное сообщение · #24

да походу кто-то просто перекомпилил плаг аста

Ранг: 73.7 (постоянный)
Статус: Участник

Создано: 11 августа 2011 12:19 New!
Цитата · Личное сообщение · #25

У мну с этим плагом не хочет открывать воопще ничего =\ - "Unable to start file xxx.exe"


Ранг: 79.4 (постоянный)
Статус: Участник

Создано: 11 августа 2011 18:28 New!
Цитата · Личное сообщение · #26

Gideon Vi пишет:
чье?

by phpbb3

Ранг: 300.0 (мудрец)
Статус: Участник

Создано: 13 августа 2011 18:42 · Поправил: Veliant New!
Цитата · Личное сообщение · #27

--DEL-- (fix кривой экспорт)

P.S. Если возникает вопрос зачем мне это, после добавления оффициального PDK - задумка прежде всего в создании обратной совместимости с плагинами от 1.10
 eXeL@B —› Софт, инструменты —› OllyExt - плагин для OllyDbg2

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS