В прошлой статье о VM (от англ. - vulnerability management) мы рассказали, с какими проблемами можно столкнуться при анализе и управлении рисками. Сегодня спустимся на уровень ниже и поговорим об интересных находках, скрывающихся в глубинах готовых VM-отчетов.
Одна из задач контроля уязвимостей – исследование сетевых ресурсов с помощью сканера. По результату работы компания получает отчет с обнаруженными уязвимостями и другой информацией в большом количестве. С уязвимостями все более-менее понятно – критические нужно устранять как можно быстрее, а уязвимости с меньшей критичностью – приоритизировать и тоже устранять. Но и на техническую информацию стоит обращать внимание – с ее помощью можно значительно повысить уровень защищенности сети.
Рассмотрим, какие необычные находки могут быть проблемой, и что стоит делать с этими невиданными зверями.
Отсутствующие обновления
При сканировании в режиме Whitebox (с аутентификацией на исследуемых узлах) сканер получает информацию о неустановленных обновлениях безопасности ОС. В каждом свежем обновлении исправляются уязвимости предыдущего, и если отказаться от него, то те самые уязвимости будут и дальше представлять угрозу для системы – поэтому чаще всего сканер помечает неустановленные обновления как уязвимости высокой критичности.
Также в отчете сканера присутствует и список неустановленных обновлений с их идентификаторами.
При большом количестве неустановленных обновлений обычно мы рекомендуем проанализировать процессы обновления ПО и ОС и вспомнить договоренности компании по работе с IT-интегратором или вендором. Но сегодня далеко не все компании могут установить обновления – в этом случае лучше обратиться к алгоритму НКЦКИ.
Если обновления нельзя установить по каким-либо причинам, то можно исключить список неустановленных обновлений из отчета – это позволит правильнее оценить уровень защищенности сети и эффективнее приоритизировать оставшиеся уязвимости.
Если обновления софта и ОС устанавливаются на регулярной основе – не забываем, что для их применения нужна перезагрузка или рестарт ПО. Также при планировании сканирований лучше синхронизироваться с процессами установки обновлений, чтобы при проведении исследования большая часть узлов были перезагружены и работали на актуальной версии ПО и ОС. Это поможет получить в VM-отчете меньшее число уязвимостей, связанных с неустановленными обновлениями.
Закрываем уязвимости без обновлений
Если есть серьезная эксплуатируемая уязвимость, ее можно закрыть и без обновления. Вспомним нашумевшую уязвимость Follina, когда злоумышленники создавали вредоносный документ и передавали его жертвам-сотрудникам компаний в фишинговом письме через электронную почту. Злоумышленники все чаще используют социальную инженерию и придерживаются концепции «человек как главный вектор атаки». Поэтому самый простой способ решения проблемы – постоянно обучать сотрудников основам кибербезопасности и рассказывать им о новых киберугрозах (SA, от англ. – Security awareness).
Сегодня SA – это самодостаточный и проактивный метод защиты, поэтому во время подготовки отчетности по VM мы также напоминаем клиентам о необходимости обучения. Программа повышения осведомленности сотрудников должна включать в себя имитированные фишинговые атаки – так сотрудники смогут столкнуться с образцами реальных киберугроз и повысить свою насмотренность.
Вот что можно сделать для защиты организации при отсутствии обновлений:
Применять временные меры безопасности. Например, можно включить использование дополнительных уровней аутентификации, усилить контроль доступа, фильтровать сетевой трафик или применить настройки безопасности на уровне операционной системы или приложений.
Использовать патчи и исправления от сторонних поставщиков.
Использовать системы защиты периметра – брандмауэры, интранет-шлюзы, системы обнаружения вторжений (IDS) и системы предотвращения вторжений (IPS).
Проводить сегментацию сети – она позволяет разделить сеть на отдельные зоны с различными уровнями доверия и ограничить потенциальное распространение атаки на другие части системы или локальную вычислительную сеть (ЛВС).
Внедрять системы обнаружения угроз (Threat Detection) и системы управления инцидентами (Incident Response).
Усилить контроль доступа к системам и данным. Используйте принцип наименьших привилегий – ограничивайте доступ для части пользователей и регулярно обновляйте учетные записи и пароли.
Важно регулярно мониторить безопасность всех систем, сканировать уязвимости и проводить аудит конфигурации. Это поможет обнаружить потенциальные проблемы безопасности и своевременно принять меры для их решения.
Антивирусы – отсутствие или неисправная активация
Антивирус – базовое и необходимое средство защиты, его отсутствие – серьезная брешь в безопасности, которую нельзя игнорировать. Сканер по результатам работы в режиме Whitebox увидит, если нет самого антивируса или лицензионного ключа. Как ни странно, отсутствие антивируса или лицензионного ключа – достаточно частая проблема, которую мы встречаем у клиентов.
Инвентаризация и контроль ПО: Winamp, Zoom и Teamviewer
Еще одна мера для защиты от уязвимостей – контроль используемого ПО. К примеру, можно удалять лишний софт из стандартного набора, установленного на узлах – тот, который не используется, либо актуальный для отдельных узлов, но с большим количеством уязвимостей, что снижает защищенность всей сети в целом.
В рамках VM мы часто находим интересное ПО и уязвимости в нем – например, один раз обнаружили уязвимый Winamp. Недостаток в безопасности был не высокой критичности, но само наличие ненужного ПО на узлах должно заинтересовать и натолкнуть на выводы.
Также можно поискать явно неразрешенное к использованию в компании ПО. К примеру, тот же клиент Zoom в инфраструктуре государственного заказчика, скорее всего, будет запрещен. Наконец, можно встретить майнинговое ПО на АРМ-ах и серверах, различные компьютерные игры и эмуляторы консолей. На такие находки мы всегда обращаем внимание в наших VM-отчетах.
На этом моменте вспомним об ограничении рядового пользователя в локальных правах – для администрирования есть отдельная учетная запись, ее знает ИТ-отдел, простой же пользователь работает за ПК без повышенных привилегий и не занимается Shadow IT (установкой ПО и использованием решений, неподконтрольных и неизвестных корпоративному ИТ-департаменту). Хорошо, если софт был установлен через заявку в ИТ-отдел. Но если нет – видимо, разделение привилегий не применяется, и это надо исправлять.
Пример инвентаризации ПО и связанных с ним уязвимостей в нашем отчете. Как видите, про Zoom и другие сомнительны средства связи мы не шутили=)
Порт / сервис / ПО |
Уязвимости |
Могут эксплуатироваться удаленно |
Adobe Acrobat Reader DC - 19.010.20099 |
2965 |
2370 |
Microsoft Windows - Windows 10 version 22H2 Professional (x64) |
2895 |
385 |
Microsoft Office - 2016 (x64) - C:\Program Files\Microsoft Office\Office16\ |
2511 |
1230 |
Microsoft Word - 2016 (x64) - C:\Program Files\Microsoft Office\Office16\ |
1497 |
880 |
Adobe Acrobat DC - 21.007.20095 |
1332 |
594 |
Microsoft Windows - Windows 7 Professional Service Pack 1 |
953 |
174 |
Adobe Reader - 11.0.00 |
690 |
682 |
7-Zip - 16.04 |
92 |
92 |
Zoom - 5.9.3 - D:\Мои документы\AppData\Zoom\bin\ |
48 |
36 |
VLC Media Player - 2.0.3 |
42 |
40 |
Microsoft Outlook - 2016 - C:\Program Files (x86)\Microsoft Office\Office16\ |
37 |
24 |
Microsoft Skype for Business - 2013 (x64) SP1 - C:\Program Files\Microsoft Office\Office15\ |
36 |
30 |
iTunes - 12.11.3.17 |
28 |
26 |
Zoom - 5.4.6 - D:\Мои документы\AppData\Zoom\bin\ |
26 |
22 |
XnView - 2.39 |
20 |
20 |
Zoom - 5.7.7 - D:\Мои документы\AppData\Zoom\bin_00\ |
20 |
16 |
Opera Web Browser - 12.00 |
16 |
12 |
Microsoft Skype for Business - 2016 - C:\Program Files (x86)\Microsoft Office\Office16\ |
16 |
14 |
Microsoft PowerPoint - 2013 (x64) SP1 - C:\Program Files\Microsoft Office\Office15\ |
14 |
8 |
Zoom - 5.4.58864 - \ |
13 |
11 |
Zoom - 5.2.1 - D:\Мои документы\AppData\Zoom\bin\ |
13 |
11 |
Zoom - 5.3.1 - D:\Мои документы\AppData\Zoom\bin\ |
13 |
11 |
Zoom - 5.4.9 - C:\Users\*********\AppData\Roaming\Zoom\bin\ |
13 |
11 |
Zoom - 5.4.9 - D:\Мои документы\AppData\Zoom\bin\ |
13 |
11 |
Zoom - 5.4.7 - D:\Мои документы\AppData\Zoom\bin\ |
13 |
11 |
Zoom - 5.4.2 - D:\Мои документы\AppData\Zoom\bin\ |
13 |
11 |
Zoom - 5.6.0 - D:\Мои документы\AppData\Zoom\bin\ |
12 |
10 |
Microsoft Publisher - 2013 (x64) SP1 - C:\Program Files\Microsoft Office\Office15\ |
10 |
2 |
Zoom - 5.7.4 - C:\Users\********\AppData\Roaming\Zoom\bin\ |
10 |
8 |
Zoom - 5.7.7 - D:\Мои документы\AppData\Zoom\bin\ |
10 |
8 |
Zoom - 5.8.3 - D:\Мои документы\AppData\Zoom\bin\ |
10 |
8 |
Microsoft Skype for Business - 2013 SP1 - C:\Program Files\Microsoft Office\Office15\ |
10 |
8 |
Zoom - 5.8.0 - D:\Мои документы\AppData\Zoom\bin\ |
10 |
8 |
Microsoft Skype for Business - 2013 SP1 - C:\Program Files (x86)\Microsoft Office\Office15\ |
10 |
8 |
ViPNet Client - 4.3.2.37273 - C:\Program Files (x86)\InfoTeCS\ |
8 |
0 |
Zoom - 5.8.7 - D:\Мои документы\AppData\Zoom\bin\ |
8 |
6 |
Zoom - 5.9.7 - D:\Мои документы\AppData\Zoom\bin\ |
8 |
6 |
Zoom - 5.9.6 - D:\Мои документы\AppData\Zoom\bin\ |
8 |
6 |
Zoom - 5.8.6 - D:\Мои документы\AppData\Zoom\bin\ |
8 |
6 |
Zoom - 5.8.4 - D:\Мои документы\AppData\Zoom\bin\ |
8 |
6 |
Бэкдоры и WannaCry
Сканеры уязвимостей обычно работают на регулярно обновляемых базах данных, которые содержат информацию об известных уязвимостях, бэкдорах, вредоносном ПО и потенциальных угрозах. Но некоторые сканеры могут находить непосредственно следы вредоносного ПО в системе, например – WannaCry. Не саму уязвимость, CVE-2017-0143, эксплуатируемую WannaCry, а возможные следы присутствия в системе ВПО WannaCry. Такая находка – уязвимость высокого уровня критичности. Если мы видим ее в результатах, то сообщаем о ней еще до подготовки отчета.
P.S: Если вы отвечаете за ИБ и у вас были подобные или другие интересные находки – расскажите нам о них в комментариях????.
Бонус. Как повышать защиту веб-приложений без сканера веб-приложений (WAS)
Российские VM-сканеры хорошо ищут уязвимости в софте, а вот с веб-приложениями все куда хуже. Функционал сканирования веб-приложений на российском рынке сейчас находится в зачаточном состоянии, и это почти всегда отдельный продукт. Если в компании есть своя разработка приложений, то, скорее всего, в каком-то виде реализуются процессы DevSecOps, и софт исследуют на уязвимости на этапе написания кода (SAST-анализ).
Если в доступном инструментарии нет WAS (Web Application Scanner, DAST-анализ), то повысить защищенность веб-приложений и выявить проблемы можно такими способами:
Сделать выгрузку с DNS. Это позволит получить список веб-ресурсов, доступных или частично доступных из сети Интернет. Получив список имен и IP-адресов, вы можете вручную оценить состояние и актуальность приложений, если их немного. Если много – можно проверить их хотя бы на доступность IP-адреса. Но помните, если приложение размещено на вычислительных ресурсах хостинг-провайдера и вы хотите провести объемное сканирование с помощью специального инструмента – нужно связаться с его техподдержкой и уведомить о планируемом сканировании.
Обратиться к пентестерам и провести анализ защищенности веб-приложения. Уязвимости будут обнаружены и проэксплуатированы профессионалами, а вы получите отчет и рекомендации по их устранению.
Просканировать веб-сервер с приложением. Уязвимости используемого ПО никто не отменял, знание о них и устранение принесет пользу. При этом некоторые уязвимости веб-приложений могут быть связаны именно с используемой версией ПО и детектироваться обычным сканером. Также нужно своевременно обновлять ПО серверов и сами веб-приложения и их компоненты (базы данных, плагины, версии CMS и т.д.). Не забудьте уведомить хостинг провайдера перед сканированием, если приложение размещено не на ваших ресурсах.
Проверить работу логики приложения. Если у приложения логика неправильная, сканер не обнаружит уязвимость. Приведем пример – у одного из наших клиентов в публичном доступе находился внутренний трекер задач. Ужас был в том, что неавторизованному пользователю открывалась вся информация о проводимых работах. И хотя в задачах на момент проверки не содержалось сверхчувствительной информации, потенциальному злоумышленнику для начала атаки это сильно помогло бы – он смог бы персонализировать фишинговое письмо на основе данной «публичной» информации, а затем развить атаку и проникнуть в инфраструктуру.
Использовать WAF (к слову, у нас такой сервис тоже есть) как защитное средство. Это не решит всех проблем, но все же лучше, чем ничего. Тем более, если WAF правильно настроить, то он справится с рядом различных атак на веб-приложение, в том числе сложных.
Изучать рекомендации вендоров и исследователей кибербезопасности. Пример - массовый дефейс веб-серверов с запущенной CMS Bitrix в сегменте РФ летом 2023. Техническое описание атаки было опубликовано на форуме разработчиков, исследователи выложили в открытый доступ документ с рекомендациями по защите и компенсирующим мерам для данной CMS.
Для защиты на уровне веб-сервера приложения можно:
Использовать безопасные конфигурации сервера: отключите или ограничьте ненужные функции и службы. Также используйте надежные пароли и корректную аутентификацию, обязательное шифрование данных и другие меры.
Управлять сеансами и аутентификацией: правильное управление токенами и кукис-файлами обеспечивает защиту от кражи сессий. Применяйте множественные факторы аутентификации для критически важных приложений.
Фильтровать ввод данных, чтобы предотвратить возможность внедрения вредоносного кода через пользовательский ввод.
Применять механизмы защиты от атак (XSS, CSRF и др.) на уровне заголовков сервера, использования токенов и проверки происхождения запросов.
Конечно, вы можете найти opensource-инструменты для проведения DAST-исследования (например, ZAP, nuclei, arachni). Но наша практика показывает, что результаты работы таких инструментов не всегда точны – слишком много ложноположительных срабатывани. К тому же, работа с ними не всегда проста и интуитивно понятна и требует определённых навыков и экспертизы для того, чтобы правильно настроить сканирование и разобраться с результатами в отчетах.
Сколько стоит ваша коммерческая тайна?
«VM – дорого, SA (Security Awareness) – дорого, проще купить один антивирус», – постоянно слышим мы от потенциальных заказчиков. Но, как правило, стоимость ущерба в случае возникновения критического события значительно выше – и мы говорим не о штрафах регуляторов, а об ущербе от утечки коммерческой тайны, данных клиентов либо полной остановки сервисов и производства. Для ряда критически важных сервисов (например, банковских) такое неприемлемо.
Важен комплексный подход – не думайте, что вас защитит установленный антивирус или ограничение доступа к сети всем сотрудникам. Также недостаточно просто купить дешевый VM-сканер для закрытия требований регулятора и раз в полгода проводить сканирование – возможно, уже сейчас кто-то покупает базу ваших коммерческих секретов в даркнете за несколько сотен долларов или майнит криптовалюту на ваших компьютерах.
Защитить себя и свой бизнес от финансового и репутационного ущерба можно только с экспертизой, навыками, пониманием проблематики и умением работать с большим объемом информации и данных.