Хорошая разработка получается в результате последовательного движения от технических требований к нахождению правильного решения, а не в результате применения сухой технологии для получения конечного продукта. В случае разработки систем безопасности это означает, что сперва необходимо заняться моделированием угроз, выработать политику безопасности и только после этого выбирать подходящие технологии. Угрозы определяют политику безопасности, а она, в свою очередь, – процесс разработки. В частности:
• Следует понять, что реально угрожает системе, и провести оценку рисков. Это легче сделать, если использовать опыт «реального мира» и знания об имевших место нападениях на похожие системы.
• Определить политику безопасности для противодействия этим угрозам.
Это должен быть ряд положений вроде: «только уполномоченные банки вправе изменять баланс на картах Plasticash» или «все движения денежных средств в системе Plasticash должны быть доступны контролю».
• Разработать меры противодействия, которые воплотят в жизнь политику безопасности. Эти контрмеры должны представлять собой объединение механизмов защиты, обнаружения и реагирования.
Конечно, такая прямолинейная модель создания решения – это идеал, а реалии жизни не часто помогают в ее реализации. Более правдоподобно, что путь разработки будет напоминать спираль, и придется не один раз повторить эти три шага, с каждым разом все более и более приближаясь к достижению истинной безопасности. В наивысшей степени сказанное относится к новым системам и новым технологиям, когда действительные угрозы остаются неизвестны до тех пор, пока на практике не удастся определить, кто и на что будет нападать. Поэтому все хорошие системы предусматривают план действий в непредвиденных обстоятельствах и способы восстановления после катастрофических событий.
Ошибки в определении угроз
Рассмотрение целей и методов нападающих кажется очевидным делом, однако многие организации, ведущие себя вполне разумно в других случаях, оказались неспособны сделать это. Военная контрразведка США потратила многие годы на то, чтобы построить защиту от одной хорошо финансируемой организации, имевшей единственную цель – прослушивание американских линий связи военного значения. Она преуспела в этом, однако совершенно упустила из виду опасность, исходящую от хакеров. Хакеров не интересует прослушивание. Их никто не финансирует. Они не организованы. Им не нужны военные секреты, им хочется поковыряться в системе ради развлечения и посмотреть, как она обрушится. Им хочется похвастаться перед приятелями и, может быть, увидеть свое имя в газетах. Некий сотрудник AT&T Bell Labs обнаружил дефект в реализации «Клиппер-чипа» (Clipper chip[51]) военной контрразведки и создал ей дурную славу. Зачем? Ради удовольствия поймать контрразведку на ошибке.
Если вы занимаетесь моделированием угроз, сперва обратите внимание на те случаи, когда люди глубоко заблуждались насчет реальности угрозы.
• В индустрии сотовых телефонов было потрачено много денег на разработку средств обнаружения мошенничества, но никто не понимал реальной угрозы. Предполагалось, что преступники будут пытаться пользоваться услугами телефонной связи бесплатно. В действительности все, что требовалось настоящим преступникам, – это анонимность, им не хотелось, чтобы телефонные звонки вели к ним. Номера сотовых телефонов перехватывались в эфире, использовались несколько раз и затем забывались. Система, имевшая целью предотвращение мошенничества, не была рассчитана на обнаружение таких действий.
• В той же индустрии сотовых телефонов, еще в давние времена аналоговой передачи сигналов, никто не беспокоился о безопасности связи, поскольку, как считалось, «сканеры дороги и редко встречаются». Спустя годы сканеры стали дешевы и широко распространены. Тогда, следуя замечательной традиции ничего не предпринимать, никто не побеспокоился о безопасности цифровых телефонов, поскольку «цифровые сканеры дороги и редко встречаются». Что же дальше? Они так же подешевели и стали более распространены.
• Хакеры часто предлагают на продажу средства взлома на веб-страницах и досках объявлений. Некоторые из этих хакерских средств сами заражены Back Orifice, и тот, кто их написал, получает доступ к компьютеру использующего их хакера. Аристотель называл подобное стечение обстоятельств «поэтической справедливостью».
• Когда обнаруживается уязвимость протокола безопасности Интернета, поставщик обычно пересматривает протокол с целью ее уменьшения. Однако ввиду важности обратной совместимости новый протокол часто делается совместимым со старым, уязвимым протоколом. Умный нападающий просто взламывает старый протокол и использует его уязвимость. Это называется атакой на откат версии (version-rollback).
• Несколько лет тому назад монетоприемники японских автоматов для игры в пачинко были заменены устройствами для чтения магнитных карт. В системе использовались разные меры защиты от жульничества, но разработчики ошибались, считая владельцев игорных заведений хорошими парнями. В действительности многие из них были вовлечены в организованную преступность. И модель безопасности была построена плохо: владельцы помещений, где находились автоматы, не оставались в накладе и получали доходы независимо от того, настоящими или фальшивыми были карты, поэтому у них не было стимула обращаться в полицию по поводу мошенничества. (Разработчики также полагали, что, установив для каждой карты предел в 100 долларов, можно ограничить потери.) Махинация была проведена тонко – она включала восстановление настоящих карт, «исчезновение» многих автоматов после землетрясения в Кобе и охватывала множество игорных заведений, – и общая сумма ущерба от нее составила около 600 миллионов долларов. По слухам, деньги утекли в Северную Корею.
• Производители автоматов, принимающих монеты, давно предвидели возможность манипуляций мошенников с механическими устройствами. Например, просверливание отверстий в автомате для воздействия на механизм барабана или использование устройств, воздействующих на счетчик монет, подлежащих выплате игроку. Несколько лет назад один из производителей автоматов для игры в покер был удивлен совершенно неожиданному способу воздействия с помощью статического электричества. Некоторые игроки обнаружили, вероятно, случайно, что если накопить достаточно большой заряд, походив по плюшевым коврам в казино, и разрядиться на автомат, из него посыплются все имеющиеся монеты.
• В конце 1999 года было взломано шифрование цифровых видеодисков (DVD). Если даже диск зашифрован, ключ для дешифрования должен быть в проигрывателе. Иначе и быть не может. Все было в порядке, пока проигрыватели оставались защищенными от взлома физическими устройствами, но с момента создания программного проигрывателя ключи присутствуют в программах. Кто-то просто произвел анализ программы и нашел ключ, таким образом, содержание видеодисков теперь может копироваться и распространяться через Интернет.
• В 1980 году при проведении Пенсильванской лотереи ее ведущий и несколько рабочих сцены, с которыми он был в сговоре, подтасовали пинг-понговые шарики, использовавшиеся в розыгрыше, и выиграли 1,2 миллиона долларов. Никто не предполагал возможности такого сложного сговора. В настоящее время проведение лотереи контролируется более тщательно. (Подобное происшествие, но уже вследствие случайной ошибки, имело место при проведении Аризонской лотереи. В 1998 году кто-то обратил внимание на то, что в выигрышных номерах нет ни одной девятки. Оказалось, что алгоритм генерации псевдослучайных чисел содержит элементарную программную ошибку. Кажется, пингпонговые шарики надежнее компьютеров.)
Правила дорожного движения большинства европейских стран предписывают использование на грузовых автомобилях устройства, называемого тахограф, который присоединяется к спидометру и фиксирует скорость, пройденное расстояние и другие сведения. Тахограф записывает показания спидометра на бумажную ленту, на которой водитель ставит свою подпись и дату; лента затем хранится какое-то время. Здесь трудно было что-либо подделать, и попытки обмана совершались чаще с использованием слабостей процедуры, а не технологии. Недавно Европейский союз начал финансирование проекта «Тахосмарт» для создания полностью цифрового устройства взамен старого тахографа. Любая подобная система открыта для всех видов нападений, описанных в этой книге (хуже всего, что новое устройство, похоже, будет основано на использовании смарт-карт и будет еще менее надежным).
Приведенные примеры интересны тем, что нападающие использовали не недостатки мер противодействия, а просчеты модели безопасности. Во всех случаях меры противодействия существовали, но они не решали истинную проблему. Хотя они могли преодолеть некоторые смежные проблемы. И в некоторых случаях решения создавали еще большие проблемы, нежели те, с которыми удавалось справиться.