eXeL@B —› Софт, инструменты —› ScyllaHide Anti-Anti-Debug plugin for Olly1&2 and TitanEngine |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 10 апреля 2014 18:18 · Поправил: cypherpunk · Личное сообщение · #1 Актуальная версия: Hi again, together with Aguila, guy behind Scylla, we made a new Hiding plugin for Olly1&2, TitanEngine and IDA Pro 6.x ---------------------------------------------------------- ScyllaHide is an open-source x64/x86 usermode Anti-Anti-Debug library. It hooks various functions in usermode to hide debugging. This will stay usermode! For kernelmode hooks use TitanHide. ScyllaHide is tested to work with VMProtect, Themida, Armadillo, Execryptor, Obsidium If you find any protector that still detects debugger, please tell us. Source code license: GNU General Public License v3 https://www.gnu.org/licenses/gpl-3.0.en.html ------------------------------------------------------ Debugger Hiding: - PEB - BeingDebugged, NtGlobalFlag, Heap Flags - NtSetInformationThread - ThreadHideFromDebugger - NtQuerySystemInformation - SystemKernelDebuggerInformation, SystemProcessInformation - NtQueryInformationProcess - ProcessDebugFlags, ProcessDebugObjectHandle, ProcessDebugPort, ProcessBasicInformation, ProcessBreakOnTermination, ProcessHandleTracing - NtSetInformationProcess - ProcessBreakOnTermination, ProcessHandleTracing - NtQueryObject - ObjectTypesInformation, ObjectTypeInformation - NtYieldExecution - NtSetDebugFilterState - NtUserBuildHwndList - EnumWindows - NtUserFindWindowEx - FindWindowA/W, FindWindowExA/W - NtUserQueryWindow - NtClose - NtCreateThreadEx - BlockInput - Remove Debug Privileges - OutputDebugStringA - OutputDebugStringW Timing Hooks: - GetTickCount - GetTickCount64 - GetLocalTime - GetSystemTime - NtQuerySystemTimeHook - NtQueryPerformanceCounter Special functions: - Prevent Thread creation - for protectors like Execryptor. Only use if you know what you are doing ! - Malware RUNPE Unpacker - Hooks NtResumeThread and terminates + dumps the process created by malware - Kill Anti-Attach Protecting and Stealthing DRx (Hardware Breakpoints): - NtGetContextThread - NtSetContextThread - KiUserExceptionDispatcher (only x86) - NtContinue (only x86) Hooks: - Stealth hooks for 32-bit targets (Tested against Themida/VMProtect) Plugin specific: - Update-Check IDA: - DLL injection (stealth / normal) - IDA 64bit plugin - IDA 32/64bit remote server Olly1&2: - Change Olly title - Resume/Suspend all Threads in Thread window - DLL injection (stealth / normal) Olly1: - Fix PE-Bugs - Fix FPU Bug - x64 compatibility mode - Remove EP-Break - Break on TLS - Skip "EP outside code" message - Advanced CTRL+G - Skip "compressed code" message - Ignore bad PE image (WinUPack) - Skip "Load DLL" message ------------------------------------------------------ Usage standalone (debugger-independent): InjectorCLI.exe <process name> <HookLibrary.dll path> For example: InjectorCLI.exe crackme.exe C:\HookLibrary.dll ------------------------------------------------------ Plugins: - for TitanEngine: Copy HookLibrary.dll and ScyllaHide.dll to plugins\x86\ or plugins\x64\ (can be combined with TitanHide which does kernelmode hiding) - for OllyDbg v1.10: Copy HookLibraryx86.dll and ScyllaHideOlly1.dll to your plugins directory - for OllyDbg v2.01: Copy HookLibraryx86.dll and ScyllaHideOlly2.dll to your plugins directory - for IDA v6 32bit: Copy HookLibraryx86.dll, NtApiCollection.ini and ScyllaHideIDA.plw to your plugins directory - for IDA v6 64bit: Copy ScyllaHideIDA.p64, NtApiCollection.ini, ScyllaHideIDASrvx64.exe and HookLibraryx64.dll to your plugins directory - for x64dbg 32bit: Copy HookLibraryx86.dll, NtApiCollection.ini and ScyllaHideX64DBGPlugin.dp32 to your plugins directory - for x64dbg 64bit: Copy HookLibraryx64.dll, NtApiCollection.ini and ScyllaHideX64DBGPlugin.dp64 to your plugins directory ini Note: The default ini contains settings for this protectors: - VMProtect x86/x64 - Obsidium x86 - Themida x86 - Armadillo x86 Feel free to contribute settings for other protectors! IDA Note: - Start ScyllaHideIDASrvx64.exe to debug 64bit applications - Start ScyllaHideIDASrvx86.exe to debug remotely 32bit applications Commandline: ScyllaHideIDASrvxXX.exe <port> ScyllaHideIDASrv Note: - Server needs HookLibraryxXX.dll and NtApiCollection.ini ------------------------------------------------------ Special thanks to: - What for his POISON Assembler source code https://tuts4you.com/download.php?view.2281 - waliedassar for his blog posts http://waleedassar.blogspot.de - Peter Ferrie for his PDFs http://pferrie.host22.com - MaRKuS-DJM for OllyAdvanced assembler source code ------------------------------------------------------ ToDo: - x64 Exception Support ------------------------------------------------------ NOTE: You need to put NtApiCollection.ini in the same directory as ScyllaHide.dll or the following hooks will not work: NtUserQueryWindow, NtUserBuildHwndList, NtUserFindWindowEx Info about NtApiCollection.ini: Some Nt* WINAPI functions are not exported by a DLL, so it is necessary to get the function adresses from another source. The other source is the PDB file. The adresses can be resolved with this tool: https://bitbucket.org/NtQuery/pdb-getprocaddress It will download the PDB file from the Microsoft server to resolve the missing function adresses. Binaries: https://bitbucket.org/NtQuery/scyllahide/downloads/NtApiTool.rar Get ScyllaHide here: https://bitbucket.org/NtQuery/scyllahide/downloads or here http://scyllahide.tk | Сообщение посчитали полезным: ajax, deniskore, UniSoft, SReg, Gideon Vi, Alinator3500, plutos, alt76, jeep, gloom |
|
Создано: 25 апреля 2014 23:16 · Личное сообщение · #2 |
|
Создано: 26 апреля 2014 13:15 · Поправил: Dr0p · Личное сообщение · #3 ajax Для тех целей, что делает сабж пилить ничего не нужно было. Под 32 да, но там полноценный ядерный монитор. Сабж же мониторит сервисы на уровне кода(патч), что есно является костылём, ибо можно оригинальную копию модуля заюзать или вообще сервисы напрямую юзать, так малварь делает. Да и обработка примитивная, тот же например NtClose не обрабатывает трассировку описателей, попытка обработки при запущенном механизме приведёт к отваливанию сабжа. Такие косяки там повсюду. |
|
Создано: 26 апреля 2014 16:33 · Поправил: cypherpunk · Личное сообщение · #4 Please be patient. x64 version of IDA plugin coming soon. I did this in just a few hours and we are still testing it and adding missing features. | Сообщение посчитали полезным: v00doo |
|
Создано: 26 апреля 2014 20:15 · Поправил: Dr0p · Личное сообщение · #5 На 7.32 даже не заводится, рушится при обращении к нулям. Перепробовал разные версии олли, на некоторых вообще не загружается(не поддерживаются плаги ?). Вот и недостаток использования плагов На одной из версий таки завелось - 2.01. Тест от сайда. Простейший антидебаг - дельта тск не обрабатывается: Code:
Вызов корректный: Code:
приводит к крэшу: Code:
Отладочные привилегии не скрываются: Code:
- есть множество способов их проверки. И это простейший тест.. зы: элементарная rdtsc отслеживается только на уровне ядра |
|
Создано: 26 апреля 2014 22:27 · Личное сообщение · #6 F_a_u_s_t Я не наезжаю, мне же всёравно Надеюсь допилит до нормального состояния. Нельзя референсить в обработчиках сервиса, палево: Code:
| Сообщение посчитали полезным: cypherpunk |
|
Создано: 28 апреля 2014 02:48 · Личное сообщение · #7 |
|
Создано: 28 апреля 2014 03:13 · Личное сообщение · #8 cypherpunk Dr0p пишет: invoke ZwQueryPerformanceCounter, addr PerfCount1, NULL invoke ZwQueryPerformanceCounter, addr PerfCount2, NULL mov eax,D[PerfCount2] sub eax,D[PerfCount1] mov edx,D[PerfCount2 + 4] sbb edx,D[PerfCount1 + 4] .if (!Zero?) || (Eax >= 10) %BREAK ; debugger is present (!!!) .endif It's just anti-debug method. About this: The main idea: you can not reference a service handlers, it can be detected. |
|
Создано: 28 апреля 2014 03:25 · Поправил: cypherpunk · Личное сообщение · #9 |
|
Создано: 02 мая 2014 23:51 · Личное сообщение · #10 Version 0.8 - Olly v1 Plugin: option "Skip EP outside of code message" - Fix for NtSetInformationProcess -> ProcessHandleTracing - All plugins: Update-Check - Timing Hooks: GetTickCount, GetTickCount64, GetLocalTime, GetSystemTime, NtQuerySystemTime, NtQueryPerformanceCounter - "Remove Debug Privileges" added | Сообщение посчитали полезным: Jaa |
|
Создано: 03 мая 2014 03:19 · Поправил: Dr0p · Личное сообщение · #11 cypherpunk > Fix for NtSetInformationProcess -> ProcessHandleTracing You have disabled an important mechanism eg |
|
Создано: 03 мая 2014 04:26 · Поправил: cypherpunk · Личное сообщение · #12 @Dr0p could you explain more? Ok I see it never logs the DbgPrint because of ScyllaHide. But still please explain more what you mean |
|
Создано: 03 мая 2014 08:36 · Личное сообщение · #13 |
|
Создано: 09 мая 2014 01:34 · Личное сообщение · #14 |
|
Создано: 10 мая 2014 21:22 · Личное сообщение · #15 Version 1.0 - added sprintf %s Olly1 bugfix to "Fix Olly bugs" - x64dbg 32/64bit plugins https://bitbucket.org/mrexodia/x64_dbg - fixed alignment bug 64bit The default ini contains settings for this protectors: - VMProtect x86/x64 - Obsidium x86 - Themida x86 - Armadillo x86 Themida x64/Winlicense x64 will only work with TitanHide You can send us profiles you make for other protectors ! | Сообщение посчитали полезным: daFix, Jaa, jeep |
|
Создано: 11 мая 2014 10:35 · Личное сообщение · #16 0.9 1.0 do not work in my odbg2 xpsp3 Code:
|
|
Создано: 11 мая 2014 13:14 · Личное сообщение · #17 |
|
Создано: 11 мая 2014 14:25 · Личное сообщение · #18 I forgot to update HookLibraryx86.dll. It works fine now. | Сообщение посчитали полезным: cypherpunk |
|
Создано: 12 мая 2014 17:57 · Личное сообщение · #19 |
|
Создано: 14 мая 2014 01:23 · Личное сообщение · #20 |
|
Создано: 15 мая 2014 01:29 · Поправил: sendersu · Личное сообщение · #21 cypherpunk version 1.0 of your plugin x32dbg by mr exodia (version: http://prntscr.com/3j9i93) vmp profile debugger being detected: http://prntscr.com/3j9g6x file under test: http://www.sendspace.com/file/cjykkz 2) please also add version info (label) onto your plugin window for the following easy identifcation |
|
Создано: 15 мая 2014 19:12 · Поправил: cypherpunk · Личное сообщение · #22 |
|
Создано: 15 мая 2014 22:01 · Личное сообщение · #23 cypherpunk thx will give it a try over weekend btw, you are doing good progress, keep the step | Сообщение посчитали полезным: cypherpunk |
|
Создано: 16 мая 2014 03:13 · Личное сообщение · #24 |
|
Создано: 16 мая 2014 22:44 · Личное сообщение · #25 |
|
Создано: 17 мая 2014 04:19 · Личное сообщение · #26 |
|
Создано: 17 мая 2014 14:48 · Личное сообщение · #27 |
|
Создано: 17 мая 2014 20:11 · Поправил: jeep · Личное сообщение · #28 |
|
Создано: 17 мая 2014 20:51 · Личное сообщение · #29 |
|
Создано: 17 августа 2014 13:21 · Личное сообщение · #30 Version 1.1 - Added "thanks" to About - Added kill anti-attach (for x86 only) - Olly v1 Plugin: Advanced CTRL+G - Olly v1 Plugin: Skip "compressed code" message - Olly v1 Plugin: Ignore bad PE image (WinUPack) - Olly v1 Plugin: Skip "Load DLL" message Thanks to MaRKuS-DJM for OllyAdvanced assembler source code. | Сообщение посчитали полезным: Jaa, v00doo, Maximus |
|
Создано: 28 августа 2014 00:55 · Личное сообщение · #31 Version 1.2 - All Plugins: New attach dialog with crosshair/bullseye window finder. - All Plugins: Tooltips with information (unfinished). Thanks to UniSoft! - Olly v1 Plugin: Fix for faulty handle bug - Olly v1 Plugin: Fix for NT symbol path bug added to "Fix Olly Bugs", thanks to redblkjck https://bitbucket.org/NtQuery/scyllahide/downloads/ScyllaHide_v1.2.rar new doc https://bitbucket.org/NtQuery/scyllahide/downloads/ScyllaHidev1.2Doc.pdf | Сообщение посчитали полезным: Gideon Vi |
<< . 1 . 2 . 3 . >> |
eXeL@B —› Софт, инструменты —› ScyllaHide Anti-Anti-Debug plugin for Olly1&2 and TitanEngine |