Jump to content
Vadimon

Мониторинг системы не может противостоять шифровальщикам [В процессе]

Recommended Posts

После очередного заражения шифровальщиком озадачился методикой защиты. На данный момент вижу, что ЛК предлагает две технологии - либо контроль активности программ и белый список ПО, либо мониторинг системы. Постоянная работа над поддержанием в актуальном состоянии белого списка меня не устраивает, поэтому берусь тестировать мониторинг системы. Раньше он у меня был отключен, поскольку я не был уверен, что эта технология способна чему-то противостоять. Что-ж, проверим.

 

Возьмем Windows 7 и KES 10.2.5 со свежими базами. На руках имелись пойманные экземпляры Trojan-Downloader.PowerShell.Agent.q и Trojan-Downloader.JS.Agent.mur, однако на момент тестирования, на сайтах, откуда downloader выкачивал шифровальщик, уже не осталось самих шифровальщиков. Что-ж, на один день превращусь в вирусописателя.

Итак, использую алгоритм, как у шифровальщиков, о которых читал ещё пару лет назад, использовавших PGP. Для начала создаю PowerShell скрипт. Он скачивает с официального сайта архив с 7zip, распаковывает его, создаёт случайный длинный пароль, отправляет его GET-запросом на некий сайт, сканирует диск на предмет документов, шифрует их с паролем, заменяет исходные файлы на архивы.

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

Теперь делаю загрузчик. Алгоритм распространенный - Javascrtipt создает .ps1 файл и запускает его в скрытом окне. Мониторинг срабатывает, PDM:Trojan.Win32.Generic.

Ну что же, не всё уперлось в .js. Делаю в качестве загрузчика .cmd файл, который создает .ps1 файл и запускает его в скрытом окне. Этот вариант уже оказывается не замеченным антивирусом. Есть однократное мелькание окна cmd и немножко другой запрос на запуск файла, но кто-нибудь да пропустит, одурманенный методами социальной инженерии.

 

Таким образом делаю весьма неутешительные выводы.

1. Мониторинг системы не способен вывить действия шифровальщика.

2. Мониторинг системы не способен вывить действия скрипта, просто стирающего с диска все документы по расширению

3. Мониторинг системы не способен выявить загрузчик шифровальщика, если тот написан на .cmd

4. Мониторинг системы способен выловить и остановить загрузчик шифровальщика, если тот написан на Javascript.

Желающим, имеющим достаточно выскоий рейтинг, готов предоставить образцы в личку, но для тестирования, а не для добавления сигнатур в базы. (Чтобы я смог и в дальнейшем повторять тесты).

 

К чему я всё это? С учетом разнообразия скриптовых технологий, нет проблем быстро создать совершенно новый шифровальщик, который в течение нескольких часов не будет детектироваться сигнатурным антивирусом. ЛК сейчас рекомендует для защиты от шифровальщиков контроль активности программ и создание списков доверенных программ. Это очень сложное в настройке и обслуживании решение. Мониторинг системы неэфективен против такой угрозы. А совершенно очевидное решение - блокировка запуска недоверенных скриптов по расширению - реализовано в KES, но почему-то не реализовано в KSC. (https://forum.kaspersky.com/index.php?showtopic=358804 , https://forum.kaspersky.com/index.php?showtopic=321679)

РАЗРАБОТЧИКИ! Обратите внимание на потребности простых администраторов, добавьте поскорее такую важную функцию в KSC!

Edited by Vadim Dvorovenko

Share this post


Link to post

Добрый день!

 

Что вы имеете в виду под "реализовано в KES, но не в KSC"? При помощи KSC можно полностью управлять настройками KES.

У нас есть статья по настройке защиты от шифровальщиков, вы настраивали согласно инструкции?

Можете прислать политику либо конфигурационный файл KES?

 

Спасибо!

Share this post


Link to post

Продолжаю исследование.

Вместо запуска PowerShell-скрипта непосредственно из Javascript, создаю в планировщике задачу и тут же запускаю её. Такое поведение мониторинг системы уже не воспринимает, как троянское. Так что уверен, мониторинг системы не станет преградой к очередному шифровальщику.

 

Share this post


Link to post
Чем? Лично по моему опыту - проблемы настолько редки, что даже не стоят упоминания.

Мой рабочий софт установлен в строго определенных местах (поэтому на него настроены правила пути, которые в случае обновления софта не сбиваются). С рабочим софтом никогда не бывает проблем. Во во-вторых, для "необязательного софта" - есть разрешение для программ который входит в KL-категории, то есть - п/о которое на 100% не является вирусом. Мне приходится "напрягаться" (да и то - по желанию) только если появился новый, неизвестный ЛК софт. Из такого проблемного софта могу припомнить только любимый несколькими моими юзерами браузер амига, который не сразу попадает в KL категории. Все - основную нагрузку тянет на себе ЛК, а я подключаюсь крайне редко.

Лучше бы белый список составили.

В чем сложность? Вы не знаете где, что и как должно работать?

Спасибо за совет. Изучу глубже возможности контроля активности.

Скажу честно, я не включаю компоненты, которые не понимаю как работают. Мне вот непонятно, каким образом KSN/эвристический анализатор будет определять, к какой категории должна относиться программа. А мне хочется, чтобы поведение программы было максимально прозрачным - тогда и администрировать всё будет легко. А в контроле активности куча настроек доступа для каждого уровня, плюс кучу путей нужно указать, где могут находиться, например, файлы пользователей. И по каждой галочке в настройках я, как администратор, должен принять решение. Это меня, честно говоря, пугает.

Share this post


Link to post
Добрый день!

Что вы имеете в виду под "реализовано в KES, но не в KSC"? При помощи KSC можно полностью управлять настройками KES.

Я не могу настроить через KSC запрет запуска *.js, а через KES - могу.

Прочитайте внимательно https://forum.kaspersky.com/index.php?showtopic=358804 и https://forum.kaspersky.com/index.php?showtopic=321679 и отпишитесь там, пожалуйста, если знаете иное решение описанной проблемы.

 

Инструкцию по шифровальщикам читал несколько раз, но пока не применял, так как контроль активности не устанавливал, опасаясь, что от моего неумелого использования этого компонента будет больше вреда, чем пользы.

Share this post


Link to post
Этот вариант уже оказывается не замеченным антивирусом. Есть однократное мелькание окна cmd и немножко другой запрос на запуск файла, но кто-нибудь да пропустит, одурманенный методами социальной инженерии.

Это еще ни о чем не говорит. Даже если шифровальщик подгрузился и начал работать, то его мониторинг активности поймает по поведению.

 

3. Мониторинг системы не способен выявить загрузчик шифровальщика, если тот написан на .cmd

И что? Главное чтобы модуль поймал сам шифровальщик, а не его загрузчик. Я видел и более хитрые способы запуска и их антивирус ловил.

Share this post


Link to post
Это еще ни о чем не говорит. Даже если шифровальщик подгрузился и начал работать, то его мониторинг активности поймает по поведению.

И что? Главное чтобы модуль поймал сам шифровальщик, а не его загрузчик. Я видел и более хитрые способы запуска и их антивирус ловил.

Вы невнимательно меня прочитали. Я написал примитивный Powershell-скрипт, зашифроваший все документы на диске, и мониторинг системы его не заблокировал по поведению. Как и говорил, пример могу прислать в личку.

Share this post


Link to post

Здравствуйте,

 

Как и говорил, пример могу прислать в личку.

Пожалуйста, отправьте данные пользователю KL Central Support.

 

Спасибо!

Share this post


Link to post
Напрасно. Я могу еще как-то объяснить, что какой-то компонент настроен по умолчанию или из-за доставленных проблем выключен, но вообще не установлен? Вам дискового места жалко?

Места не жалко, но железо почти всё очень старое, жаль ресурсов, используемых даже выключенным компонентом (хотя не исследовал, есть ли разница между выключенным и неустановленным). Хотя, наверное, у меня это началось с KIS, когда установленные, но не включенные компоненты всё-время выдавали раздражающее сообщение о том, что защита недостаточна. Поэтому и в корпоративной версии теперь хочется, чтобы "лампочек" было немного, но все бы они горели зеленым.

 

Да, что-то сразу вылезло, что-то вылазило позже. Был случай проблемы с программой которой пользуются раз в полгода (то есть, проблема вылезла ой как не скоро), но сейчас - тишина и спокойствие. Представляете? Ни одного инцидента!!! Вообще!!!

Попробовал на тестовой машине - да, контроль активности единственное, что в состоянии защитить от любого нового шифровальщика. Но в том-то и беда, что сейчас у меня нет возможности экспериментировать на людях. Поставить всем контроль программ нет проблем, KSC это умеет. Но у меня сейчас нет возможности в течение нескольких месяцев сидеть и постоянно ждать звонков взбесившихся пользователей о том, что какая-то программа ведет себя странно. А согласитесь, для пользователя будет странным выглядеть, если он сможет открыть документ, а сохранить его не сможет и всё из-за того, что контроль программ решил, что программа не доверенная. Ну или опять же на несколько месяцев планировать развертывание, создав контрольную группу и постепенно добавляя туда всё новые и новые машины - это большая работа.

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

Share this post


Link to post
Пожалуйста, отправьте данные пользователю KL Central Support.

Я просто опасаюсь, что попав в лабораторию, пример просто будет добавлен в базу сигнатур и никто особенно не будет разбираться, как же он работает, как проанализировать вредоносное поведение, и т.п. В крайнем случае сделают простой шаблон, который будет срабатывать на связке powеrshell + 7zip, но при этом не будет срабатывать на скрипт такой же логики, но на основе vbs + rar. А поскольку о шифровальщиках на базе скриптовых языков и известного доверенное ПО я читал достаточно давно, значит за это время лаборатория не сильно продвинулась в поведенческом анализе, и в дальнейшем качество работы мониторинга системы сильно лучше не станет.

Вы уверены, что в результате того, что я отправлю файл на анализ, он будет добален в BBS, но не будет добавлен в сигнатурную базу?

 

Кстати, при срабатывании мониторинга системы всплывает окно с предложением Лечить с перезагрукой или оставить всё как есть. А я бы очень хотел, чтобы мои пользовали никогда не видели никаких сообщений от антивируса, особенно в вызывающей панику красной рамочке, а также такие, на которые пользователь может ответить Нет, как в этом случае. Как можно отключить это окошко?

Share this post


Link to post

Это можно отключить в закладке "Интерфейс" в политике или локально.

 

СпасибО!

Share this post


Link to post

блокировать все скрипты не вариант.. к примеру как вы будете жить в домене без скриптов?

к тому-же различные скрипты часто используются и в работе

кроме того, шифровальщики могут не заниматься шифрованием сами, а к примеру использовать любой найденный на компе легитимный криптофонкционал (штатные криптофункции, pgp, криптопро и т.д.)..и тогда никакой мониторинг не поможет.

 

вредоносы целесообразнее блокировать по типичным путям, откуда эти скрипты могут у пользователей запускаться.

к примеру при работе с почтой этот пользовательские папки TEMP, TMP, кеши почтовых клиентов

при работе с браузером это кеш браузера

при работе с архиватором по умолчанию это опять-же пользовательские папки TEMP, TMP

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

у меня работает... используются следующие пути (WinXP, Win7, Win8):

C:\Documents and Settings\*\Local Settings\Temp

C:\Users\*\AppData\Local\Temp

C:\Documents and Settings\*\Local Settings\Temporary Internet Files\OLK*

C:\Users\*\AppData\Local\Microsoft\Windows\Temporary Internet Files\OLK*

C:\Users\*\AppData\Local\Microsoft\Windows\Temporary Internet Files\*

C:\Documents and Settings\*\Local Settings\Temporary Internet Files\*

C:\Users\*\AppData\Local\Mozilla\Firefox\Profiles\*

C:\Documents and Settings\*\Local Settings\Application Data\Mozilla\Firefox\Profiles\*

 

 

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

Edited by Aigir

Share this post


Link to post

уточнение к предыдущему посту: примеры путей указаны, как они заданы через KSC (в категории, в критериях типа "путь к папке")

при распространении заданных критериев на компы KSC добавляет к ним в конце слеш со звездочкой \*

при локальных настройках на компе необходимо самим добавлять в конце указанные символы

Edited by Aigir

Share this post


Link to post
Я? А при чем тут я? У меня уже внедрен белый список.

По мне проще составить белый список софта, чем "блокировать по типичным путям". Это и проще, и надежнее.

 

согласен, проще и надежнее.. но не всегда это можно реализовать.

к примеру белый список реально организовать, если изначально в сети был хоть какой-то порядок, и состав используемого софта изначально был ограничен

Если сетка старая, большая, с кучей древних машин и изначально отсутствующей дисциплиной - организовать белый список просто нереально.

К примеру у нас в реестре программ около 1500 позиций разного софта, и в реестре исполняемых файлов набралось около 11 тыр записей разных файлов.

При том, что данный реестр в принципе не чистится и аккумулирует в себе все файлы за все время существования KSC, разгрести это нереально.

 

в этой ситуации удается защититься только постоянно пополняемым черным списком и блокировкой запуска из временных папок

Edited by Aigir

Share this post


Link to post
Это можно отключить в закладке "Интерфейс" в политике или локально.

Я через политику на вкладке интерфейс отключил вывод любых уведомлений на экран, всё только в лог. Но при этом, при срабатывании мониторинга всё-равно выскакивает вопрос Лечить с перезагрузкой или Не выполнять. И при включенном лечении активного заражения, и при выключенном. Опасный файл, конечно, удаляется, но мне не нравится ситуация, что в этой ситуации какое-то решение должен принимать простой пользователь

Share this post


Link to post
Я через политику на вкладке интерфейс отключил вывод любых уведомлений на экран, всё только в лог. Но при этом, при срабатывании мониторинга всё-равно выскакивает вопрос Лечить с перезагрузкой или Не выполнять. И при включенном лечении активного заражения, и при выключенном. Опасный файл, конечно, удаляется, но мне не нравится ситуация, что в этой ситуации какое-то решение должен принимать простой пользователь

 

А можно вообще не спрашивать пользователя, если принудительно задать конкретное действие, например "Поместить на карантин" или "завершить работу вредоносной программы"

Share this post


Link to post
блокировать все скрипты не вариант.. к примеру как вы будете жить в домене без скриптов?

У меня логика простая. Все скрипты администрирования лежат либо в сетевой шаре с правом на запись только админам, либо в Program Files, куда с правами пользователя тоже ничего не записать. Из всех остальных мест - нельзя.

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

 

вредоносы целесообразнее блокировать по типичным путям, откуда эти скрипты могут у пользователей запускаться.

к примеру при работе с почтой этот пользовательские папки TEMP, TMP, кеши почтовых клиентов

при работе с браузером это кеш браузера

при работе с архиватором по умолчанию это опять-же пользовательские папки TEMP, TMP

Изначально я пытался дать пользователям максимальную свободу - ну нравится человеку альтернативный браузер, ну пусть поставит его себе, он же к нему в профиль запишется, так что другим пользователям и виден не будет. Так что для .exe - сигнатурный анализ, плюс его почта даже в архиве может порезать. А вот если пользователь .js запускает - это точно вирус. .exe, конечно, тоже нужно блочить, но в последних двух случаях вирус именно через .js пролез.

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

 

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

 

 

Спасибо за пути, подумаю, как можно такой подход применить.

Share this post


Link to post
А можно вообще не спрашивать пользователя, если принудительно задать конкретное действие, например "Поместить на карантин" или "завершить работу вредоносной программы"

А какой из этих вариантов правильнее для работы с шифровальщиками? Я не знал, какой выбрать, поэтому выбрал автоматически. Всегда предполагал, что автоматический выбор действия подразумевает, что это сделает антивирус, а не пользователь, как в этом случае.

Share this post


Link to post
А можно вообще не спрашивать пользователя, если принудительно задать конкретное действие, например "Поместить на карантин" или "завершить работу вредоносной программы"

А какой из этих вариантов правильнее для работы с шифровальщиками? Я не знал, какой выбрать, поэтому выбрал автоматически. Всегда предполагал, что автоматический выбор действия подразумевает, что это сделает антивирус, а не пользователь, как в этом случае.

Кстати, если выбираю Поместить на карантин, окошко всё-равно выскакивает. Зато в логах есть запись об откате вредоносных действий.

А если выбираю "завершить работу вредоносной программы", то окошка нет, но вредонос не удаляется, в логах нет записи об откате вредоносных действий, так как они, видимо, не откатывались

Видимо, неотключаемое через настройки окошко является неотъемлемой частью процедуры лечения, а лечение запускается только пр помещении на карантин.

Edited by Vadim Dvorovenko

Share this post


Link to post
Вы невнимательно меня прочитали. Я написал примитивный Powershell-скрипт, зашифроваший все документы на диске, и мониторинг системы его не заблокировал по поведению. Как и говорил, пример могу прислать в личку.

Давайте посмотрю на виртуалке. Только проверить я могу либо на KIS 2017, либо на Kaspersky Anti-Ransomware Tool for Business.

Share this post


Link to post

вот кстати свежий пример, когда для критоопераций используется штатный системный криптофункционал (MS Crypto API)

http://www.securitylab.ru/news/484127.php

 

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

 

по поводу любимых браузеров и прочей хрени - это пусть пользователи дома пользуется чем хотят

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

если IE - значит у всех должен быть IE, если MS Office - значит у всех должен быть MS Office, и т.д.

к тому-же типовым софтом через доменные политики проще управлять, чем заморачиваться с 10 различными браузерами, 10 почтовыми клиентами и 10 офисными пакетами.

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

 

Share this post


Link to post
А какой из этих вариантов правильнее для работы с шифровальщиками? Я не знал, какой выбрать, поэтому выбрал автоматически. Всегда предполагал, что автоматический выбор действия подразумевает, что это сделает антивирус, а не пользователь, как в этом случае.

Кстати, если выбираю Поместить на карантин, окошко всё-равно выскакивает. Зато в логах есть запись об откате вредоносных действий.

А если выбираю "завершить работу вредоносной программы", то окошка нет, но вредонос не удаляется, в логах нет записи об откате вредоносных действий, так как они, видимо, не откатывались

Видимо, неотключаемое через настройки окошко является неотъемлемой частью процедуры лечения, а лечение запускается только пр помещении на карантин.

 

Здравствуйте,

 

по теме белого списка у вас остались ещё вопросы ?

Спасибо.

Share this post


Link to post
А какой из этих вариантов правильнее для работы с шифровальщиками? Я не знал, какой выбрать, поэтому выбрал автоматически. Всегда предполагал, что автоматический выбор действия подразумевает, что это сделает антивирус, а не пользователь, как в этом случае.

Кстати, если выбираю Поместить на карантин, окошко всё-равно выскакивает. Зато в логах есть запись об откате вредоносных действий.

А если выбираю "завершить работу вредоносной программы", то окошка нет, но вредонос не удаляется, в логах нет записи об откате вредоносных действий, так как они, видимо, не откатывались

Видимо, неотключаемое через настройки окошко является неотъемлемой частью процедуры лечения, а лечение запускается только пр помещении на карантин.

 

пользователь должен видеть эти предупреждения

запуск вредоносного файла - это в первую очередь косяк самого пользователя, и пусть он об этом знает

нечего беречь его нервы... чтобы в следующий раз он думал что запускает

и естественно пользователю не надо предоставлять возможность выбора действий.. если подозрение на вредонос - значит однозначно фтопку (в карантин), без вариантов

Edited by Aigir

Share this post


Link to post
пользователь должен видеть эти предупреждения

запуск вредоносного файла - это в первую очередь косяк самого пользователя, и пусть он об этом знает

нечего беречь его нервы... чтобы в следующий раз он думал что запускает

и естественно пользователю не надо предоставлять возможность выбора действий.. если подозрение на вредонос - значит однозначно фтопку (в карантин), без вариантов

 

Спасибо за ваше мнение.

Share this post


Link to post
по теме белого списка у вас остались ещё вопросы ?

У меня есть папка с доверенным софтом, я сделал категорию программ, автоматически пополняемую из этой папки. Но разные исполняемые файлы из этой папки получили разный уровень доверия. Для каких то вообще значится, что уровень доверия не определен. А там лежат установщики, поэтому если какой-то из них не будет иметь нужного уровня доверия, как я понимаю, контроль активности просто не даст произвести установку, заблокировав доступ к файлам и реестру. Как мне сделать, чтобы для них для всех стал максимальный уровень доверия?

Вообще, очень неудобно прописывать в политику ограничения на программы и типы защищаемых файлов, особенно если таких политик несколько. Есть ли возможность скопировать настройки контроля активности из одной политики в другую, не трогая при этом настройки других компонентов?

Share this post


Link to post

×
×
  • Create New...

Important Information

We use cookies to make your experience of our websites better. By using and further navigating this website you accept this. Detailed information about the use of cookies on this website is available by clicking on more information.