Взломать всё. Как сильные мира сего используют уязвимости систем в своих интересах - Брюс Шнайер
Шрифт:
Интервал:
Мы все знаем, чем закончилась эта история. Сначала к интернету стали подключаться однопользовательские персональные компьютеры без систем безопасности, но разработчики сетей предположили, что эти компьютеры имеют такой же уровень безопасности, как и старые мейнфреймы. Затем изменилось все, что касается использования интернета. Изменилась его скорость. Изменился масштаб. Изменилась область его применения. Изменилась и вышла на первый план его роль в обществе. Взломы, о которых раньше никто и помыслить не мог, внезапно стали критически важными. Изменилась модель угроз. А это означало, что анализ затрат и выгод стал тоже иным.
В области компьютерной безопасности мы хорошо знаем, что такое динамичные среды. Кажется, что каждые несколько лет меняется абсолютно все и методы безопасности должны меняться тоже. Спам в системе электронной почты является проблемой в той мере, в какой стала экономически невыгодной почта бумажная, поскольку отправлять электронные письма намного дешевле.
Поддержание безопасности в этой динамичной среде требует работы на опережение хакеров. Вот почему мы занимаемся исследованиями в области компьютерной безопасности, проводим конференции, выпускаем журналы, создаем программы для выпускников университетов, устраиваем хакатоны. Мы обмениваемся информацией о том, что предпринимают хакеры, и делимся передовыми методами защиты. Мы пытаемся понять, где появятся новые уязвимости, до того, как это произойдет, и как именно хакеры будут реагировать на них.
Для того чтобы законы поспевали за хакерами, они должны давать регуляторам необходимую гибкость в вопросах запрета новых хаков и наказания хакеров. Закон о компьютерном мошенничестве и злоупотреблениях был принят в 1986 г. и стал результатом обеспокоенности тем, что существующие на тот момент законы не охватывали все преступления, связанные с компьютерами. Например, этот закон, среди прочего, квалифицирует доступ к чужой компьютерной системе без разрешения или превышение уровня авторизованного доступа как преступление. Такая формулировка оказалась настолько широкой, что в 2021 г. Верховный суд США сократил ее. Однако смысл закона остался прежним – он позволяет обвинению заявить: «Хотя система и дала возможность осуществить хак, но такие действия явно не были предусмотрены, и ответчик знал, что поступает неправильно. И потому его действия незаконны».
Для многих наших социальных систем возможность исправления самих себя заложена не только внутри, но и на внешнем уровне более общих правил, по крайней мере в некоторой степени. Остается открытым вопрос: как мы осуществляем управление жизненным циклом некомпьютерных систем? Как часто мы должны проверять на уязвимости наши демократические институты и то, соответствуют ли они своему назначению? И что делать в случае, если это не так? Каждые несколько лет мы покупаем новый ноутбук или смартфон, справедливо полагая, что новые устройства более безопасны. Но как нам сделать то же самое с социальными институтами?
15
Устойчивость
Системы норм отличаются от сводов правил. В самой природе нормы заложено, что ее невозможно взломать; в случае нормы хак – это всего лишь другое слово для обозначения ее нарушения. С другой стороны, поскольку нормы более неформальны, чем правила, и не кодифицированы, существует больше возможностей для интерпретаций. Это приводит к тому, что мотивированный человек может легче перейти границы норм или оптимизировать свои действия для достижения определенного результата. А поскольку эти системы требуют от людей реагировать на атаки, нормам намного проще развиваться, чтобы, в частности, делать хаки легитимными.
В качестве примера можно взять недавние события, когда Дональд Трамп смог успешно выступить против социальных и политических норм. Я стараюсь не иллюстрировать Трампом те или иные тезисы этой книги по той причине, что он политически заряжен. Но здесь я сделаю исключение, поскольку пример слишком показателен, чтобы его игнорировать. У общества есть механизмы исправления мягких нарушений социальных норм – публичное посрамление, политический откат, журналистика и прозрачность. И все эти механизмы неплохо справлялись, пока Трамп не перегрузил их. В очень короткий срок возникло слишком много скандалов. Механизмы, которые корректировали поведение государственных служащих, оказались неэффективными перед лицом такого кандидата, как Трамп. Нормы работают только в том случае, если существуют последствия их нарушений, а общество просто не успевало реагировать на такой натиск. Таким образом, Трамп смог раздвинуть границы норм сразу во многих направлениях. И в некоторых случаях это разрушило сами нормы[12].
Однако, подобные вызовы системам норм могут повысить их устойчивость. Нормы – это что-то неявное и достаточно гибкое, поэтому их легко изменить. Для того чтобы оспорить и изменить систему норм, не нужны деньги, юридические знания или технологии, хотя все это, конечно, может помочь. Наши социальные модели поведения и неявные ожидания могут быть оспорены каждым, кто готов высказаться о них и имеет для этого платформу. И такой вызов скорее поможет нормам развиваться и совершенствоваться, чем сломает их.
Устойчивость является важной концепцией, которая применима ко всему: от человеческого тела до планетарной экосистемы, от организационных систем до систем компьютерных. Это способность системы восстанавливаться после возмущений, в число которых входят и хаки.
Устойчивость – это то, почему при строительстве подвесных мостов используют натянутые тросы, а не цельнометаллические стержни: вторые разрушаются внезапно и катастрофически, а тросы рвутся медленно и громко. Именно ради устойчивости наши мозг и тело знают так много разнообразных способов адаптации к любым обстоятельствам, в которых мы оказываемся. Хорошие таксисты знают, как объехать популярные достопримечательности как минимум четырьмя маршрутами, и это тоже устойчивость. И даже то, что в округе Ориндж, штат Калифорния, функционирует окружное правительство, объявившее о своем банкротстве в 1994 г.[13], – факт, иллюстрирующий тот же принцип.
В сфере безопасности устойчивость – это эмерджентное, то есть не сводимое к сумме ее компонентов, свойство системы, которое может сочетать в себе такие аспекты, как непроницаемость, гомеостаз, избыточность, маневренность, смягчение и восстановление. Устойчивые системы более безопасны, чем хрупкие. Многие из мер безопасности, которые мы обсуждали в предыдущих главах, направлены на повышение устойчивости системы к взлому.
Здесь стоит упомянуть еще один момент. Мы говорили о защите от хакинга в основном абстрактно, однако любое обсуждение такой защиты должно ответить на несколько конкретных вопросов. Кто от кого защищается? Кто решает, полезен взлом или нет? И, самое главное, кто отвечает за безопасность и за то, насколько защитные меры стоят затраченных усилий и средств?
Примеры, которые я приводил до сих пор, были довольно простыми: за системой стоит некий человек или организация, и они же отвечают за ее безопасность. Например, руководство Microsoft решает, является ли конкретный хак Windows проблемой и как эту проблему решить. Как правило, все решается установкой патча. Если поставить патч оказывается сложно, система живет с уязвимостью какое-то время, как это было в случае с функцией автозапуска. У нас есть примеры, когда уязвимости после взлома быстро исправлялись, и есть другие, когда хаки оставляли нетронутыми, потому что защита от них оказывалась слишком дорогим удовольствием. Если потери от мошенничества меньше, чем затраты на исправление системы, то компании, обслуживающие кредитные карты, позволят мошенничеству продолжаться. Магазины часто позволяют шоплифтерам[14] уходить с украденными товарами, потому что сотрудники, пытаясь остановить их, могут пострадать физически, а ложное обвинение людей в краже – привести к дорогостоящим судебным разбирательствам.
Поскольку мы пытаемся построить социальные и политические системы, способные защищать себя от хакеров, необходимо подумать о балансе между написанием законов законодателями и их исполнением регуляторами. С одной стороны, регулирующие органы не несут прямой ответственности перед людьми в той же мере, что и законодатели. С другой стороны, мы не хотим, чтобы законодатели увязали в деталях реализации законов до их принятия. Чем больше законодательные органы могут делегировать реализацию законов регуляторам, тем более гибкой и устойчивой к взломам будет созданная система.
Защита социальных систем от хакинга – это не только проблема разработчиков данных систем. Это проблема, стоящая перед всем обществом, перед каждым, кто желает социальных изменений и прогресса в целом.
Часть III
Хакинг финансовых систем
16
Хакинг
Поделиться книгой в соц сетях:
Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!