Re[2]: "Новый" подход к обнаружению руткитов
От: Cyberax Марс  
Дата: 08.12.07 15:59
Оценка:
Здравствуйте, Maxim S. Shatskih, Вы писали:

GN>>В последнее время актуальность юзерлендных руткитов снизилась из-за практически гарантированного детекта, поэтому далее речь пойдёт о детектировании руткитов, использующих драйвера.

MSS>Да, совсем забыл. 64битная Виста — это новый уровень борьбы с кернеловскими руткитами, по всем известной причине.
Интересно только, а насколько ядерные руткиты вообще актуальны? Все вирусные заражения, которые я только видел, вообще не использовали никакие схемы скрытия потоков.

Опять же, для серьезных малварей (которые не предназначены для тупой рассылки спама) никто не мешает сделать подписаный драйвер.

И я точно знаю из надежных источников, например, что можно в ядро в текущей Vista x64 зайти через дырку в каком-то стандартном драйвере.
Sapienti sat!
Re[3]: "Новый" подход к обнаружению руткитов
От: Maxim S. Shatskih Россия  
Дата: 08.12.07 17:50
Оценка:
C>Интересно только, а насколько ядерные руткиты вообще актуальны? Все вирусные заражения, которые я только видел, вообще не использовали никакие схемы скрытия потоков.

Я их видел очень мало, но таки +1.

Да, кстати, еще одна хорошая антируткитная мира — забутится с сидюка с антивирусом и просканить машину.

C>Опять же, для серьезных малварей (которые не предназначены для тупой рассылки спама) никто не мешает сделать подписаный драйвер.


...чтобы потом руководство компании-подписанта получило уголовное преследование?

C>И я точно знаю из надежных источников, например, что можно в ядро в текущей Vista x64 зайти через дырку в каком-то стандартном драйвере.


Через какую дырку, в каком драйвере, в каком IOCTLе. Сообщили бы, а я бы в микрософт отписал.

Вообще говоря, такая информация устаревает при следующем запуске Windows Update найдутся те, кто зайдут на хакерский сайт, почитают его, а потом отпишут в микрософт его содержимое.

Принципиальных проблем с уязвимостью ядра у виндов нет, как и у юниксов. Все такие проблемы лечатся крошечным патчами, как только авторы узнали о дырке.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[3]: "Новый" подход к обнаружению руткитов
От: Maxim S. Shatskih Россия  
Дата: 08.12.07 17:52
Оценка:
L>хз-хз, AMD тоже раньше говорила что DEP спасёт мир от зловредов..

DEP разом закрывает кучу дыр, но все же не все.

Тут же речь идет о том, что для загрузки малвари в кернел нужно будет править ntoskrnl на диске, причем желательно еще до того, как кернел получит управление. Кстати, он вроде тоже цифровой подписью защищен.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[4]: "Новый" подход к обнаружению руткитов
От: Cyberax Марс  
Дата: 08.12.07 18:03
Оценка:
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>Да, кстати, еще одна хорошая антируткитная мира — забутится с сидюка с антивирусом и просканить машину.

Это вообще почти что TheUltimate мера.

C>>Опять же, для серьезных малварей (которые не предназначены для тупой рассылки спама) никто не мешает сделать подписаный драйвер.

MSS>...чтобы потом руководство компании-подписанта получило уголовное преследование?
Ты же понимаешь, что если руткитами займется орг.преступность — то на такую мелочь им будет плевать. В крайнем случае, оформят компанию на украденый/подделаный паспорт.

Ну или "ХорошаяКомпанияА" делает вполне легальный драйвер, который занимается миганием лампочки ScrollLock и распространяет его бесплатно. Ну и в качестве дополнительной функции — специально вставленая уязвимость. Так вообще "все в белом" будут — фиг кто докажет, что уязвимость специально была вставлена.

C>>И я точно знаю из надежных источников, например, что можно в ядро в текущей Vista x64 зайти через дырку в каком-то стандартном драйвере.

MSS>Через какую дырку, в каком драйвере, в каком IOCTLе. Сообщили бы, а я бы в микрософт отписал.
Я бы рад, но мне самому детали не сказали Автор сказал, что в MS сообщит сам в ближайшее время.

MSS>Вообще говоря, такая информация устаревает при следующем запуске Windows Update найдутся те, кто зайдут на хакерский сайт, почитают его, а потом отпишут в микрософт его содержимое.

MSS>Принципиальных проблем с уязвимостью ядра у виндов нет, как и у юниксов. Все такие проблемы лечатся крошечным патчами, как только авторы узнали о дырке.
Так фича в том, что хакерам же не нужно 100% гарантированой работы на всех версиях софта. Вполне достаточно будет наличие достаточно больших окон уязвимостей.
Sapienti sat!
Re[5]: "Новый" подход к обнаружению руткитов
От: Maxim S. Shatskih Россия  
Дата: 08.12.07 18:34
Оценка:
MSS>>Да, кстати, еще одна хорошая антируткитная мира — забутится с сидюка с антивирусом и просканить машину.
C>Это вообще почти что TheUltimate мера.

Очевидно, что это лучше, чем ставить гадостные основанные на хуках резидентные антивирусы.

C>Ты же понимаешь, что если руткитами займется орг.преступность — то на такую мелочь им будет плевать.


Вероятность реально сесть не есть мелочь даже для орг. преступности, а особенно для отдельных орг. преступников.

C>В крайнем случае, оформят компанию на украденый/подделаный паспорт.


Это можно сделать в индустриальных количествах?

Все взломы сайтов, вирусо-, руткито- и кряко- писание основаны на том, что за это практически невозможно получить наказание по закону. Анонимность очень высока. С обязательной подписью на кернел бинари эта анонимность в значительной степени убирается.

C>Ну или "ХорошаяКомпанияА" делает вполне легальный драйвер, который занимается миганием лампочки ScrollLock и распространяет его бесплатно. Ну и в качестве дополнительной функции — специально вставленая уязвимость. Так вообще "все в белом" будут — фиг кто докажет, что уязвимость специально была вставлена.


По крайней мере маньячных одиночек, которые сейчас в основном и занимаются вирусописанием, подпись на бинари срежет.

C>Так фича в том, что хакерам же не нужно 100% гарантированой работы на всех версиях софта. Вполне достаточно будет наличие достаточно больших окон уязвимостей.


Угу, и эти окна прикрываются, уменьшаясь раз в 10, совершенно стандартными тупыми методами без расставления хуков в ядро и тому подобное.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[6]: "Новый" подход к обнаружению руткитов
От: Denwer Россия  
Дата: 09.12.07 12:10
Оценка: 1 (1)
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>>>Да, кстати, еще одна хорошая антируткитная мира — забутится с сидюка с антивирусом и просканить машину.

C>>Это вообще почти что TheUltimate мера.

MSS>Очевидно, что это лучше, чем ставить гадостные основанные на хуках резидентные антивирусы.


Да, тут я думаю лучшего не придумать, только вторая ОСь.

C>>Ты же понимаешь, что если руткитами займется орг.преступность — то на такую мелочь им будет плевать.


MSS>Вероятность реально сесть не есть мелочь даже для орг. преступности, а особенно для отдельных орг. преступников.


Это я тебе точно скажу — НИКАК НЕ ПОВЛИЯЕТ. Сам иногда удивляюсь что творится в киберпреступности сейчас.

MSS>По крайней мере маньячных одиночек, которые сейчас в основном и занимаются вирусописанием, подпись на бинари срежет.


Сейчас прошли времена одиночек, т.к. системы стали очень сложны. Все больше и больше занимаются этим компании.

MSS>Угу, и эти окна прикрываются, уменьшаясь раз в 10, совершенно стандартными тупыми методами без расставления хуков в ядро и тому подобное.


Да, вот Vista явно испортила жизнь вирмейкерам/руткитодевелоперам.

ЗЫ: И на последок, так между делом, как удалить Srizbi голыми руками: создаем в директории system32\drivers\ файл с именем symavc32.sys и делаем рестарт. И никакие бутлоадеры не нужны, жаль только что метода от одного руткита спасает.
Re[7]: "Новый" подход к обнаружению руткитов
От: DOOM Россия  
Дата: 09.12.07 12:13
Оценка:
Здравствуйте, Denwer, Вы писали:

D>ЗЫ: И на последок, так между делом, как удалить Srizbi голыми руками: создаем в директории system32\drivers\ файл с именем symavc32.sys и делаем рестарт. И никакие бутлоадеры не нужны, жаль только что метода от одного руткита спасает.


В общем-то при помощи консоли восстановления можно удалить, пожалуй, любой руткит из существующих...
Re[8]: "Новый" подход к обнаружению руткитов
От: Denwer Россия  
Дата: 09.12.07 12:16
Оценка:
Здравствуйте, DOOM, Вы писали:

DOO>Здравствуйте, Denwer, Вы писали:


D>>ЗЫ: И на последок, так между делом, как удалить Srizbi голыми руками: создаем в директории system32\drivers\ файл с именем symavc32.sys и делаем рестарт. И никакие бутлоадеры не нужны, жаль только что метода от одного руткита спасает.


DOO>В общем-то при помощи консоли восстановления можно удалить, пожалуй, любой руткит из существующих...


Вот только загрузочного диска в большинстве случаев под рукой не бывает.
Re[9]: "Новый" подход к обнаружению руткитов
От: DOOM Россия  
Дата: 09.12.07 12:51
Оценка:
Здравствуйте, Denwer, Вы писали:

D>>>ЗЫ: И на последок, так между делом, как удалить Srizbi голыми руками: создаем в директории system32\drivers\ файл с именем symavc32.sys и делаем рестарт. И никакие бутлоадеры не нужны, жаль только что метода от одного руткита спасает.


DOO>>В общем-то при помощи консоли восстановления можно удалить, пожалуй, любой руткит из существующих...


D>Вот только загрузочного диска в большинстве случаев под рукой не бывает.


Ну у меня она именно для таких целей просто напросто установлена раз и навсегда
Re[6]: "Новый" подход к обнаружению руткитов
От: Cyberax Марс  
Дата: 09.12.07 20:14
Оценка:
Здравствуйте, Maxim S. Shatskih, Вы писали:

C>>Это вообще почти что TheUltimate мера.

MSS>Очевидно, что это лучше, чем ставить гадостные основанные на хуках резидентные антивирусы.
Да, поэтому я именно так и делаю. Примерно раз в полгода загружаюсь с LiveCD и проверяю систему.

C>>Ты же понимаешь, что если руткитами займется орг.преступность — то на такую мелочь им будет плевать.

MSS>Вероятность реально сесть не есть мелочь даже для орг. преступности, а особенно для отдельных орг. преступников.
К сожалению, нет.

C>>В крайнем случае, оформят компанию на украденый/подделаный паспорт.

MSS>Это можно сделать в индустриальных количествах?
Я сейчас занимаюсь risk assessment для одного проекта, поэтому изучаю текущее положение в киберпреступном мире. Ситуация просто удручающая — в Сети есть открытые ресурсы, которые торгуют паспортами, SSNами, организациями. Этим, в основном, пользуются всякие кардеры для вывода наличности.

Я не буду здесь писать публично детали всего этого, но получить несколько сертов — не составляет (заметь настоящее время, сейчас вовсю торгуют SSL-сертами) особой проблемы. Тем более, что серьезные руткиты продаются за весьма серьезные бабки.

MSS>Все взломы сайтов, вирусо-, руткито- и кряко- писание основаны на том, что за это практически невозможно получить наказание по закону. Анонимность очень высока. С обязательной подписью на кернел бинари эта анонимность в значительной степени убирается.

К сожалению, нет.

C>>Ну или "ХорошаяКомпанияА" делает вполне легальный драйвер, который занимается миганием лампочки ScrollLock и распространяет его бесплатно. Ну и в качестве дополнительной функции — специально вставленая уязвимость. Так вообще "все в белом" будут — фиг кто докажет, что уязвимость специально была вставлена.

MSS>По крайней мере маньячных одиночек, которые сейчас в основном и занимаются вирусописанием, подпись на бинари срежет.
Эпоха маньяков-одиночек уже давно прошла. Я ее с ностальгией уже вспоминаю, такие вирусы были — со спецэффектами и всякими хитрыми трюками, люди их почти всегда делали чисто из любви к искусству.

Сейчас же большая часть малвари пишется преступниками с целью похищения персональных данных.

C>>Так фича в том, что хакерам же не нужно 100% гарантированой работы на всех версиях софта. Вполне достаточно будет наличие достаточно больших окон уязвимостей.

MSS>Угу, и эти окна прикрываются, уменьшаясь раз в 10, совершенно стандартными тупыми методами без расставления хуков в ядро и тому подобное.
Самый хороший метод — это просто прикрыть порты файрволом и всякую фигню не запускать. К сожалению, тупоюзеры представляют главный вектор атаки.
Sapienti sat!
Re[4]: "Новый" подход к обнаружению руткитов
От: gear nuke  
Дата: 09.12.07 22:34
Оценка:
Здравствуйте, lamogun, Вы писали:

L>в алкоголе sptd.sys жестоко прячет другой свой драйвер (название обычно начинается на букву a.....sys)


Дык, раз sptd.sys не грузится, то 2й драйвер не запустится.

Или проблема именно в получении его образа? 0.25 не может скопировать файл, т.к. первичных драйвер активен и уже поздно, но можно попробовать сдампить файл после востановления:

static
bool restore_import(pe::image * pimg, const pe::image * original)
{
  using namespace pe;
  const image::data_directory * const import_table = 
                 pimg->get_data_directory(image::data_directory::import_table);
  if ( !import_table || !import_table->VirtualAddress )
    return false;
  for ( image::import_descriptor * import_entry = pimg->va<image::import_descriptor*>(import_table->VirtualAddress);
        ! import_entry->is_terminating();
        ++import_entry )
  {
    uintptr_t * iat = pimg->va<uintptr_t*>(import_entry->FirstThunk);
    for ( int32_t * hint_name = pimg->va<int32_t*>(import_entry->OriginalFirstThunk);
          *hint_name;
          ++hint_name, ++iat )
    {
      *iat = *hint_name = original->rva(*hint_name);
    }
  }
  return true;
}

// восстанавливаем образ перед дампом
  pe::image * original; // адрес образа в памяти
  size_t image_size;    // размер имиджа в памяти
  uint8_t * buf = new(std::nothrow) uint8_t[image_size];
  pe::image * copy = pe::image::bind(buf);
  std::memcpy(copy, original, image_size);
  restore_import(copy, original) && copy->relocate(copy->get_nt_headers()->OptionalHeader32.ImageBase - uintptr_t(original));
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[3]: "Новый" подход к обнаружению руткитов
От: gear nuke  
Дата: 09.12.07 23:57
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Интересно только, а насколько ядерные руткиты вообще актуальны? Все вирусные заражения, которые я только видел, вообще не использовали никакие схемы скрытия потоков.


Не удивительно, что ничего не видел. Когда работает руткит, AV и FW обычно тихо курят в сторонке.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[4]: "Новый" подход к обнаружению руткитов
От: Cyberax Марс  
Дата: 10.12.07 03:25
Оценка: :)
Здравствуйте, gear nuke, Вы писали:

C>>Интересно только, а насколько ядерные руткиты вообще актуальны? Все вирусные заражения, которые я только видел, вообще не использовали никакие схемы скрытия потоков.

GN>Не удивительно, что ничего не видел. Когда работает руткит, AV и FW обычно тихо курят в сторонке.
Я видел работающие руткиты (кроме того, прочитай что я написал про загрузку с LiveCD). Они вполне обнаружимы — по большей нагрузке процессора (хорошо заметна по вентиляторам на ноуте ), странными сетевыми соединениями и т.п.
Sapienti sat!
Re[5]: "Новый" подход к обнаружению руткитов
От: DOOM Россия  
Дата: 10.12.07 05:16
Оценка: :)
Здравствуйте, Cyberax, Вы писали:

C>Я видел работающие руткиты (кроме того, прочитай что я написал про загрузку с LiveCD). Они вполне обнаружимы — по большей нагрузке процессора (хорошо заметна по вентиляторам на ноуте ), странными сетевыми соединениями и т.п.


Да и редкая птица (в смысле руткит) сможет обмануть даже такую банальную вещь, как Rootkit Revealer от sysinternals.
Re[5]: "Новый" подход к обнаружению руткитов
От: lamogun  
Дата: 10.12.07 14:45
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, gear nuke, Вы писали:


C>>>Интересно только, а насколько ядерные руткиты вообще актуальны? Все вирусные заражения, которые я только видел, вообще не использовали никакие схемы скрытия потоков.

GN>>Не удивительно, что ничего не видел. Когда работает руткит, AV и FW обычно тихо курят в сторонке.
C>Я видел работающие руткиты (кроме того, прочитай что я написал про загрузку с LiveCD). Они вполне обнаружимы — по большей нагрузке процессора (хорошо заметна по вентиляторам на ноуте ), странными сетевыми соединениями и т.п.

Есть руткиты, которые удаляют свой драйвер по завершению до следующей перезугрузки, есть и те, которые удаляют транспорт, с помощью которого руткит попал на машину =)
Re[5]: "Новый" подход к обнаружению руткитов
От: lamogun  
Дата: 10.12.07 14:48
Оценка:
Здравствуйте, gear nuke, Вы писали:

GN>Здравствуйте, lamogun, Вы писали:


L>>в алкоголе sptd.sys жестоко прячет другой свой драйвер (название обычно начинается на букву a.....sys)


GN>Дык, раз sptd.sys не грузится, то 2й драйвер не запустится.


GN>Или проблема именно в получении его образа? 0.25 не может скопировать файл, т.к. первичных драйвер активен и уже поздно, но можно попробовать сдампить файл после востановления:



Да компилить нечем
Кстати я несильно в теме, возможно уже загруженый драйвер можно сдампить, разные "антируткиты" это могут делать.
Другой вопрос в корректности сдампленых данных..
Re[6]: как билдить
От: gear nuke  
Дата: 11.12.07 03:37
Оценка:
Здравствуйте, lamogun, Вы писали:

L>Да компилить нечем


Компилятор доступен свободно на сайте MS, необходима версия 2005 SP1 (без SP1 возможны ложные warning). Можно взять из VC Express или WDK.
Для компиляции необходимы следующие файлы (если их положить в подпапку /bin то компиляция делается просто build.cmd, можно так же прописать пути к ним в %PATH%)
zenadriver\bin

    <DIR>          1033
         2.285.568 c1xx.dll
         2.265.088 c2.dll
           117.504 cl.exe
           733.440 link.exe
            57.856 msobj80.dll
           172.032 mspdb80.dll
           257.024 mspdbcore.dll
           112.832 mspdbsrv.exe

\zenadriver\bin\1033

           389.120 clui.dll
            55.808 linkui.dll

Так же необходим perl (проще всего скачать и установить пакет ActivePerl).

L>Кстати я несильно в теме, возможно уже загруженый драйвер можно сдампить, разные "антируткиты" это могут делать.


Можно конечно, выше я привёл код который приводит PE имидж к состояний как до обработки загрузчиком (проверить коректность работы можно попытавшись персичитать чексумму PE, она не должна изменяться)

L>Другой вопрос в корректности сдампленых данных..


Да, проблема в том, что если код руткита отработал, то он может тупо попортить имидж в памяти.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[7]: "Новый" подход к обнаружению руткитов
От: Maxim S. Shatskih Россия  
Дата: 11.12.07 17:30
Оценка:
C>Самый хороший метод — это просто прикрыть порты файрволом

NATа хватит, но в целом — +1.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[6]: "Новый" подход к обнаружению руткитов
От: Denwer Россия  
Дата: 11.12.07 18:29
Оценка:
Здравствуйте, DOOM, Вы писали:

[ Поскипано для счастья модератора ]

DOO>Да и редкая птица (в смысле руткит) сможет обмануть даже такую банальную вещь, как Rootkit Revealer от sysinternals.


Это почему? Не делаем скрытые файлы и скрытые ветки реестра. Эту тулзу я не использую вообще уже, морально устарела.
Re[7]: "Новый" подход к обнаружению руткитов
От: DOOM Россия  
Дата: 12.12.07 04:51
Оценка:
Здравствуйте, Denwer, Вы писали:

D>Это почему? Не делаем скрытые файлы и скрытые ветки реестра. Эту тулзу я не использую вообще уже, морально устарела.


Не очень понял идею — где тогда твой руткит жить будет?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.