eXeL@B —› Программирование —› Патч драйвера в памяти (win64) |
Посл.ответ | Сообщение |
|
Создано: 09 мая 2011 13:10 · Поправил: ajax · Личное сообщение · #1 Собс-но, сабж. Есть дровина, в которой надо пару байт поменять. Тело на диске ес-но изменять не могу, подпись будет не валидной. Свой драйвер писать для патчинга - тож не могу, не имею сертификата Допустим, имеются права админа и всякие "радости" в винде отключены. Реально из ринг-3 заменить сии байтики? ----- От многой мудрости много скорби, и умножающий знание умножает печаль |
|
Создано: 09 мая 2011 13:23 · Личное сообщение · #2 |
|
Создано: 09 мая 2011 13:46 · Личное сообщение · #3 |
|
Создано: 09 мая 2011 15:07 · Личное сообщение · #4 Патчи на диске, подписывай тестовым сертификатом, врубай test mode и вперед. ajax пишет: Реально из ринг-3 заменить сии байтики? Реально через эксплоит, если не патчено. Вот например один из стареньких ----- PGP key |
|
Создано: 09 мая 2011 18:10 · Поправил: ajax · Личное сообщение · #5 ntldr пишет: Патчи на диске, подписывай тестовым сертификатом, врубай test mode и вперед Это и имелось ввиду, что нормального сертификата нет, а тестовый юзать - не катит тест мода по условию. ntldr пишет: Реально через эксплоит, если не патчено. Вот например один из стареньких Уж очень он старенький, судя по всему до СП1 ----- От многой мудрости много скорби, и умножающий знание умножает печаль |
|
Создано: 09 мая 2011 18:23 · Личное сообщение · #6 ajax пишет: а тестовый юзать - не катит тест мода по условию. Тогда остаются такие варианты: каждый раз жать F8 при загрузке, купить сертификат (купить можно только на фирму), попросить подписать кого-нибудь у кого сертификат есть (но никто в здравом уме ваш патчер не подпишет). Хакерские варианты: сделать бутлоадер эмулирующий нажатие F8 с отключением проверки подписи при загрузке (где-то я такое видел) или пропатчить bootmgr и winload.exe убрав оттуда проверки (так работает руткит TDL3). ----- PGP key |
|
Создано: 09 мая 2011 21:37 · Поправил: DenCoder · Личное сообщение · #7 ajax пишет: Уж очень он старенький, судя по всему до СП1 ИМХО много nt-функций, которые обращаются к реестру и не проверяют тип ключа. На этом и был построен эксплойт. Думаю, еще с десяток, может два можно накопать UPD. И, кстати, на Win64 ----- IZ.RU |
|
Создано: 09 мая 2011 22:23 · Личное сообщение · #8 |
|
Создано: 10 мая 2011 01:51 · Личное сообщение · #9 |
|
Создано: 10 мая 2011 02:06 · Поправил: XQuader · Личное сообщение · #10 Coderess пишет: В сп2 еще работал, а с сп3 перестал У мну 32bit XP SP3, пример антиотладки, выложенный ARCHANGEL в том (Хотя мот дело в сборке от Зверя...) |
|
Создано: 10 мая 2011 05:21 · Личное сообщение · #11 XQuader пишет: У мну 32bit XP SP3 ntldr пишет: Реально через эксплоит, если не патчено. Вот например один из стареньких ajax пишет: Уж очень он старенький, судя по всему до СП1 Я просто не сразу догнал, что вопрос касательно 7 SP1 x64... Хотел уже всех достать, чем так страшна генерация своего сертификата и подписывание им... Но скачал уже 2 документа с офф сайта, почитал Using Cross-Certificates with Kernel-Mode Code Signing, скачал Заинтересовало Как вариант: может где-нибудь ----- IZ.RU |
|
Создано: 10 мая 2011 06:45 · Личное сообщение · #12 DenCoder пишет: Заинтересовало --> это <-- Читай подробнее Это для белых и пушистых опенсорс проектов. Никто вам не подпишет чужой патченный драйвер или драйвер делающий что-то в обход системы безопасности ОС. ----- PGP key |
|
Создано: 10 мая 2011 11:10 · Личное сообщение · #13 Что нужно, чтобы подписать что-то от имени Microsoft и, скажем, CyberTrust? Секретный ключ? Почти 3 года назад наткнулся на программу для достаточно быстрой факторизации. (В аттаче программа + описание принципа). Все сертификаты есть, нет промежуточного (intermediate CA sertificate) и конечного (End-Entity code signing sertificate). 1-ый должен быть подписан CyberTrust (или VerySign, если выбрали его) и Схема такая: 1) Вычисляем секретные ключи сертификатов по их открытым ключам; 2) Генерируем intermediate, подписываем его Trusted Root CA, указываем кросс; 3) Генерируем End-entity code signing sertificate, подписываем его интермедиэйтом; 4) Подписываем драйвер. Может, я чего-то не понимаю? Видимо да, иначе давно б уже реализовали... Но вопрос: что мешает такой схеме? Дайте ссылку. Аттач d80a_10.05.2011_EXELAB.rU.tgz - Простые числа.rar ----- IZ.RU |
|
Создано: 10 мая 2011 11:14 · Личное сообщение · #14 DenCoder пишет: 1) Вычисляем секретные ключи сертификатов по их открытым ключам; Всего-лишь вычисляем секретные ключи Как вычислите - не забудьте забрать свою нобелевку, или что там дают за открытия века в математике. DenCoder пишет: Но вопрос: что мешает такой схеме? Ничего не мешает. Делайте, удачи вам! ----- PGP key | Сообщение посчитали полезным: tomac |
|
Создано: 10 мая 2011 11:35 · Поправил: DenCoder · Личное сообщение · #15 ntldr пишет: Ничего не мешает. Делайте, удачи вам! Мне пока оно не надо, всего лишь ищу Программа в аттаче может не идеал (не идеал - так и есть, на огромных числах спотыкается и, бывает, виснет), но можно усовершенствовать. Что по принципу факторизации, описанному там же? Ведь Если я не прав, то остаются всё же еще несколько вариантов подхода: 1) Уязвимости алгоритма проверки ЭЦП; 2) Уязвимости работы реестровых nt-функций; 3) Уязвимости работы nt-функций, связанных с парсингом реестра; 4) Уязвимости других nt-функций... Но уязвимости имеют тенденцию патчиться... - малоприменимо и не универсально... ----- IZ.RU |
|
Создано: 10 мая 2011 12:42 · Личное сообщение · #16 |
|
Создано: 10 мая 2011 13:21 · Поправил: DenCoder · Личное сообщение · #17 Alchemistry пишет: FYI большую перспективу в плане эксплоитов имеют win32k подсистемы Угу... а в курсе, что и они имеют префикс Nt? win32k!NtGdiBitBlt, например? И, кстати, функции, построенные на парсинге реестра имеет потенциально высокую вероятность уязвимости при выходе новых версий ввиду существования "некой группы ----- IZ.RU |
eXeL@B —› Программирование —› Патч драйвера в памяти (win64) |