---[ PhantOm plugin 1.54  ]--------------------------------------------------
      by Hellsp@wn & Archer & Olenevod.

 // ********************************************************************* //
 // Поздравляю всех с рождеством!                                         //
 // ********************************************************************* //

| Приветы летят к: 
|  Bronco, kioresk, RSI, lord_Phoenix, HoBleen, Grim Fandango,
|  Guru.eXe, vad8787, PE_Kill, Executioner, ProTeuS.
-----------------------------------------------------------------------------

Плагин для скрытия OllyDbg (вместе с драйвером).
Помогает от следующих методов обнаружения:

// драйвер - extremehide.sys

[+] NtQueryInformationProcess.
[+] SetUnhandledExceptionFilter.
[+] OpenProcess.
[+] Invalid Handle.
[+] NtSetInformationThread.
[+] RDTSC.
[+] NtYieldExecution.
[+] NtQueryObject.
[+] NtQuerySystemInformation.
[+] Windows hide.
[+] GetProcessTimes.
[+] NtSetContextThread.

// плагин - PhantOm.dll

[+] PEB BeingDebugged.
[+] PEB NtGlobalFlag.
[+] GetStartupInfo.
[+] Process Heaps.
[+] GetTickCount.
[+] OutputDebugString
[!] Protect DRx.
[!] Hide DRx.
[!] Fake Windows version.
[!] Custom Handler.
[+] BlockInput

Что нового - 1.54
[*] Исправлен баг с memory breakpoints.
[*] Исправлен баг с "custom handler exceptions".
[*] Добавлен универсальный патч бага с импортом.

Что нового - 1.51
[*] Исправлен новый баг с импортом.

Что нового - 1.50
[*] Улучшен алгоритм получения номеров сервисов.

Что нового - 1.49
[*] Исправлен патч FPU бага, теперь 2 способа
[*] Улучшен обработчик исключений.

Что нового - 1.47
[*] Исправлен баг в драйвере.
[*] Исправлен баг в обработке исключений.

Что нового - 1.45
[*] Исправлен патч FPU бага.
[*] Исправлено несколько багов в драйвере.
[*] Добавлена обработка исключений, получаемых с помощью функции RaiseException. 
[*] Добавлен вывод информации об обработанных плагином исключений.
[*] Исправлен баг с NtSetInformationThread в драйвере.
[*] Исправлен баг с int 2d.
[*] Исправлен "single-step" баг.
[*] Полностью переписана опция "custom handler exceptions".
[*] Исправлен баг c "protect DRx", приводящий к записыванию мусора в DRx регистры.
[*] Исправлен баг c BlockInput на Windows 2000.

Что нового - 1.30
[*] Теперь заголовок окна и префикс CPU, можно задавать вручную
      CAPTEXT и PRETEXT, по-умолчанию "PhantOm" и "o_O".
[*] Исправлено несколько багов с "custom handler exceptions".
[*] Исправлено несколько мелких багов.

Что нового - 1.26
[*] Исправлен баг с загрузкой драйвера.
[*] При включенной опции "custom handler exceptions" работают
     memory breakpoints on access, write но не будит работать
     break-on-access.
[*] Исправлен баг при обновлении плагина.

Что нового - 1.25
[*] Теперь можно самому задавать имя сервисов
     HIDENAME и RDTSCNAME.
[*] Исправлено несколько мелких багов.
[*] Исправлен баг с memory breakpoints.

Что нового - 1.20
[*] Добавлена собственная обработка исключений (C0000005).
[*] Добавлена опция смены заголовка главного окна.
[*] Добавлена собственная обработка исключений (OUTPUT_DEBUG_STRING_EVENT).
[*] int 3 на EP корректно удаляется, если включена остановка 
     на системной точке останова.
[*] Добавлен перехват BlockInput. (только WinXP)
[*] Добавлена собственная обработка исключений (C0000094).
[*] Добавлено скрытие от GetStartupInfo.
[*] Исправлен баг с настройками плагина.
[*] Добавлена защита от обнаружения драйверов.

Что нового - 1.15
[*] Исправлено несколько багов.

Что нового - 1.10
[*] hook GetProcessTimes - перенесён в драйвер.
[*] hook NtSetContextThread - перенесён в драйвер.
[*] Исправлена ошибка с удалением "EP break".
[*] Исправлено несколько багов, связанных с загрузкой настроек.
[*] В ini добавлена опция "DELTARDTSC", позволяющая регулировать разброс RDTSC.

Что нового - 1.04
[*] Исправлен бсод при загрузке драйвера.

Что нового - 1.03
[*] Исправлен баг с окнами.

Что нового - 1.01
[*] Исправлен баг в драйвере.

Что нового - 1.00
[*] Добавлена защита окошек OllyDbg.
[*] Теперь OllyDbg патчиться независимо от ImageBase. 

Что нового - 0.60
[*] Добавлена собственная обработка исключений (C000001E, 80000001, C000001D).
[*] Добавлено удаление int3 с EntryPoint.
[*] Исправлен баг с GetTickCount.
[*] Добавлены методы анти-детекта в драйвер.

Что нового - 0.58
[*] Исправлен баг с Hide from peb на некоторых системах.

Что нового - 0.57
[*] Исправлен баг при аттаче к процессу.
[*] Добавлена защита от GetProcessTimes.
[-] Убрана опция Fake Windows version (на время).
 
Что нового - 0.55
[*] Улучшена имуляция GetTickCount.
[*] Добавлена эмуляция RDTSC.
[*] исправлен баг с не обнулением ServicePack.
[*] Немного оптимизирован код. 

Что нового - 0.53
[*] теперь драйвер находится в ресурсах.
[*] добавлена защита от NtSetInformationThread.
[*] исправлен баг с Fake Windows version.

Что нового - 0.51
[*] исправлен баг в GetTickCount
[*] исправлен баг с патчем PEB'а

// Примечания:

- не рекомендуется запускать более одной копии OllyDbg, при включенной опции
   load driver.

- если вы поменяли настройки в плагине, но у вас открыт какой-то файл в OllyDbg,
   то надо обязательно перезапустить (Ctrl+F2) программу.

- плагин выводит отладочные сообщения в Log (Alt+L), поэтому при первом запуске 
   рекомендуется выставить все опции и проанализировать Log на предмет ошибок.

- тестировалось только на Windows 2000 SP4, XP SP2.

- при работе с плагином, рекомендуется выключить программы, которые могу помешать 
   загрузке драйвера (Антивирусы, фаерволы).

- при некорректной работе плагина рекомендуется попробовать на оригинальной OllyDbg,
   без посторонних плагинов.

// Связь с автором: 
 www : hellspawn.nm.ru 
 mail: for.hellspawn@gmail.com
------------------------------------------------------------[ 07.01.2009 ]---