В умной книжке Норкатта (Защита сетевого периметра) говорилось приблизительно так: "50% проблем с безопасностью лежат в области человеческой психологии". Иногда мне кажется, что все 99%.
Вот например пресловутый Win32.Kido.* aka Conficker. Ведь потрясающий вирус! IT-безопасностью я занимаюсь уже года четыре, а программированием уже более 11 лет, но не помню современных вирусов с такими же свойствами. (меня поправить! ;)) Вдумайтесь, один вирус использует такие косяки, как:
- слабые пароли пользовательских учетных записей;
- непатченность систем;
- autorun, который Microsoft закрыла лишь совсем недавно.
Все эти три проблемы лежат скорее в области психологии, чем технологии. У Conficker'а много "замечательных" свойств, которые здорово усложныют борьбу с ним, и я уверен что автор вируса -- очень хороший программист. И я также уверен, что он неплохо знает психологию :).
Или другой пример -- о самоподписанных SSL-сертификатах. Недавно в одном блоге увидел заметку, в которой утверждалось, что ненадежность самоподписанных сертификатов -- всего лишь "предрассудок", и
зачем вообще нужен сертификат SSL? Для того, чтобы зашифровать HTTP-соединение между браузером и сайтом, по которому будет передаваться пароль и какие-то другие конфиденциальные данные. Что изменится, если сертификат не подписан доверенным центром сертификации? Ничего! Соединение все равно будет зашифрованно точно также
Интересное мнение, не так ли? И не лишенное определенной логики. Но вот я например, если условный сайт веб-денег mylmoney.com выдаст мне MylMoney.com run as (unknown), Verified by MylMoney.com, не стану хранить на нем деньги. Потому что однажды, я могу по-привычке кликнуть на "принять запрос сайта my1money.com, который подписан My1Money.com". Куда потом уйдут мои деньги -- одним гремлинам известно. Человек -- не точная машина, и мы можем в спешке, в суете, из-за усталости, да и просто по невнимательности щелкнуть по надоедливому окошку "принять сертификат". Ведь на первый взгляд mylmoney.com == my1money.com, не так ли? Единственное место, где, ИМХО, стоит применять самоподписанные сертификаты -- это тестовый стенд. Впрочем, я могу и ошибаться. Желающие подискутировать -- прошу в комменты.
Ну и последнее. На этой неделе Adobe наконец выпустил заплатку закрывающую уязвимость в JBIGPicture. На мой взгляд, появление публичной инфы об уязвимости на блоге VRT сразу после обнаружения не сильно ускорило процесс написания заплаток, а только создало больше проблем сисадминам и инженерам по безопасности. Все-таки наверное политика Full-Disclosure не всегда себя оправдывает. Хотя кто знает, сколько бы прошло времени, пока Adobe пофиксила бы уязвимость, если бы не появились эксплоиты in-the-wild. Правда я сомневаюсь, что больше месяца. Выиграло ли сообщество от того, что патч появился на неделю раньше, а эксплоиты -- на три недели? Думаю, что нет.
P.S.: Пресловутый Conficker к счастью не затронул ни один компьютер в моих конторах. Но вот знакомые и коллеги пару-тройку раз звали помогать справиться с ним. ;) Небольшая инструкция по борьбе с этим зверем, которую в последние разы я им просто отсылал, прилагается ниже.
- Ищем с помощью утилиты http://www.securitylab.ru/news/368759.php все непатченные машины. (огромное спасибо Сергею Гордейчику и Positive Technologies!)
- Отключаем ВСЕ машины от сети.
- Отключаем на ВСЕХ машинах автоматическое восстановление.
- Патчим ВСЕ непатченный машины патчами MS08-065, MS08-067 и MS09-001. (непатченные... патчами, простите за "масло масленное" ;))
- Отключаем автозапуск на всех машинах. (а еще лучше, ставим последнее обновление Microsoft, которое отключает AutoRun, см. http://support.microsoft.com/kb/967715).
- Запускаем KidoKiller + CureIT! последовательно (желательно запускать их с компакт-диска или защищенной от записи флэшки).
- Ставим последний антивирус (AVZ, DrWeb, F-Secure, Касперский), без перезагрузки проверяем.
- Ищем autorun.inf на всех расшаренных/доменных ресурсах, удаляем + ищем в каждом расшаренном/доменном ресурсе в папке Recycle.bin, Recycle, Recycled/S-многоцифр/файл(ы).vmx и удаляем их.
- Ставим везде длинные пароли, особенно для админа, удаляем гостевые аккаунты; это необходимо, т.к. Conficker брутфорсит компы и пытается запуститься удаленно через RPC даже при установленных патчах.
- Ставим WireShark на чистую машину. Включаем на прослушку сети. Начинаем включать по 10-20 машин в час, симптомы присутствия червя -- NB запросы NB NAME WWW.GETIP или NB NAME (бессмысленный набор заглавных букв).(две буквы) и/или множество запросов ARP с адресами из текущей подсети, которые исходят с одной машины. Если появились, значит машину недолечили; отключаем от сети, проверяем с 0-го пункта.
Инструкция выложена только для того, чтобы теперь я мог просто давать ссылку, а не искать файл с ней. ;)
P.S.S.: Кстати говоря, думаю на выпуск "ультимативного патча от MS, который, наконец, полностью отключает автозапуск" именно сейчас, а не полгода, год или 5 лет назад именно Conficker оказал непосредственное влияние. Хоть какая-то польза, но суммарный вред причиненный им она вряд ли компенсирует.
Да уж, с аутораном уж до смешного дошло.
ОтветитьУдалитьКстати, по поводу SSL там вообще занимательный тред получился =)
Ага. Давно не читал такого замечательного холивара. ;)
ОтветитьУдалить