Кибергейт: Как выжить в мире умных вещей — страница 9 из 59

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

Совсем другое дело – люди. Их отличают творческая одаренность и интеллект, способность менять тактику, изобретать новые устройства и постоянно адаптироваться к ситуации. Злоумышленники изучают системы в поисках способа «взлома класса». И когда попытки одного венчаются успехом, все остальные начинают применять обнаруженный способ снова и снова до тех пор, пока уязвимость не устраняется. Меры защиты сетей, эффективные сегодня, завтра могут и не сработать, потому что взломщики найдут способ их обойти.

Все это означает только одно – объем знаний растет как снежный ком. Недавно секретные методы ведения войны уже рассматриваются в диссертациях и становятся инструментом хакера. Вот, к примеру, метод дифференциального криптоанализа. Он был разработан АНБ еще до того, как в 1970-е гг. его открыли математики корпорации IBM, создававшие DES{118}. АНБ засекретило{119} открытие, но в конце 1980-х гг. метод снова открыли ученые-криптографы.

Защита должна учитывать происходящие изменения. То, что спасало вчера, сегодня может и не спасти и почти наверняка не спасет завтра.

Глава 2Пропатчивание – неработающая модель безопасности

Существуют две базовые модели безопасности. Одна происходит из физического мира опасных технологий – мира автомобилей, самолетов, медикаментов и медицинского оборудования, архитектуры и строительства. Это традиционная концепция, которую можно описать фразой: «Делайте правильно с первого раза». Модель эта предполагает тщательное тестирование, сертификацию систем безопасности и лицензирование инженеров. В крайних проявлениях это медленный и дорогостоящий процесс (подумайте о тестировании нового самолета или лекарства перед тем, как те выходят на рынок), ведь каждое изменение сопровождается испытаниями на предмет безопасности.

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

Источник другой модели безопасности – быстро меняющийся, ничем не ограниченный, крайне запутанный и пока еще безобидный мир ПО. Ее девиз: «Убедитесь, что защита легко адаптируется», или, если придерживаться лексикона небезызвестной соцсети: «Двигайтесь вперед как можно быстрее»{120}. Действуя в соответствии с этой концепцией, мы стараемся удостовериться, что, обнаружив уязвимость, сумеем оперативно обновить наши системы. Пытаемся построить жизнеспособные системы, которые быстро и с минимальными потерями восстановятся после взлома, подстраиваться под меняющиеся обстоятельства и противостоять новым угрозам. Но, по большому счету, мы проектируем системы, на которые сможем оперативно и эффективно устанавливать патчи[17]. О том, насколько хорошо решаются эти задачи, можно спорить, но мы смиряемся с ситуацией, поскольку потенциальные издержки не слишком велики.

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

Установка патчей – наиболее частое действие в отношении нашего ПО, его обновление, первое средство, к которому мы обращаемся, чтобы сохранить безопасность системы. Чтобы правильно оценить проблемы в области безопасности, важно понимать, насколько эффективно работает то или иное ПО и как оно проявит себя в будущем.

В любом сегменте ПО масса необнаруженных уязвимостей. Большинство может находиться в состоянии покоя в течение месяцев и даже лет, но некоторые обнаруживаются довольно быстро. Найти уязвимость ПО могут как сотрудники компаний или государственных структур, так и независимые исследователи или киберпреступники. Безопасность поддерживается следующим образом: 1) те, кто обнаруживает уязвимость, сообщают об этом разработчику ПО и общественности; 2) разработчик оперативно выпускает соответствующий патч; 3) пользователи так же оперативно устанавливают этот патч.

Понадобилось время, чтобы мы пришли к описанному алгоритму. Еще в начале 1990-х гг. все происходило примерно так. Исследователи сообщали об уязвимостях только разработчикам (минуя общественность) – те реагировать не спешили. Могло пройти несколько лет, прежде чем они приступали к нейтрализации «дыры». Выждав время, исследователи публично заявляли о существующей проблеме, тем не менее производители называли эти нападки «теоретическими» и недостойными внимания, угрожали судом и продолжали бездействовать. Единственным выходом из сложившейся ситуации становилась публикация материала с подробными сведениями об ошибке.

Сегодня исследователи предупреждают разработчиков, а следом представляют информацию публике. Факт обнародования становится тем самым «кнутом», который подстегивает производителей к оперативному выпуску соответствующего патча, а также инструментом, позволяющим аналитикам обмениваться опытом и приобретать известность в своем сообществе. Кроме того, публикации помогают исследователям отслеживать тенденции в области безопасности, стимулируют их развивать навыки. Выражение «ответственное раскрытие информации» как раз об этом{121}.

Множество аналитиков, от хакеров-одиночек до научных работников и инженеров – сотрудников корпораций, находят и ответственно раскрывают информацию о проблемах. Руководители корпораций предлагают премии тем хакерам, которые сообщают об уязвимостях, вместо того чтобы обнародовать эту информацию или использовать ее в преступных целях. В структуре Google есть подразделение Project Zero, задача которого – поиск слабых мест в наиболее популярном ПО, как находящемся в открытом доступе, так и в персональном{122}. Можно спорить о том, что на самом деле мотивирует исследователей (многие действуют ради известности или вознаграждения), но не об эффективности их работы. Несмотря на то что количество «дыр» стремится к бесконечности, устранение хотя бы одной из них обеспечивает безопасность целого сегмента ПО{123}.

В системе «найти уязвимость и установить патч» есть слабые места, большинство из них проявляется в интернете+. Давайте рассмотрим последовательность действий по снижению уровня опасности ПО (исследование уязвимостей – информирование разработчиков – написание и публикация патчей – установка патчей) в обратном порядке.

Установка патчей. Помню время, когда пользователи, а более остальных представители корпоративных сетей, с опаской относились к инсталляции патчей по причине их «сырости» и потенциального вреда, который, будучи плохо протестированными, они могли причинить системе. Недоверие распространялось на всех, кто выпускал ПО. С годами ситуация изменилась. Крупные компании – разработчики ОС Microsoft, Apple и в особенности Linux – стали намного тщательнее тестировать патчи перед релизом. Узнав об этом, пользователи начали устанавливать патчи оперативнее и чаще. Кроме того, не прекращает совершенствоваться и сам процесс пропатчивания.

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

Причин, по которым люди не считают необходимым обращаться к патчам, множество: кто-то использует пиратские копии ПО и не нуждается в обновлении системы, кто-то не доверяет разработчикам, встраивающим в апдейты ненужные пользователю функции, а у кого-то просто не хватает времени{124}. Некоторые системы, принадлежащие интернету вещей, по умолчанию затрудняют обновление. Как часто вы апгрейдите программы в роутере, холодильнике или в микроволновой печи? Уверен, что никогда. И да, скорее всего, вы даже не задумывались о такой возможности.

Эту проблему хорошо иллюстрируют три истории, произошедшие в 2017 г. Система одного из крупнейших американских кредитных агентств Equifax была взломана из-за того, что ее сотрудники в течение двух месяцев так и не нашли времени, чтобы установить на веб-сервер патч от Apache{125}. Свирепствовавшая повсеместно вредоносная программа WannaCry поражала исключительно «непропатченный» Windows. Ботнет системы интернета вещей Amnesia использовал уязвимость в цифровых видеомагнитофонах{126}. Уязвимость выявили и ликвидировали за год до появления ботнета, однако уже имевшиеся системы так и не получили обновления.