самопальная подпись дровятины

Тема в разделе "WASM.X64", создана пользователем sn0w, 20 авг 2019.

  1. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    958
    дело в вин 8.1 х64

    генерю и подписываюсь самопальным сертом
    Код (Text):
    1. makecert -r -sv myDrivers.pvk -n CN="Win WDK Test" myDrivers.cer
    2. cert2spc myDrivers.cer myDrivers.spc
    3. pvk2pfx -pvk myDrivers.pvk -pi password -spc myDrivers.spc -pfx myDrivers.pfx -po password
    4. signtool sign /f myDrivers.pfx /p password /t http://timestamp.verisign.com/scripts/timstamp.dll /v mydriver1_u.sys
    5.  
    засовываю серт в localMachine ROOT и localMachine TRUSTEDPUBLISHER
    иии нихрена не грузится без /set TESTSIGNING ON.

    но ведь раньше вроде бы так можно было без тестового режима делать - просто закинув серт в хранилище? или нет, чёто и не помню уже.
     
  2. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.245
    sn0w, а ты обновления ставил?
     
  3. OverNight

    OverNight New Member

    Публикаций:
    0
    Регистрация:
    21 авг 2019
    Сообщения:
    10
    если б все так просто было, добавляй свой серт и грузи дров, то эпидемия гуана завалила бы мир!
     
    sn0w нравится это.
  4. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.553
    Адрес:
    Russia
    нельзя было никогда. Вы что то перепутали
     
    sn0w нравится это.
  5. hiddy

    hiddy Member

    Публикаций:
    0
    Регистрация:
    10 мар 2019
    Сообщения:
    82
    sn0w нравится это.
  6. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    958
    хаха, всем отписавшим спасибо))
    да гуано и так завалило, например, - андроид мир, чего стоит одна контекстная реклама, в отношении тематики, по которой говоришь с другим человеком? выльется всё это рано или поздно в сплошную подписанную достоверными источниками хрень, и усё, матрица есть!
    эпидемия гуана и завалила мир, но, бугага, вся она сертифицирована.

    я гдето тут уже писал, когда девелоперы VisualStudio 2015 вшивали телеметрический код аж в RTL, а потом от этого открещивались всем чем можно, а затем выпилили эту наглость
     
    Последнее редактирование модератором: 23 авг 2019
    _edge, UbIvItS и M0rg0t нравится это.
  7. Entropy

    Entropy Member

    Публикаций:
    0
    Регистрация:
    23 авг 2020
    Сообщения:
    185
    У меня возник такой вопрос,может ли система накладывать какие-либо ограничения на работу драйвера с тестовой подписью или без неё ?
     
  8. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.461
    Адрес:
    Россия, Нижний Новгород
    Не может
     
  9. Entropy

    Entropy Member

    Публикаций:
    0
    Регистрация:
    23 авг 2020
    Сообщения:
    185
    то есть не накладывает вообще не как ?
     
  10. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.461
    Адрес:
    Россия, Нижний Новгород
    Вообще никак. Если система пустила тебя в ядро, никаких ограничений у тебя нет.
     
  11. texaciri

    texaciri Member

    Публикаций:
    0
    Регистрация:
    27 янв 2018
    Сообщения:
    60
    можно же. Есть утилита от TrustAsia, которая позволяет подписать бинарник. Делается это таким образом, что можно использовать любой сертификат, при условии, что он хоть когда-то был валидным (т.е. он может быть отозван или истечь на текущий момент, это не важно) и у вас есть приватный ключ от него, разумеется. Доступ в интернет при этом не требуется.
     
  12. cddee3

    cddee3 Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2020
    Сообщения:
    55
    если работает Hyper-V то ограничения есть - нельзя работать с MSR, СR регистрами и тд.
     
  13. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.461
    Адрес:
    Россия, Нижний Новгород
    Почему нельзя? Как тогда работают KeRaiseIrql и KeStackAttachProcess?
    Ведь внутри mov cr8 и mov cr3 соответственно.
    Как и разный софт для разгона, который работает с MSR.

    Есть некоторые ограничения с HVCI/DeviceGuard, типа выделения динамической исполняемой памяти, но это частные случаи (и эту защиту надо специально включать).
    В целом же, можешь делать с железками всё, что и в обычном Ring0.
     
  14. nullPtr

    nullPtr Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2020
    Сообщения:
    138
    Лол, думал так можно было тип makecert

    Но обычно если софт черный, то он за час же палится. Ля, если так изи можно было бы, то аверы мимо
     
  15. M0rg0t

    M0rg0t Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 окт 2010
    Сообщения:
    1.576
    HoShiMin, хз, на кывте (rsdn) 1 кодер писал, что при гипервизоре "..даже из драйвера нельзя вызывать некоторые инструкции (типа сброса WP или SMEP-битов в регистрах CR) или читать память определенных приложений, несмотря на kernel mode и, казалось бы, абсолютный контроль над системой...".
     
  16. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.461
    Адрес:
    Россия, Нижний Новгород
    Да, некоторые ограничения есть, но это частные случаи. В целом, доступны и CR, и MSR, и порты, и DMA.
    Контроль у тебя по-прежнему полный, но т.к. ты работаешь уже в рамках гостевой системы, твои права не распространяются на сам гипервизор и на всё, что могло бы позволить его скомпрометировать
     
  17. cddee3

    cddee3 Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2020
    Сообщения:
    55
    эти ограничения касаются Windows Enterprise и Server с установленным Hyper-V и вроде включенным Device Guardом

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