Перевод статьи от Microsoft, расположенной по адресу http://technet.microsoft.com/en-us/library/hh278941.aspx
Десять непреложных законов безопасности (версия 2.0)
Здесь, в центре реагирования по безопасности Microsoft, мы ежегодно исследуем тысячи отчетов о безопасности. В некоторых случаях мы видим, что отчет на самом деле описывает уязвимости в части безопасности одного из наших продуктов и тогда мы выпускаем соответствующее исправление так быстро, как только можем. Случается, что нам сообщают о проблемах, которые стали результатом ошибки в использовании продуктов или наше исследование показывает проблемы с продуктом, которые причиняют дискомфорт пользователям, однако не являются уязвимостями. Но большая часть находится где-то в промежутке. Это действительно проблемы безопасности, но это не следствие несовершенства продуктоа. За многие годы мы разрботали ряд тезисов, которые мы называем 10 непреложными законами безопасности.
Не стоит, затаив дыхание, ждать обновлений, которые защитят вас в вопросах, обсуждаемых здесь. Ни Microsoft, ни любой другой поставщих программного обеспечения не в силах “исправить” их, потому что они являются следствием работы с компьютером. Но и унывать не стоит. Озвучить их – значит сделать шаг навстречу к защите себя от этих ошибок, и если вы помните про них, вы можете значительно повысить безопасность вашего компьютера, находится ли он на вашем столе, лежит в кармане или существует в виртуальном облаке. (К слову, мы будем использовать термин “компьютер” для обозначения всех этих объектов).
10 непреложных законов
Закон № 1: Если злоумышленник убедил вас запустит свою программу на вашем компьютере – это теперь не только ваш компьютер.
Закон № 2: Если злоумышленник может внести изменения в операционную систему на компьютере – это уже не ваш компьютер.
Закон № 3: Если злоумышленник имеет неограниченный физический доступ к компьютеру – это уже не ваш компьютер.
Закон № 4: Если вы позволили злоумышленнику разместить активное содержимое на вашем сайте – это теперь не ваш сайт.
Закон № 5: Простые пароли – серьезная угроза безопасности.
Закон № 6: Компьютер безопасен настолько, насколько администратор заслуживает доверия.
Закон № 7: Зашифрованные данные защищены настолько, насколько защищен ключ расшифровки.
Закон № 8: Устаревший антивирус лишь незначительно лучше, чем его отсутствие вообще.
Закон № 9: Абсолютная анонимность на практике недостижима ни онлайн, ни оффлайн.
Закон № 10: Технология не является панацеей.
Закон № 1: Если злоумышленник убедил вас запустит свою программу на вашем компьютере – это теперь не только ваш компьютер.
Это печальный факт информатики: когда компьютерная программа запущена, она будет делать то, что в ней запрограммировано делать, даже если она запрограммирована быть вредной. Когда вы решаете запустить программу, вы предоставляете определенный доступ к вашему компьютеру – обычно что-то, что можете сами сделать (а иногда даже больше). Это может быть слежение за нажатиями клавиш и отправка их преступникам, которых охотятся за информацие. Это может быть открытие каждого документа на компьютере, а также замена везде слова “будет” на “не будет”. Это может быть отправка гадостей всем друзьям. Это может быть установка вируса. Это может быть создание “черного хода”, который позволит кому-то удаленно управлять компьютером. Это может быть посредничество атаки злоумышленника на чей-то компьютер. Или просто форматирвоание вашего жесткого диска.
Вот почему так важно никогда не запускать программы из ненадежных источников, а также ограничить возможность других принимать такое решение за вас на вашем компьютере. Вот хорошая аалогия между запуском программы и поеданием бутерброда. Если незнакомец подойдет к вам и даст вам бутерброд, вы его съедите? Наверное, нет. А что, если ваш лучший друг дал вам бутерброд? Может да, а может и нет, вы не знаете – это зависит от того, она сделал он его сам или нашел его лежащим на улице. Представьте программу таким бутербродом и, скорее всего, будете в безопасности.
Закон № 2: Если злоумышленник может внести изменения в операционную систему на компьютере – это уже не ваш компьютер.
В конце концов, операционная система – это просто набор нулей и единиц, интерпретация которых процессором заставляет делать компьютер определенные вещи. Поменяйте единицы и нули, и он станет делать что-то другое. Где хранятся нули и единицы? На компьютере, там же где и все остальное. Это ведь просто файлы и если другие люди, пользующиеся вашим компьютером, могут из изменить, это конец.
Чтобы понять почему, учтите, что файлы операционной системы входят в число наиболее доверенных на компьютере и работают обычно с системным уровнем доступа. То есть могут делать все, что угодно. Если злоумышленник может из изменить, небезопасные файлы будут исполнять все его приказы и возможности его станут безграничны. Он сможет украсть ваши пароли, сделаться администратором на компьютере или добавить соврешенно новые возможности в операционную систему. Для защиты от подобных атак убедитесь, что системные файлы (и реестр, раз уж на то пошло) хорошо защищены. В современных операционных системах, настройки по умолчанию чаще всего запрещают вносить подобные изменения кому-либо, кроме администраторов. Лучшим способом защиты операционной системы является предотвращение получение административных прав мошенническими программами. Лучше всего это достигается работой с компьютером без административных прав, за исключением случаев, когда для выполнения конкретных задач это абсолютно необходимо и выходом из привелегированного режима, как только задача выполнена. Домашним пользователям стоит озадачиться созданием “повседневной” учетной записи со стандартыми правами пользователя. В тех сравнительно редких случаях, когда вам требуется внести действительно большие изменения, вы сможете вручную войти в учетную запись администратора, сделать все что необходимо и вернуться к безопасной учетной записи, как только закончите.
Закон № 3: Если злоумышленник имеет неограниченный физический доступ к компьютеру – это уже не ваш компьютер.
Чего только не сделает злоумышленник, если сможет добраться до вашего компьютера! Вот список, начиная с каменного века и заканчивая космической эрой:
- Он может устроить низкотехнологичную DOS-атаку и разбить компьютер кувалдой.
- Он может отключить ваш компьютер, вынести его из вашего здания и удерживать его с целью выкупа.
- Он может загрузить компьютер со сменного носителя и отформатировать ваш жесткий диск. Вы скажете – я настроил в BIOS запрос пароля на включение питания. Это не проблема – если он сможет открыть корпус и получить физический доступ к аппаратной части системы, он сможет просто заменить чип BIOS (хотя есть куда более простые способы).
- Он сможет снять ваш жесткий диск, подключить его к своему компьютеру и прочитать любые незашифрованные данные.
- Он может скопировать ваш жесткий диск и унести в свое логово. Таким образом, у него будет все время мира для взлома, например для перебора паролей или ключей шифрования. Программы для автоматизации этих действий существуют и, учитывая что времени будет предостаточно, шансы на успех весьма велики. Как только это произойдет, начинают действовать 1 и 2 законы, которые были рассмотрены выше.
- Он может добавить устройство записи или передатчик к вашей клавиатуре, чтобы видеть все, что вы печатаете, включая пароли.
Всегда нужно быть уверенным, что компьютер физически защищен в соответствии с его ценностью и помните, что ценность компьютера определяется не только стоимостью оборудования, но и значимостью данных на нем и возможностями доступа к сети, которые может получить злоумышленник. Как минимум, критически важные для бизнеса компьютеры, такие как контроллеры домена, серверы баз данных и файловые сервера всегда должны находиться в запертом помещении, доступ к которому имею только сотрудники призванные администрировать или обслуживать. Но стоит рассмотреть также защиту других компьютеров, в том числе, возможно, с использованием дополнительных мер обеспечения неприкосновенности.
Если вы путешествуете с ноутбуком или другим мобильным компьютером, защита его жизненно необходима. Все те достоинства, благодаря которым с ними так удобно путешествовать – небольшой размер, малый вес и прочее – также способствуют их краже. Есть целый ряд замков и сигнализаций для ноутбуков, некоторые модели позволяют изъять жесткий диск и носить его с собой и почти все позволяют использовать крайне портативные носители информации, такие как USB-Flash, для хранения данных в путешествии. Вы также можете использовать такие возможности, как шифрование дисков, доступные в большинстве современных операционных систем для минимизации ущерба в случае ущерба или сохранения уверенности в случае неожиданной утраты при досмотре сумок или при нелегальном пересечении границы. Но единственный способ удостовериться в неприкосновенности ваших данных и оборудования – это все путешествие не выпускать из из поля зрения всю дорогу.
Закон № 4: Если вы позволили злоумышленнику разместить активное содержимое на вашем сайте – это теперь не ваш сайт.
В законе №1 злоумышленник убедил загрузить и запустить вредоносную программу, что дало ему контроль над вашими данными и компьютером (как минимум такой же, какой есть у вас). А как насчет обратной ситуации: он может загрузить активный контент – программы, скрипты или даже документы и фотографии, направленные на взлом компьютеров людей определенным образом – и они обслуживаются вашим сайтом или онлайн-приложением? Ваш сайт становится точкой перехвата данных посетителей сайта или наносит вред их компьютерам, или углубляется в системы, обслуживающие ваш сайт.
Если вы запустили веб-сайт или хостинг для приложений, необходимо ввести ограничения на действия посетителей. Некоторые сайте предлагают открытый форум для людей, которые могут загружать и распространять программное обеспечение, код или конфигурации – и это хорошо до тех пор, пока пользователи помнят про закон №1 и риски, связанные с загрузкой таких данных. Но если злоумышленник загрузил программы, которые смогли запуститься на вашем сервере или браузере посетителей, у него фактически есть свой сайт и он может выдавать себя за вас. Хуже того, злоумышленник может получить ваши права доступа в родительскую систему и расширить свои права на управление серверами, системами хранения данных и вообще всей сетью. Если ваш сайт находится в общей инфраструктуре или в облаке, это может поставить в опасность другие сайты и данные и, возможно, создаст интересные обязательства для вас и других лиц.
Правильно администрируемые сайты или облака принимают во внимание многие из этих рисков и запрещают загружать скрипты или программы, которые могут повлиять на другие аккаунты посредством использования общих ресурсов. Точно так же, вы должны разрешить для запуска на вашем сайте только те программы или части приложений, которые написали вы сами или доверенный разработчик и для которых вы уверены, что их работа или обслуживание не нарушает политик безопасности узла.
Закон № 5: Простые пароли – серьезная угроза безопасности.
Процесс входа в систему ставит своей целью определение того, кто вы есть. Как только операционная система узнает кто вы, она может соответственно разрешить или запретить запросы к системным ресурсам. Если злоумышленник узнает ваш пароль, он сможет войти в систему так же, как и вы. Во всяком случае, операционная система будет считать, что это вы. Он сможет сделать в системе то же, что и вы, потому что он и будет вами. Возможно, он захочет прочитать конфиденциальную информацию, которая хранится на вашем компьютере, такую как электронная почта. Возможно, у вас больше прав в сети, чем у него есть и вы позволите ему делать то, чего раньше он делать не мог. Или он просто хочет сделать что-нибудь нехорошее и обвинить в этом вас. В любом случае, защищать ваши учетные данные имеет смысл.
Всегда используйте пароль на компьютере – это удивительно, как часто используются пустые пароли. И придумайте его посложнее. Не стоит использовать кличку вашей собаки, вашу юбилейную дату, название местной футбольной команды или QWERTY/12345/другие основные последовательности на клавиатуре – и следует избегать одиночных “словарных слов” (то есть тех, которые возможно найти в словаре). И ни в коем случае не используйте слово “пароль”! Создавайте пароли, содержащие прописные и строчные буквы, цифры, знаки препинания и тому подобные. Делайте их максимально длнинными; имеет смысл использовать комбинации из нескольких слов. (Если вы говорите на нескольких языках, можете их смешивать для дополнительного усложнения). И меняйте их почаще.
Как только вы придумали сложный пароль, обращайтесь с ним соответственно. Не записывайте его. Если уж приспичило записать, то хотя бы храните его в сейфе, запертом ящике или в глубине вашего бумажника – первое что сделает злоумышленник, который охотится за паролями, так это проверит желтый стикер на экране или заглянет в верхний ящик стола. Никому не сообщайте ваш пароль и не спрашивайте его у других. Менеджерам, детям и даже IT-службе ваш пароль понадобится очень не часто, если понадобится вообще. Современные операционные системы и программы позволяют просматривать и использовать ваши файлы без запроса вашего пароля, чтобы никто не мог выдать себя за вас. Помните, что Бен Франклин сказал: два человека могут хранить тайну только тогда, когда один из них мертв.
Если у вас есть учетные записи на нескольких компьютерах и онлайн-сервисах, вам необходим баланс между уникальностью и сложностью паролей, все же количество паролей, которые вы способны запомнить, ограничено. Для аккаунтов, которые дают доступ к наиболее важной информации – финансовой отчетности, персональным данным, важной работе, основным почтовым ящикам – используйте уникальные пароли для каждого и следуйте их политике управления доступом. Если вы крутитесь в нескольких учетных записях, которые содержать мало персональной информации и не имеют особой ценности, такие как бесплатные регистрации на новостных сайтах, рассмотрите вопрос о разработке одного относительно сложного пароля для использования его во всех или почти во всех подобных случаях.
Наконец, рассмотрим что-нибудь посерьезнее, в помощь к паролям для идентификации себя в системе. Например, Windows поддерживает использование смарт-карт, что сильно улучшает проверку, которую может выполнить система. Вы также можете использовать биометрические продукты, такие как сканеры отпечатков пальцев или сетчатки. Двухфакторная аутентификация такого рода включает в себя не только то, что вы знаете (пароль), но и что-то, что вы имеете (карта) или вообще, что это вы (человек с вашим уникальным отпечатком пальца или сетчаткой) – значительно увеличивает точность аутентификации.
Закон № 6: Компьютер безопасен настолько, насколько администратор заслуживает доверия.
Каждый компьютер должен иметь своего администратора: кого-то, кто может установить программу, настроить операционную систему, добавлять и управлять учетными записями, выставлять политики безопасности и заниматься прочими задачами, связанными с запуском и эксплуатацией компьютера. По определению, для этих задач требуется лицо, которое будет контролировать компьютер. Это дает администратору максимальные возможности. Ненадежный администратор может свести на нет все остальные принятые меры безопасности. Он может поменять разрешения на компьютере, установить вредоносное ПО, добавить фиктивных пользователей и еще миллион других вещей. Он может нарушить работу практически любой защитной меры в операционной системе, поскольку контролирует ее. Хуже того, он может замести следы. Если у вас есть ненадежный администратор, у вас вообще нет безопасности.
При приеме на работу системного администратора выясните, можно ли доверить ему это место, и берите на работу лишь тех, которые смогут оправдать оказанное доверие. Запросите записи с его предыдущего места работы, особенно в отношении инцидентов безопасности. Если это подходит вашей организации, вы можете также рассмотреть вопрос действиях, которые предпринимают банки и прочие компании, которые заботятся о своей безопасности и требую полную фоновую проверку администраторов как при приеме на работу, так и через определенные промежутки времени в последствии. Какие бы вы критерии не выбрали, применяйте их повсеместно. Не давайте прав администратора вашей сети никому до завершения проверки, в том числе временным работникам и подрядчикам.
Далее, принимайте меры, чтобы честные люди честными и остались. Используйте журналы входа/выхода для отслеживания кто и когда был в серверной комнате. (У вас же есть запертая серверная? Если нет, перечитайте закон №3). Пользуйтесь правилом “двух человек” при установке или обновлении программного обеспечения. Разнообразьте задачи управления насколько сможете, чтобы минимизировать возможности администраторов. Кроме того, не следует использовать одну учетную запись администратора – вместо этого дайте каждому свою учетную запись с правами администратора, тогда вы сможете сказать кто что делает. Многие отрасли требуют ведения журналов с аудитом любой активности, связанной с бизнес-системами; аудит сам по себе не сможет уберечь от нежелательных действий, но впоследствии записи смогут прояснить кто стал причиной проблемы и обеспечить чувство личной ответственности. Наконец, это значительно усложняет заметание следов недовольными администраторами. Например, храните данные аудита на носителях “только для записи” или храните журналы для системы А в системе Б и убедитесь, что их администрируют разные люди. Чем больше отчетности у администраторов, тем меньше вероятность возникновения проблем.
Закон № 7: Зашифрованные данные защищены настолько, насколько защищен ключ расшифровки.
Предположим, вы установили самый большой, крепкий и надежный замок в мире на входную дверь, но ключ от него храните под ковриком перед этой дверью. В таком случае, соврешенно неважно насколько надежен ваш замок, не так ли? Критическим фактором является слабая защита ключа, потому что грабителю потребуется только его найти, чтобы вскрыть замок. Алгоритмы шифрования работают аналогичным образом – каким бы сложным не был алгоритм шифрования, данные в такой же безопасности, в какой находится ключ для их расшифровки.
Многие операционные системы и криптографические программы предоставляют возможность хранить ключи шифрования на компьютере. Преимуществом является удобство – вам не нужно каждый раз возиться с ключом – но сделано это в за счет безопасности. Проще говоря, вне зависимости от того, насколько хорошо ключи скрыты от системы, программное обеспечение должно быть в состоянии их найти – и если может, это означает, что их найдет и достаточно мотивированный злоумышленник.
Наилучшим решением будет хранить их в защищенном хранилище. Например, Trusted Platform Module (TPM) – это чип, который есть на большинстве компьютеров и предназначен для надежного хранения криптографических ключей, выдавая их только после ввода правильного PIN-кода. Смарт-карты предлагают аналогичную защиту, а их мобильность означает, что их можно физически отделить от компьютера. Но самое лучшее “защищенное хранилище” – это ваш мозг, если ключом является слово или фраза, просто запомните их.
Закон № 8: Устаревший антивирус лишь незначительно лучше, чем его отсутствие вообще.
Антивирусы работают путем сравнения данных на компьютере с коллекцией сигнатур вредоносных программ. Каждая сигнатура характерна для своей группы вредоносного ПО и, когда сканер обнаруживает данные в файле, электронной почте или где-нибудь еще, которые соответствует такой сигнатуре, он делает вывод, что выявил проблему. Очень важно держать антивирусные базы в актуальном состоянии, поскольку новые вредоносные программы создаются ежедневно.
Практически каждый производитель антивирусов позволяет бесплатно получить свежие обновления со своего сайта или через отдельную службу обновлений. На самом деле, многие из них имеют службы оповещения о выпуске новых сигнатур – до нескольких раз в день, если потребуется. Пользуйтесь подобными сервисами. Кроме того, всегда имейте последнюю версию антивирусного сканера. Разработчики вредоносного ПО регулярно придумывают новые методы и вариации, которые требуют изменений в работе антивирусного сканера.
Закон № 9: Абсолютная анонимность на практике недостижима ни онлайн, ни оффлайн.
Любое взаимодействие людей включает в себя обмен некими данными. Если кто-то предоставил достаточно информации, его возможно идентифицировать. Подумайте о том, сколько информации о вас можно получить всего лишь за несколько минут общения с вами: с первого взгляда можно оценить ваш рост, вес и приблизительный возраст. Ваш акцент расскажет из какой страны вы приехали, а может быть даже и регион этой страны. Если вы говорите о чем-то, кроме погоды, вы, скорее всего, расскажете что-то о вашей семье, интересах и чем занимаетесь по жизни. Собрать достаточно информации и выяснить кто вы есть, не займет много времени. Если вы пользуетесь какой-либо платежной системой, не считая наличных расчетов, или пользуететсь любым транспортом, кроме ваших ног, вы оставляете след “хлебных крошек”, который можно использовать для установления вашей личности с поразительной точностью. Если вам нужна абсолютная анонимность, вам следует жить в пещере и избегать любых контактов с людьми.
То же самое относится и к интернету. Если вы посетили веб-сайт, его владелец может узнать кто вы при достаточной мотивации. В конце концов, единицы и нули, которые представляют собой веб-сессию, должны быть в состоянии найти нужное место, и этим местом является ваш компьютер. Есть много способов замаскировать биты, чем большим количеством вы будете пользоваться, тем сильнее вы будете спрятаны. Например, вы можетет воспользоваться трансляцией адресов (NAT), чтобы скрыть свой настоящий IP-адрес, применять анонимайзеры, которые обеспечат передачу данных с одного конца сети на другой, использовать разных провайдеров для различных целей, посещать определенные сайты только из публичных мест и так далее. Все это затрудняет вашу идентификацию, но не делает ее невозможной. Знаете ли вы наверняка кто предлагает услуги анонимайзера? Может это тот же человек, который владеет сайтами, на которых вы только что были! Или насколько безопасен сайт, на котором вы были вчера, тот что предлагал бесплатно выслать вам на почту купон на $10? Быть может, владелец готов поделиться этой информацией с владельцем другого сайта. Если так, то владелец другого сайта может быть в состоянии соотнести информацию с обоих сайтов и узнать кто вы. Анонимность еще менее достижима, если учесть, что данные о вашем местоположении постоянно собираются вашим сотовым и часто на веб-сайтах; привязка вашего IP-адреса к реальному географическому положению может давать довольно высокую точность.
Означает ли это, что об анонимности можно забыть? Вовсе нет. Правительство вместе с другими государственными и частными компаниями продолжают искать баланс между приватностью данных и другими проблемами. Это означает, что лучший способ защитить вашу личную жизнь в интернете, такой же как и в обычной жизни – это ваше поведение. Читайте соглашения о конфиденциальности на посещаемых сайтах и работайте только с теми, чья политика предоставления данных вас устраивает и с которой вы согласны. Если сайты, которые вы посещаете, позволяют определить с кем какой информацией делиться, узнайте как настраиваются эти параметры и регулярно их проверяйте. Если вы беспокоитесь по поводу Cookies, отключите их. Самое главное, помнить, что информация, которой вы обмениваетесь или которая есть в интернете, безопасна настолько, насколько безопасна политика приватности, с которой она взаимодействует. Но если вы все еще хотите полной анонимности, есть смысл начать подыскивать себе пещеру.
Закон № 10: Технология не является панацеей.
Технология может делать удивительные вещи. В последнее время наблюдается развитие все более дешевого и мощного оборудования и программ, которые используют оборудование для открытия новых горизонтов для пользователей компьютеров, развиваются услуги, которые изменяют наши ожидания от железа и ПО, также как и достижения криптографии и других наук. Очень заманчиво думать, что технология сможет избавить нас от любых рисков, если мы будем достаточно хорошо работать. Тем не менее, это просто нереально.
Идеальная безопасность требует совершенства, которого просто не существует, да и врядли когда-нибудь будет. Это справедливо не только в отношении программного обеспечения, но и в любой области человеческих интересов. Разработка программ не является совершенной наукой, поэтому все программы содержать ошибки. И некоторые из них могут быть использованы для нарушения безопасности. Это просто факт жизни. Но даже если программы станут совершенными, это не решит всех проблем. Большинство нападений включает в себя, в той или иной степени, манипулирование человеком, этот процесс носит название социальной инженерии. При удорожании нападения на технологии, злоумышленники переключают свое внимание от технологий на человека, который сидит за консолью. Очень важно, чтобы вы понимали свою роль в поддержании безопасности, иначе вы можете стать слабым местом в броне собственных защитных систем.
Решение состоит из двух основных пунктов. Во-первых, безопасность включает в себя как технологии, так и политики, то есть сочетание технологий и их использования, в конечном счете и определяет степень безопасности системы. Во-вторых, безопасность это процесс, а не конечный результат – это не проблема, которую можно “решить” раз и навсегда, но это постоянные шаги и контрмеры по обе стороны баррикад. Существуют ресурсы, которые могут вам помочь. Например, сайт TechNet содержит сотни официальных документов, руководств, контрольных списков и инструментов, и мы постоянно развиваемся. Объединяйте технологии со здравым смыслом, чтобы добиться наибольшей эффективности в вопросах безопасности.