Сейчас на форуме: bartolomeo, -Sanchez-, morgot, sashalogout (+5 невидимых)

 eXeL@B —› Софт, инструменты —› ScyllaHide
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 .
Посл.ответ Сообщение

Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 27 июня 2017 14:43
· Личное сообщение · #1

Плаг теперь на github'е
https://github.com/x64dbg/ScyllaHide/releases

Релиз свежий от 24.06.2017.

Добавлено спустя 24 минуты
Нуждающимся добавил x64 плаг под иду (sdk 6.95)

e7e9_27.06.2017_EXELAB.rU.tgz - ScyllaHideIDAProPlugin-x64.zip

-----
старый пень


| Сообщение посчитали полезным: zNob, parfetka, mak, neprovad, VOLKOFF, plutos, nice, VodoleY, dzikar


Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 08 сентября 2019 01:51
· Личное сообщение · #2

Bronco пишет:
Пока не вкурил, на чём сабж палится

Может что новое?)

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.





Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

Создано: 08 сентября 2019 02:21 · Поправил: Bronco
· Личное сообщение · #3

difexacaw пишет:
Лучше вообще не трогать др-контекст

Под Вин10.1607 с версией плагина сцилы трёхлетней давности на этом же таргете всё было шикодан..))
Борода вылезла на свежем билде винды,и даже со всежей сборкой сцилы. а соскочить на старый билд девайсы пока не дают( Ну не было интелоптейн когда юбиленная выходила) А под крышку не полезу, эликтричества боюС..))
Обычные бряки с вмп не прокатывают, проверки участков кода на црц никуда не делись. Так что под дбг, юзать только аппаратные, контекст которых чекают на выходе из процедуры общей проверки на отладку.
Вариант с визором пока рановато, его ещё собрать надо на новой оси.
ClockMan пишет:
Может что новое?)

Ага...в новой среде гранаты, уже не того калибра

-----
Чтобы юзер в нэте не делал,его всё равно жалко..





Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 08 сентября 2019 03:17
· Личное сообщение · #4

Bronco
Сча скачал с офф сайта демку свежую, короче сисек больше нет,старый метод вернулся

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 08 сентября 2019 03:48 · Поправил: difexacaw
· Личное сообщение · #5

Bronco

У меня нет 10, так что я не могу посмотреть. Сделай область памяти с кодом не исполняемой, в ловушке копируй исходную область в исполняемую, ставь точку останова и отдай туда управление с пересчётом дельты областей. Тогда исполнение будет проходить в изменённой области, а выборка останется в исходную, таким образом код не увидит изменений.

-----
vx





Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 08 сентября 2019 12:30
· Личное сообщение · #6

Bronco
Вот тут все расписано почему Сцилла на Вин10 последних билдов не скрывает дебагер от вмпрота 3ей версии.
Вообще в этой теме разобрана вся защита вмпрота для любых виндовс.

-----
Everything is relative...





Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

Создано: 09 сентября 2019 00:23 · Поправил: Bronco
· Личное сообщение · #7

Vamit пишет:
Вот тут все расписано

вот как-то не заметил, где конкретно по билдам винды расписано?
описан обычный набор антидебага вмп третей линейки,в сишном представлении, для нт_апи.
кода как вмп получает дескрипторы сервисов, для системных вызовов, в сеплах нет.
На свежем билде винды траблы с аппаратными прерываниями. но утверждать пока не буду, чей косяк, сцилкин или отладчика. По ретурнам хуков сцилки, на этом блиде винды, позже отпишусь, пока другим занят.
-------------
Это конечно ржачно, но дерьматологу большой привет...
Аппаратные на сисколах "не работают", по причине "косяков" в самом вмп. версия где то 3х летней давности
Предполагаю, что дескрипторы сервисов в вмп прописаны были статически, для каждого билда винды отдельно.
В кейсе нет Айди свежего билда винды, в итоге по дефолту сиськи просто не юзаются.
Дебагер на высоте(2018), Сцила безупречна(2017).
Детект отладки был после сингл_степ , на чтении др_контекста. в скрипте обход есть, но кто знал что сисек вженЭма...

-----
Чтобы юзер в нэте не делал,его всё равно жалко..





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 09 сентября 2019 04:14 · Поправил: difexacaw
· Личное сообщение · #8

Bronco

Да фигня полная эта сцилла, она тупо патчит нэйтив шлюз что бы следить за сервисами. Если сервисный вызов из своего кода в обход шлюза, то плаг управление не получит. Да и самая простая там фильтрация, любой не стандартный способ сцилл не обрабатывает, как например файловое время. Вот вам пример из моего крэкми по трейсу:

Code:
  1. ; +
  2. ; !TF: !ZF
  3. ; TF: 0, ZF
  4. ;
  5. ; 86: 11 -> 00(TF)
  6. ; CM: 11 -> SL(TF)
  7. ;
  8. TrRpl proc uses ebx
  9.          mov ecx,8
  10.          xor ebx,ebx
  11.          mov dx,ss
  12.          .repeat
  13.                  mov eax,11B
  14.                  mov ss,dx
  15.                  mov ds,ax
  16.                  mov ss,dx
  17.                  mov ax,ds
  18.                  mov ds,dx
  19.                  add ebx,eax
  20.          .untilcxz
  21.          mov eax,ebx
  22.          .if Eax
  23.                  shr eax,3
  24.                  sub ax,dx
  25.          .endif
  26.          ret
  27. TrRpl endp
  28.  
  29. ; +-(W10?)
  30. ; !TF: 0x23, !ZF
  31. ; TF: 0, ZF
  32.  
  33. Tr86Gs proc C
  34.          mov ax,ss
  35.          mov ss,ax
  36.          mov gs,ax
  37.          mov ss,ax
  38.          mov ax,gs
  39.          test ax,ax
  40.          ret
  41. Tr86Gs endp
  42.  
  43. ; +
  44. ; TF: CF, 0x8
  45. ; !TF: !CF
  46. ;
  47. TrCMGs proc uses ebx esi
  48.          mov esi,8
  49.          xor eax,eax
  50.          xor ecx,ecx
  51.          xor edx,edx
  52.          xor ebx,ebx
  53.          mov cx,ss
  54.          .repeat
  55.                  mov ss,cx
  56.                  mov gs,dx
  57.                  mov ss,cx
  58.                  mov bx,gs
  59.                  add eax,ebx
  60.                  dec esi
  61.          .until Zero?
  62.          mov gs,cx
  63.          div ecx
  64.          bt eax,3
  65.          ret
  66. TrCMGs endp
  67.  
  68. ; +
  69. ; Zero if !TF.
  70. ;
  71. Tr86Sexit proc
  72.          %PENV Eax
  73.          mov eax,[eax].Yield
  74.          Call NtGateSid
  75.          not ecx
  76.          lea eax,[ecx][esp][3]
  77.          ret
  78. Tr86Sexit endp


Это древние как г мамонта инструменты, они сработают только на таком же древнем и как следствие простом. Трассировка ?

Code:
  1. %IGATE macro      ; ARGs: EDX
  2.          Int 2EH
  3.  
  4. ; Fast kill without user-fault and caller-ip.
  5.  
  6. if OPT_SEXIT_KILL eq TRUE
  7.          mov esp,ecx
  8.          lea edx,[edx][7]
  9.          jmp Edx
  10. endif
  11. endm


Не нравится ядру когда sysenter/sysexit вызывают с TF, не профайл путь обработки", так прямо в сурках ядра сказано.

-----
vx





Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

Создано: 09 сентября 2019 04:41 · Поправил: Bronco
· Личное сообщение · #9

difexacaw пишет:
Если сервисный вызов из своего кода в обход шлюза, то плаг управление не получит.

Так с сервисными вызовами сцилка не помощник, это было известно давно. И ничего не меняется, со времён вмп_сиськомёт Но..никто же не мешает, задетектить сами вызовы другими способами, а после детекта тупо передавать управление на аналог в ntdll.dll, и тут сцилка на подхвате. Собственно это же нужно, чтобы дойти до оеп аппа и дальше.

-----
Чтобы юзер в нэте не делал,его всё равно жалко..





Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 09 сентября 2019 08:04
· Личное сообщение · #10

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

Дескрипторы сервисов системных вызовов жестко прописаны в функции в зависимости от версии и билда винды (свитч конструкция по всем билдам). В конкретно указанном посте приведены способы детекта отладчика с которыми Сцилла не справляется (код тестировался на Вин10 с x...dbg и Сциллой).
Вообще-то в теме был приклеплен файл с восстановленным системным кодом вмпрота - загружай в Иду и смотри все методы защиты.

-----
Everything is relative...





Ранг: 312.0 (мудрец), 349thx
Активность: 0.460.65
Статус: Участник
Advisor

Создано: 09 сентября 2019 08:57 · Поправил: Bronco
· Личное сообщение · #11

Vamit пишет:
способы детекта отладчика с которыми Сцилла не справляется

у меня сборка сцилы 2х летней давности, всё что описано в посте перекрывает. то что свежие кобеняться, знаю.
Vamit пишет:
свитч конструкция по всем билдам

ну оно логично,что именно свитч, я так и предположил. //В кейсе нет Айди свежего билда винды
я так понимаю, что фуярь в пеб шО нить постарше текущей винды, и сиськи лесом идут..
Vamit пишет:
был приклеплен файл с восстановленным системным кодом вмпрота - загружай в Иду

Иду не юзаю, тяжёлая для меня. А есть слинкованный после девирта код загрузчика вмп?
ну или на сях подойдёт.

-----
Чтобы юзер в нэте не делал,его всё равно жалко..





Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 09 сентября 2019 10:20
· Личное сообщение · #12

Иду не юзаю, тяжёлая для меня.
А чем, как не идой смотришь объектно-ориентированный дизасм код?
А есть слинкованный после девирта код загрузчика вмп?
В файле, с ЕП идет jmp на восстановленный код.
ну или на сях подойдёт.
Этого нет, разбирался по асму, реверсил только некоторые куски.

-----
Everything is relative...





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 09 сентября 2019 12:17 · Поправил: difexacaw
· Личное сообщение · #13

Bronco

> Так с сервисными вызовами сцилка не помощник

А зачем она тогда нужна, сцилл это сервисный фильтр и ничего более. Обход сервисов пилится за пол часа - снимается лог по ним и фаулт, затем фиксятся. Удобно это запускать только в режиме совместимости(wow), иначе можно ядро дёргать по тихому через инт, к примеру перемапить кодовую секцию нтдлл с RE, там зафиксить KiFast на KiInt, можно есчо дополнительно испорт поправить из юзер либ на новый нэйтив.

Vamit

> Дескрипторы сервисов системных вызовов жестко прописаны в функции в зависимости от версии и билда винды

Зачем хардкодить, если номера в каждом экспортном стабе, за исключением теневых, а они не нужны. Зачем крутить в цикле поиск в таблице id:handler, если можно индексировать или на крайняк использовать AVL ?
А есчо фильтрация на текущем стеке, если перед сервисным вызовом посчитать crc части стека ниже от текущей границы и после отработки некоторого блока с кодом посчитать заново, то это запалит любой такой фильтр, как и локальную трассировку. Фильтр как минимум должен переключать стек на свой собственный и там уже выполнять обработку. Это всё по нубски сделано, главное что это есть в меню отладчика.

-----
vx





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 06 октября 2019 22:38 · Поправил: difexacaw
· Личное сообщение · #14

Есть такая фича в ядре:

Code:
  1. /***************************************************************************\
  2. * InitSystemHotKeys
  3. *
  4. * Called from InitWindows(), this routine registers the default system
  5. * hotkeys.
  6. *
  7. * History:
  8. * 12-04-90 DavidPe      Created.
  9. \***************************************************************************/
  10. VOID SetDebugHotKeys()
  11. {
  12.     UINT VkDebug;
  13.  
  14.     VkDebug = FastGetProfileDwordW(NULL, PMAP_AEDEBUG, L"UserDebuggerHotkey", 0);
  15.     if (VkDebug == 0) {
  16.         if (ENHANCED_KEYBOARD(gKeyboardInfo.KeyboardIdentifier)) {
  17.             VkDebug = VK_F12;
  18.         } else {
  19.             VkDebug = VK_SUBTRACT;
  20.         }


- если под дебаг портом окно в фокусе, то нажатие F12(или SendInput(VK_F12)) приводит к созданию отладочного потока(win32k -> csrss -> DbgUi..), это тоже в сурках w2k есть. Сцилл это обходит?, я что то не нашёл такой опции

-----
vx


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

Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 12 декабря 2019 17:56
· Личное сообщение · #15

--> ScyllaHide_2019-12-12_13-32 <--

Code:
  1. -ProcessDebugObjectHandle: handle overlapping buffer and return length
  2. (See mrexodia/TitanHide#39)
  3. -Add TLS to HookLibrary for InstrumentationCallbackDisabled field
  4. -This fixes potential race conditions with multiple threads active while the instrumentation callback is installed
  5. -Update ntdll.h


| Сообщение посчитали полезным: TRPD, mak, SReg, YDS

Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 25 декабря 2019 00:35
· Личное сообщение · #16

--> ScyllaHide_2019-12-24_22-08 <--
Code:
  1. - Fix missing user32.dll VAs in IDA plugin
  2. - Patch OS build numbers


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


Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 25 декабря 2019 16:50 · Поправил: difexacaw
· Личное сообщение · #17

VOLKOFF

А кнопки так и не пофиксили ?

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

-----
vx




Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 26 декабря 2019 03:09
· Личное сообщение · #18

difexacaw пишет:
так и не пофиксили ?

Изменения версии в постах есть.
Если очень хочется данный момент пофиксить, напиши пару строк сюда



Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 16 января 2020 17:09 · Поправил: VOLKOFF
· Личное сообщение · #19

--> ScyllaHide_2020-01-16_13-48 <--
Code:
  1. - Fix pedantic Clang warning
  2. - ApplyKernel32Hook: verify kernel[32|base] is loaded before hooking




Ранг: 173.8 (ветеран), 208thx
Активность: 0.120.36
Статус: Участник

Создано: 26 января 2020 03:48
· Личное сообщение · #20

--> ScyllaHide_2020-01-25_17-17 <--
Code:
  1. - RestoreKernel32Hooks: unhook time functions

Fix for Olly v2 already hooked issue #89

| Сообщение посчитали полезным: mak
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 .
 eXeL@B —› Софт, инструменты —› ScyllaHide
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати