Почему писать скрипты для борьбы с «браузером Амиго» — зло?
Прочитав пост про удаление ненужно софта мне в который раз стало очень грустно. Автор предлагает «эффективное решение» по избавлению от всякого нежелательного софта, вроде упомянутого «амиго». И если некоторые части скрипта еще можно назвать, ну хотя бы безвредными, то удаление и запрет на запись "%username%\AppData\Local\Apps" выглядит как откровенный саботаж. Плохо еще и то, что такой или аналогичный по механике «полезный скрипт» некоторые всерьез считают действенной мерой. Это далеко не первая статья, от которой у меня сводит скулы, вижу что многие не понимают с чего вообще нужно начинать настройку безопасности в Windows-среде.
Представляю читателям мое видение списка минимально необходимых настроек и действий (в первую очередь для Windows-домена), чтобы никогда не видеть непонятных браузеров и свести риск вредоносного ПО к абсолютному минимуму. Некоторые описанные решения могут показаться спорными, и мало того, они таковыми и являются. Но заранее прошу, увидев первое предложение какого-то пункта, не спешите писать комментарий, прочитайте мысль до конца, возможно у вас отпадут вопросы.
Конечно я наверняка видел этот самый Амиго несколько раз, но исключительно на домашних машинах пользователей, а вот как выглядит вспомнить не могу.
Пункты отсортированы по степени важности и первоочередности если вы вдруг решите последовать примеру. Для вас может быть странным такой выбор последовательности, но это мое мнение, основанное на собственном опыте. Я опишу обязательную основу, без которой все остальные действия будут бесполезными. И помните, безопасность и удобство чаще всего находятся на разной чаше весов.
1) Файловая система NTFS. Вряд ли вы ожидали увидеть ее на первом месте, но это так. Почему-то этот пункт абсолютное большинство просто пропускает. Это основа безопасности Windows. Если у вас где-то в организации остались Win98, я вам искренне сочувствую. Всегда очень ответственно относитесь к настройке NTFS-прав. Например, к startup-скрипту требуется доступ по чтению только учеткам «Компьютеры домена», так и выдайте по чтению только им. Помню случай в одной конторе, когда в каталог \\domain.ru\NETLOGON у всех был доступ на запись. Кто именно принес заразу уже не выяснить, но эпидемия была эпичной.
Если на Windows 7, вы по непонятной причине используете FAT, то идите пишите скрипт удаления Амиги.
2) Отсутствие прав администратора у ВСЕХ, от слова совсем, включая генерального. В первую очередь это может быть крайне сложного реализовать именно из-за организационного противостояния, но надо уметь доказывать. Мне это удалось, на примере самых опасных вредоносов — шифровальщиков. Кому охота стать причиной массовой эпидемии зашифрованных данных и в лучшем случае спровоцировать длительный простой связанный с восстановлением данных из бекапа, а в худшем попасть на серьезные бабки и вероятность безвозвратной потери данных? Никому не охота, генеральному как раз в первую очередь, а все остальные пойдут паровозом. Кстати, ИТ-специалисты тоже, но об этом ниже.
Следующий аспект связанный с ограниченными правами — некоторый софт хочет писать не в профиль юзера, а в каталог установки. В первую очередь, решите, а нужен этот софт вообще? Если сильно нужен, например это бухгалтерия, то придется поколдовать. Любой, повторяю, любой софт можно заставить работать под юзером. Иногда достаточно просто разрешить права на какой-то ини-файл конфигурации, а иногда придется взять в руки «ProcessMonitor» и скрупулезно, по шагам выяснять, че ж очередной кривой заразе надо для нормальной работы.
Если вы первым делом после установки отключаете UAC, то пишите скрипт удаления Амиги дальше.
3) Актуальная версия Windows. Уже вполне очевидный момент. К сожалению, ХР закончилась, но все еще продолжает работать на крупной доле станций по всему миру. Я понимаю, что не все могут позволить переход на современную ОС по разным причинам — финансовым, техническим, или даже организационным. Но к этому нужно обязательно стремиться. Нужно избавляться при первой возможности. Мне в этом плане, можно сказать повезло, удалось унифицировать парк десктопов одними семерками. Под актуальной версией ОС я понимаю, в том числе, наличие последних обновлений. Это обязательное правило. Некоторые могут возразить, что обновления ломают систему. Раз в год и палка стреляет, это верно. Но что мешает обкатывать новые апдейты на 10-15% парка ПК в течении нескольких дней? Это несколько замедлит деплой обновлений, но позволит протестировать до основного вывода в продакшен.
Если вы вторым делом после установки ОС выключаете Windows Update, то не отвлекайтесь от скрипта для Амиги.
4) Постоянная поддержка софта в актуальном состоянии. Лично я слишком ленив, чтобы руками обновлять пользовательское ПО и слишком беспокоюсь о возможных проблемах, чтобы оставлять пятилетние версии продуктов. Все точно так же, как и с пунктом выше. Это может показаться сложным, но я устал уже повторять, есть бесплатное решение на базе LUP, позволяющее разворачивать любой софт средствами WSUS. Один раз разобраться и наступает счастье, ничего сложного. Есть, программы, например Unreal Commander версии 0.96, который не умел корректно писать данные о версии в реестр и по умолчанию пытался вставать в корень системного диска. Такую прогу правильно поддерживать через LUP не выйдет. Ну ничего, можно потратить чуть-чуть времени и обернуть софт в собственный инсталлятор. Кстати, с версии 2.x UC исправился, можно ставить из коробки.
Если вы разворачиваете софт при первой установке, вместе со ZVER DVD, то прошу прощения за потраченное время, Амиго ждет!
5) Политика ограниченного использования программ (SRP). Мощнейший инструмент обеспечения безопасности. Фактически, единственное средство для борьбы со всякими Мейлрушечками и прочим. Как и любой другой инструмент, требует времени на изучение и реализацию, но оно того стоит. Принцип прост — т.к. у пользователя нет админских прав он не может писать в системные директории. Далее, вы запрещаете запуск программ отовсюду, кроме %WinDir%, %ProgramFiles%, %ProgramFiles%(x86). Теперь, если юзер в сладостном предвкушении качает и пытается запустить очередной оптимизатор реестра, его ждет болт. SRP регистрирует попытки несанкционированного запуска в evenlog, что может помочь для отладки ошибок запуска некоторого ПО. А самая мякотка не в этом. SRP — это инструмент, способный противостоять неизвестным вирусам, или тем, которые пропустит антивирус. «Письмо из налоговой» не зашифрует все базы 1с к чертовой матери, юзер просто не сможет запустить вложение «Накладная №1231233 от 26.10.2015.doc.exe». Кстати, я в курсе про Applocker, но он физически отсутствует в ХР, а функционал почти идентичен. Сейчас у нас нет машин ниже 7ки, но исторически существует SRP и что-то переписывать смысла не вижу.
Если для вас это слишком сложно, то допишите в скрипт удаление «Спутник.Мейлру»
6) Антивирус. Вот так скромненько, в середине списка. Я давно не считаю АВ-средства панацеей от всех бед. Но и не отношусь к радикально настроенным АВ-хейтерам «работаю без антивируса 5 лет, все супер». Звучит как «никогда не пользовался презервативом, все супер!» А я бы на их месте сходил в кожвен, ну и за одним с ЛайвСД камп проверил. Антивирус должен быть и работать. Актуальный, с обновляющимися базами, централизованной админкой и отчетами. Последнее полезно, в плане выявления злостных юзеров, постоянно приносящих вирусы на флешке и посещающих подозрительные сайты. Сделать таким а-та-та.
Если для вас «антиврус зло и замедляет компьютер», то… отложите скрипт для Амиги. Сходите к венерологу.
7) Про админские права Админа. Если вы залочили все до такой степени, что без вашего ведома юзер и пер чихнуть не может, пора найти бревно в своем глазу. В какой-то момент я понял, что являюсь, по сути главной дырой безопасности. Да, я вполне компетентен, чтобы не ползать куда попало и не запускать что попало, но про «палку и раз в год» уже писал выше. Принял решение работать под юзером и обнаружил, что права админа лично на мой комп нужны редко, а для входа на компы пользователей просто запускаю тот же Unreal Commander под отдельной учеткой. Кстати. Заведите отдельную группу «Локальные Админы» и включите в группу «Администраторы» на клиентских машинах. Не надо к юзерам ходить под тем же админом домена. Для админки серверов используется терминальный доступ. Если это КД — то вход осуществляю под Админом Домена. Если это какой-то сервер 1с, то просто под амдином того сервера. Пароли должны быть везде разные и пусть их запоминанием занимается какой-нибудь хранитель задниц KeepAss KeePass
Если регулярная необходимость ввода пароля доставляет вам дичайшие неудобства, то тут очередная петросянка про Амигу.
8) Работа с пользователями. Тоже важный аспект. Стоит провести профилактическую беседу, почему, например, вводить учетные данные для прокси не надо, если окно ввода пароля появилось неожиданно и вы браузер не запускали. С учетом принятых выше мер компьютер это вряд ли заразит компьютер, но действия подозрительны и потенциально могут привести к утечке данных.
Сюда же, в пункт про юзеров добавлю спорный момент о «политике паролей». У нас есть требования о длине и сложности пароля, но я не требую обязательной регулярной смены. Абсолютное большинство не имеет доступа из вне, а оставшиеся 2,5 юзера сидят через OpenVPN, и если уж у них «ушел» пароль, то он явно был не сбручен или перехвачен средствами MITM. В итоге, сложный, постоянно меняющийся пароль никак не поможет, если он перехватывается с домашнего компа через кейлоггер. С другой стороны, все остальные будут жутко мучиться каждый раз придумывая сложный пароль и чтобы не забыть, лепить его на стикере к монитору. За это можно бить, лишать премии и еще всячески измываться над пользователями, но в действительности это чаще всего не повышает безопасность. Нужно просто довести до юзера «никому не сообщайте свой пароль», ну и чтобы пароль не бы вида «1234567». Повторяю, момент очень спорный, но в моем случае доступа снаружи, кроме как через РДП в ОпенВПН, нет.
Еще я никогда не понимал часто встречающееся мнение «Админов» — «ну юзеры тупыыыыыые». Да, бывают недалекие, бывают откровенно тупые, но таким ничего не поможет. Они тупые по жизни. Такие бегают через дорогу на красный и если огородить их от тяжких телесных невозможно, то от опасных действий за компьютером очень даже реально. Любите юзеров, они же как дети, несмышленые просто ;)
Все, мне надоела Амига.
9) Служебные учетные записи. Я стараюсь на каждую нестандартную службу делать свою ограниченную учетку. К примеру, серверу приложений 1с нафиг не нужны админские права где-бы то ни было. Генерим новую учетку, сохраняем в KeePass, вводим в 1с. Забываем эту учетку, до поры. Это относится к подавляющему большинству сервисов и служб. Иногда требуется чуть расширить права, но в любом случае это будет ограниченная учетная запись.
10) Резервное копирование. Плавно подходим к прочим вещам, обеспечивающим безопасность данных. Указанные далее пункты уже не относятся исключительно к Windows-домену, но так же должны быть грамотно настроены. Если, не смотря на все усилия все пропало, или юзер сам себе злобный буратино, грохнул квартальный отчет, то ваша любимая система резервного копирования поможет все вернуть. Не важно чем вы пользуйтесь, важно, что бекапы есть и целостные, проверяйте это периодически в холостую. Кстати, бекапилке, чаще всего нужны права read only на защищаемых машинах, так что вспомните пункт выше. Сделайте ограниченную учетку, под которой сервис будет ходить по тачкам и забирать данные. Потом пробегитесь по этим тачкам и выдайте учетке резервного копирования права на чтение.
11) Централизованный мониторинг. В отличие от пункта выше — полноценный элемент безопасности. Вы обязаны четко представлять что у вас происходит в конкретный момент времени. Так же обязательно настройте аудит файловых серверов, поможет при разборе полетов.
12) Правильная защита периметра. Шлюз, в котором вы хорошо разбираетесь, все внешние сервисы в DMZ. Не забывайте про WiFi. У нас он тоже в DMZ, необходимости доступа внутрь периметра нет. Кстати, лучше, если в роли шлюза будет выступать не какой-нибудь TI или UG.
13) К следующему косвенному пункту я бы отнес использование «облачных сервисов». Тоже очень спорный момент, но попытаюсь объяснить почему я его решил упомянуть. К примеру, мы используем ПДД от Яндекса и нас это полностью устраивает. Собственный почтарь внутри или на хостинге был бы на порядок более гибкий, но моем случае необходимости в этом нет. И лишний собственный сервис мне ни к чему. К тому же, несмотря на опыт поддержки почтарей, я трезво считаю, что почта от того же Яндекса более надежна и лучше защищена от вирусов и спама, чем бы я сам смог настроить. Кстати, ДНС у нас тоже от Яндекса. Тот который «Безопасный» и ограждает от вредоносных сайтов, по позволяет заходить на redtube.
14) Удаленный доступ. Старайтесь, по возможности, оборачивать доступ снаружи в VPN. Да, это менее удобно, но намного более безопасно, чем RDP голым задом на мороз.
Вот в принципе и все. Это далеко не полный список, продолжать его можно бесконечно. Из основных моментов я бы еще добавил EMET (используем) и 802.1х для доступа к сети (не используем). Наверняка, я что-то забыл упомянуть из таких же «фундаментальных» вещей, пишите в комментариях.