Среди прочего сложность компьютерных систем означает использование при их производстве все большего количества деталей, взаимодействие с ними все большего количества людей и их включение во все большее количество коммуникаций. А еще – новые уровни абстракции, огромное количество ошибок, допущенных при конструировании и разработке, все бо́льшие трудности, которые приходится преодолевать в ходе тестирования, и появление все большего количества мест в коде, где могут скрываться ошибки.
Экспертам в области компьютерной безопасности нравится говорить о поверхности атаки – потенциальных точках – целях взломщиков{94}. Сложная система подразумевает огромную поверхность атаки, то есть возможный агрессор получает существенное преимущество. Достаточно отыскать одну-единственную уязвимость – незащищенный путь – и выбрать время и метод нападения. С не меньшим успехом хакер может предпринять серию атак. Обороняющемуся же нужно обезопасить всю поверхность атаки от всех возможных нападений. По сути, у него нет права на ошибку, он должен побеждать каждый раз, в то время как атакующему достаточно всего одной победы. Неравный бой: расходы на атаку минимальны по сравнению с затратами на оборону.
Даже при усовершенствовании технологий сложность компьютерных систем опережает модернизацию безопасности. Новые идеи по усовершенствованию системы, новые результаты исследований, новые продукты и новые услуги появляются каждый год. Одновременно с ними появляются новые уязвимости. Мы сдаем позиции, несмотря на то что улучшаем технологии.
В сложных системах значительное количество опций, затрудняющих безопасную работу пользователей-любителей. Непрофессионалы забывают сменить пароль, присвоенный по умолчанию, или неправильно настраивают доступ к данным в облаке{95}. В 2017 г. руководство Стэнфордского университета заявило, что в результате «неправильно сконфигурированных разрешений» в сеть попали данные тысяч студентов и сотрудников{96}. И это далеко не единичный случай.
Нападение эффективнее защиты и по ряду других причин. Во-первых, у атакующих преимущество первого хода, а во-вторых, их действиям присуща определенная гибкость, которой часто не хватает обороняющимся. Те, кто становится жертвой взломщиков, как правило, плохо разбираются в проактивной безопасности или не придают той должного значения. У атакующих есть за что бороться, в то время как защита сопряжена с издержками, на которые редко когда готовы пойти руководители. Многие до последнего отказываются верить, что целью может стать именно их компания. Вот тут-то хакер и получает дополнительное преимущество.
Не стоит делать вывод, что защита – вообще бесперспективное дело. Многое зависит от самого злоумышленника. Если он одиночка, которого несложно переключить на цель попроще, – это одно, но если речь о квалифицированном, хорошо финансируемом и мотивированном хакере – совсем другое. По этому поводу часто упоминают такую цитату бывшего заместителя директора АНБ Криса Инглиса: «Если бы в киберпространстве мы забивали так, как забиваем в футболе, то за 20 минут игры счет составил бы 462: 456»{97}. Примерно так и обстоят дела.
Относительная техническая простота нападений не означает, что они происходят сплошь и рядом. Мало кто решается на убийство, ведь госорганизации нацелены на поиск и наказание виновного. В интернете установить авторство сложно, оттого и наказать труднее. (Эту тему мы обсудим в главе 3.) Усложняет вопрос и интернациональная природа интернета.
Если говорить об интернете+, то все будет становиться только хуже. Чем больше, чем разнообразнее, тем сложнее.
Современный интернет настолько многоуровневый и разноплановый, что даже эксперты до конца не понимают, как именно взаимодействуют его сегменты. При этом обычные пользователи, уверенные в собственной осведомленности обо всех процессах, удивляются неожиданным открытиям.
Чем больше предметов объединено в сеть, тем интенсивнее уязвимости одной системы воздействуют на другие. В подтверждение своих слов приведу три примера.
97
Dan Geer (6 Aug 2014), “Cybersecurity as realpolitik,”