![]() |
eXeL@B —› Основной форум —› Невидимость ключа в реестре и процесса реализованная в sys файле. |
Посл.ответ | Сообщение |
|
Создано: 02 марта 2006 02:47 · Личное сообщение · #1 Здравствуйте ! Столкнулся с программой частичная защита которой реализована в файлике c:\windows\system32\drivers\emos.sys Сам emos.exe не виден в процессах и дамперы его не видят и пишет данные данные в реестр в hklm\software\zzz который тоже невидим ни стандартным регедитом ни сторонними продуктами и регмоном не мониторится. Я понял, что emos.sys осуществляет перехват апи функций и осуществляет всё вышеперечисленное. Я нашёл места где хранятся строки ZZZ и emos.exe Но проблема в том, что любое изменение в файле emos.sys сказывается критически. Повторяю абсолютно любое даже в заголовке в надписи This program cannot…. Стоит один байтик поправить и всё. При попытке запуска через net start emos я вижу сообщение The specified driver is invalid. Стоит вернуть изменения и запуск происходит. Отсюда два вопроса: 1) В драйверах изменение файла контролируется виндой (у меня XP) или это делает сам emos.sys ? Хотя похоже ответ я знаю. Если в начале кода ставить int 3, а в сайсе bpint 3, то всплытие не происходит и я по прежнему вижу надпись The specified driver is invalid. Получается только ставить бряк на одну из функций в начале и править нужные строчки в памяти. Но кем контролируется целостность emos.sys и как это обойти – я не знаю. 2) Если драйвер не менять и он стартует, то в softice я командами device emos или driver emos вижу много информации, адреса какие то и т.д. А вот как попасть в контекст драйвера не знаю. Поиском не находится и addr emos естественно не работает. Если бы это была подгруженная dll, то зная в чьём адресном пространстве она находится я бы её запатчил, а вот по драйверам идей нет. Может что подскажите ? Вот ссылка на программу, если кто захочет взглянуть. www.softsecurity.com/download/email_observer/emailobs.zip Ломать за меня естественно не прошу, за ответы и идеи - буду благодарен. ![]() |
|
Создано: 02 марта 2006 06:53 · Личное сообщение · #2 |
|
Создано: 02 марта 2006 08:21 · Личное сообщение · #3 |
|
Создано: 02 марта 2006 11:15 · Личное сообщение · #4 ToBad пишет: В драйверах изменение файла контролируется виндой (у меня XP) или это делает сам emos.sys Винда контролирует целостность драйвера, проверяя его контрольную сумму. Так как запуск поврежденного драйвера - практически 100%-ный синяк. Хотя, если мне не изменяет память, 2к запросто грузила драйверы (ессесно делая синяк) драйвер, состоящий из сплошных нулей. ToBad пишет: А вот как попасть в контекст драйвера не знаю Что значит, "попасть в контекст драйвера"? Сделай driver emos и тебе будет написан адрес загрузки этого драйвера. С этого места он размещен в памяти. И ты его увидишь в контексте любого процесса. RTFM короче. ![]() |
|
Создано: 02 марта 2006 11:29 · Личное сообщение · #5 Первые два поста про CRC. Дальше MoonShiner обьясняет адресс драйвера. Контекст процеса - относительно именно процесов. Под контекстом драйвера понимают более деликатную вещь. Видимо тебе нужен образ драйвера в памяти. Почитай инфу по этому. В двух словах: первые два гигибайта памяти уникальны для каждого процесса, а вот верхние два гига одинаковые для любого процесса. Там находится ядро системы, тоесть, по сути - драйвера. Вызови список модулей командой Айса с ключом -s. Таким образом будут показаны системные модули. Вот там и ищи адресс своего драйвера. ![]() |
|
Создано: 02 марта 2006 19:42 · Личное сообщение · #6 |
|
Создано: 02 марта 2006 22:34 · Личное сообщение · #7 |
|
Создано: 03 марта 2006 03:17 · Личное сообщение · #8 Спасибо всем ! Со всем разобрался. CRC поправил - всё заработало. Команду сайса mod -s упустил из вида, а с driver emos тоже подзапутался. Сейчас всё понял. Прошу прощенье насчёт некорректно сказанной фразы "попасть в контекст драйвера", я имел ввиду попасть из сайса в нужное место в коде драйвера что бы пропатчить. Теперь понял как. Отдельное спасибо Error_Log за ссылку на интересную софтину. Заодно и мониторы обновил. Всем ещё раз спасибо за помощь. Тему закрываю. ![]() |
![]() |
eXeL@B —› Основной форум —› Невидимость ключа в реестре и процесса реализованная в sys файле. |
Эта тема закрыта. Ответы больше не принимаются. |