Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Есть ли смысл дальше реверсить

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
1 Фев 2020
Сообщения
74
Реакции
3
Я нашел программу, у которой есть драйвер с дырами, а главное, что он еще подписан и не находится в паблике. Драйвер работает, как SCSI miniport, что позволяет ему получать команды от юзермода через SCSI.
Проблема оказывается в том, что у программы два драйвера, которые тесно между собой связаны и делят между собой функционал. Я в иде обращался по путям их связи, в первом драйвере я нашел лишь виртуальное чтение через mdl, потом пытался отыскать физ чтение/запись, и наткнулся на строки, что отсылают ко второму драйверу, откуда поступают команды от системы в драйверное пространство.
В итоге я нашел этот драйвер и начал проводить его анализ. И обнаружил, что второй драйвер имеет полностью противоположный функционал первому, а т.е имеет физ чтение и запись, но без проверки ключа/валидации он не будет что-либо читать или изменять, а первый будет от имени любой программы даже с минимальными привилегиями. Данные юзермода записываются в реестр без валидации.
Пытаясь получить код, чтобы выполнять произвольные команды, я лишь натыкаюсь на дефолтный функционал пользовательской программы. А при тестировании физ чтения/записи я получаю лишь ошибки с NtCreateSection с разными доступами 0x2, 0x4, 0x5, 0x6, где постоянно возвращает 0xC00000F2.
1776191664140.png
Мозг чешется, помогите.
 
Назад
Сверху Снизу