Shims в Win 10

Тема в разделе "WASM.RESEARCH", создана пользователем jeer0, 18 авг 2017.

  1. jeer0

    jeer0 New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2017
    Сообщения:
    2
    Привет всем. Заметил, что AppCompat shims не работают на Windows 10. Пореверсил apphelp.dll и %windir%\AppPatch\* и увидел, что shim-ы вообще отключили, судя по всему. Вырезали?

    Для тех, кто не в курсе, вкратце раскажу как все это работало: мы ставили sdb-базу, содержащую шим для <имя_процесса> (например, с помощью штатной sdbinst.exe), она прописывалась в HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Custom\<имя_процесса>
    и при создании процесса <имя_процесса> загружалась внутри CreateProcess():
    CreateProcessInternalW() вызывает BasepQueryAppCompat(), которая читает sdb-файл и сохраняет
    пропарсенную информацию в PEB->pShimData создаваемого процесса.

    Так вот, в Win 10 ветка AppCompatFlags\Custom даже не читается (это видно в ProcMon), а если посмотреть на код kernel32!BasepQueryAppCompat, то там больше этого функционала нет.
     
  2. comrade

    comrade Константин Ёпрст

    Публикаций:
    0
    Регистрация:
    16 сен 2002
    Сообщения:
    182
    Адрес:
    Russian Federation
    Какой build number винды?
     
  3. jeer0

    jeer0 New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2017
    Сообщения:
    2
    comrade, Microsoft Windows [Version 10.0.15063]