Глава 18 Уязвимости и их ландшафт
Глава 18
Уязвимости и их ландшафт
В первой части мы теоретически рассматривали атаки: какие существуют виды нападений и нападающих. Но, как я каждый раз не устаю повторять, теория отличается от практики. Каждый, кто читает детективные романы или криминальную хронику в газетах, знает, что для осуществления нападения необходимо намного больше, чем просто найти уязвимое место. Можно считать, что нападающий с успехом использовал слабую точку, если ему удалось определить цель, спланировать атаку, сделать свое дело и скрыться. Недостатки в замке сейфа, находящегося в безопасном месте, менее существенны, чем аналогичные недостатки в банковском уличном ящике для депозитов.
То же самое и в цифровом мире. Потенциальному преступнику недостаточно найти изъян в алгоритме шифрования, использующемся в системе кредитных карт. Он должен получить доступ к соединению, он должен обладать достаточными знаниями о протоколах, чтобы создать поддельное сообщение, которое позволит ему на самом деле украсть деньги, и в конце концов он должен успеть убраться вовремя. Обнаружение изъяна в шифровании в отрыве от всех остальных шагов представляет только теоретическую ценность.
Подобно этому, существует великое множество мер противодействия, которые могут помочь «заткнуть дыру». В сейфе можно повесить более надежный замок или установить сигнализацию на окнах и дверях помещения, в котором сейф находится, и поставить у дверей охрану. Недостатки в шифровании могут быть исправлены, если использовать лучший алгоритм шифрования. Они не будут представлять опасности, если держать протоколы в секрете, использовать частную сеть для сообщений или просто менять ключи каждые пять минут.
Методология атаки
В общем случае успешную атаку можно разбить на пять последовательных шагов:
1. Опознать цель, которая должна подвергнуться нападению, и собрать о ней информацию.
2. Проанализировать информацию и найти уязвимую точку в цели, которая позволит добраться до объектов, на которые направлена атака.
3. Получить необходимый уровень доступа к цели.
4. Осуществить нападение на цель.
5. Завершить атаку, что может включать в себя уничтожение всяких следов атаки, и скрыться от возмездия.
То есть, другими словами, необходимо определить, что атаковать и как атаковать, проникнуть внутрь, провести атаку и убраться вовремя. Первые два шага – это исследование. Вы в силах выполнить их в полной безопасности в собственной лаборатории; вы даже можете использовать для этого муляжи настоящей цели. Если вы ученый, скорее всего, вы остановитесь после второго шага и опубликуете полученные материалы. Последующие три шага связаны с риском, который неизбежен при взломе и проникновении в систему как виртуальную, так и реальную. Тут уж как повезет: либо успел скрыться вовремя, либо поймали.
Помните Звездные войны? Для того чтобы взорвать Звезду Смерти, повстанцы сначала должны были получить информацию, которую принцесса Лейа поместила в R2-D2. Это была единственная причина, по которой Люк должен был в первую очередь вызволить дроидов с Татуина. Спасение принцессы было в Мак-Гаффине. Это был первый шаг.
Шаг второй остался за кадром. Инженер восставших изучил информацию, полученную от дроидов и нашел слабое место в обороне их станции – проектировщики системы жизнеобеспечения никогда не предполагали, что их детище будут внимательно изучать профессионалы в области безопасности, и вот результат: Звезда Смерти, создание которой обошлось в десятки миллиардов «кредитов», может быть уничтожена через вентиляционную шахту.
Шаг третий продемонстрировал спецэффекты ближнего боя в ограниченном пространстве между крестокрылыми бойцами повстанцев (их экипировка приводит зрителей в восхищение) и защитниками станции. Задача крестокрылых состояла в прикрытии нескольких истребителей, которые получали возможность свободно перемещаться по всему пространству и простреливать насквозь вентиляционную шахту. Доступ к цели был достигнут совместными усилиями.
Молодой мастер Люк смог завершить четвертый шаг после того, как Хан Соло оторвался от Дарта Вейдера, севшего ему «на хвост», и вкрадчивый голос Алека Гинеса внушил Люку мысль отключить компьютер, который являлся целью (возможно, работающий с бета-версией), и использовать Силу.
Взрыв Звезды Смерти (шаг 5) исключил всякую возможность возмездия, по крайней мере на некоторое время. После этого было нетрудно убраться восвояси. Наши герои получили медали от альянса повстанцев, чье материальное положение улучшилось настолько, что они смогли позволить себе заказать новую форму, и Вселенная была спасена на несколько следующих серий. Список можно продолжить.
Только что описанный пример мало отличается от атаки через Интернет, нацеленной на компьютеры какой-либо компании. На первом шаге происходит выбор цели и сбор информации. Осуществить это на удивление легко. На веб-сайте обычно можно найти любую информацию: от сведений о том, что содержат различные базы данных Интернета, до способов работы с ними в режиме сетевого подключения. Специальный номеронабиратель поможет установить коммутируемое соединение. Существует множество техник, которыми нападающий может воспользоваться для того, чтобы узнать, как работает сеть, в которой находится его цель: изучение результатов работы специальных программ, используемых для проверки доступности адресата, служебных сообщений, состояния портов и т. д. Сетевой модуль проверки текущего состояния способен выдать еще больше информации. Это чаще всего похоже на вышибание двери, хотя компьютер сам готов выдать совершенно посторонним людям массу информации о том, какое аппаратное обеспечение в нем используется, какие работают программы и какие службы они поддерживают. Все эти сведения могут с успехом использоваться нападающим.
Второй шаг – это нахождение уязвимого места. На этом этапе атакующий внимательно изучает всю собранную информацию, для того чтобы выбрать точку атаки. Вероятно, на одном из компьютеров установлена определенная версия почтовой программы, операционная система или Solaris, или Windows NT, которые содержат известные ошибки. Возможно, удастся использовать FTP или регистрационное имя, или что-нибудь еще. Часть оборудования, обеспечивающего поддержку порта, через который лежит путь к цели, может оказаться незащищенной. Не исключено, что нападающий в силах использовать телефонную сеть объекта, на который направлена атака. Чем больше уязвимых мест в различных частях системы известно атакующему, тем лучше он сможет спланировать нападение.
Шаг третий – получение некоторого вида доступа к компьютеру. В Интернете это тривиально, так как любой компьютер подключен к Сети и таким образом доступен. (Конечно, некоторые компьютеры находятся за брандмауэром и недоступны, но тогда брандмауэр, по всей видимости, доступен.)
Четвертый шаг – проведение атаки. Это может оказаться сложным делом, а может, наоборот, пустяковым. Если нападающий хорошо подготовлен, все проходит удивительно легко.
Заметим, что некоторые атаки включают в себя множество итераций. Нападающий может выполнить шаги с первого по четвертый неоднократно: проникновение на веб-сервер, получение необходимого уровня доступа, использование этого доступа для проникновения на другой сервер, расположенный внутри общей территории, защищенной брандмауэром, получение к нему доступа и т. д. На каждом шаге происходит сбор информации, определение цели и методов ее достижения, получение доступа и выполнение операции.
Пятый шаг – завершение атаки. Если нападающий искал какой-то определенный файл, он получает к нему доступ, делает что ему было нужно и исчезает. В его власти стереть записи в контрольном журнале и таким образом уничтожить все следы. Он также способен модифицировать системные файлы, чтобы было легче получить доступ в следующий раз. И стоит ему почувствовать опасность, быстро завершает начатое и скрывается. И исчезает мгновенно. Хождение вокруг да около характерно для любителей.
В руководстве по взлому «FAQ and Guide to Cracking» Микстера описаны те же самые шаги. Вот что он говорит о том, что нужно сделать в первую очередь после того, как вы получили корневой доступ (получение прав корневого пользователя на копьютере-цели выполняется на шаге 4):
1. Поэтапно удалить следы получения несанкционированного корневого доступа.
2. Собрать основную информацию о системе.
3. Удостовериться, что вы сможете выбраться оттуда.
4. Разрушить или обновить уязвимый домен.
Он особенно подчеркивает необходимость отключения контроля и уничтожения записей в контрольном журнале и получения информации о том, как часто система подвергается проверкам и как часто проводится анализ информации, хранящейся в контрольном журнале.
Хакерские инструменты позволяют автоматизировать множество процессов. Они действуют далеко не так эффективно, как виртуозный хакер, но они способны превратить несмышленого подростка в опасного противника.
Другой пример: атака против платежной системы, использующей смарт-карты. Первый шаг состоит в том, чтобы собрать всю информацию о платежной системе, которая может пригодиться: особенности ее построения, общедоступную документацию, сведения об используемых алгоритмах и протоколах и т. д. Возможно, вам удастся раздобыть массу информации, если вы знаете, где ее искать.
Шаг второй – изучить документацию, отыскивая слабое звено. Во второй части этой книги говорилось обо всех видах уязвимых мест, которые могут существовать в подобных системах. Уязвимыми могут быть алгоритмы и протоколы шифрования. Возможно, уязвимая точка скрывается в самой смарт-карте, из-за того, что система сопротивления вторжению не действует как предполагалось. Может быть, существует изъян в способах их использования – если его удастся обнаружить, это поможет достичь цели. Вам нужно найти все уязвимые точки, для того чтобы успешно атаковать систему.
На третьем шаге необходимо получить уровень доступа, необходимый для проведения атаки. Вы должны стать зарегистрированным пользователем этой платежной системы (возможно, под вымышленным именем). Вероятно, вам придется украсть чью-либо карту. Может быть, вам необходимо будет вступить в сговор с продавцом, который принимает смарт-карты в качестве платежного средства. Получение доступа – не всегда легкое мероприятие.
Четвертый шаг – выполнение атаки: размножить смарт-карту и использовать ее дубликаты, изменять содержимое памяти смарт-карты и пользоваться этим при совершении покупок, изменять баланс и требовать оплаты наличными – все, что вам удастся осуществить. Для выполнения последнего пункта вам недостаточно взломать систему смарт-карт, вы должны перевести все добытое с помощью взлома в наличные деньги.
Шаг пятый – заметание следов. Возможно, вы захотите ликвидировать все физические доказательства вашего нападения. Если оборудование, которым вы пользовались для осуществления атаки, находилось у вас дома, вы его уберете оттуда. Если доказательства вашего нападения остались в компьютерных файлах, вы их удалите. Может быть, вам удастся взломать компьютеры платежной системы и уничтожить записи, представляющие для вас опасность. Все что угодно, лишь бы замести следы.
В некоторых атаках присутствуют не все описанные этапы. Нападения ради огласки часто не включают в себя шаги 2, 3 или 5. Приведем в качестве примера атаку против алгоритма шифрования, использующегося в цифровых сотовых телефонах. Шаг 1 – получение информации об алгоритмах шифрования, применяющихся в сотовых телефонах. Шаги 2 и 3 пропускаются. (Цель известна и весь доступ, который вам нужен, – это описания алгоритмов.) Шаг 4 – выполнение криптографического анализа и сообщение об этом средствам массовой информации. Шаг 5 не выполняется – вы ничего не делали нелегально. Такая атака потенциально успешна против любого алгоритма шифрования данных для цифровой сотовой связи.
В этой книге я на многих примерах постарался показать, что безопасность – это цепь, и надежность системы определяется прочностью самого слабого ее звена. Уязвимые точки как раз и представляют собой такие слабые звенья. Нахождение слабых мест в системе – это только первый шаг к их использованию. Не менее важно получить доступ к обнаруженной уязвимости, суметь реально использовать ее для совершения определенных действий и затем благополучно скрыться – без этого не бывает успешных нападений.
Меры противодействия
Меры противодействия существуют для того, чтобы защитить уязвимые точки. Они могут быть простыми, наподобие постройки стены вокруг города, чтобы вражеская армия не смогла в него проникнуть, или сложными, такими как создание надежной системы проверки для обнаружения попыток мошенничества среди продавцов кредитных карт и установления личности преступников.
Обычно меры противодействия применимы для разрушения атаки на любом из пяти этапов ее проведения.
Большая часть обсуждавшихся во второй части технических мер противодействия применяется в компьютерах и компьютерных сетях. Я пытался обрисовать ситуацию в целом: как работают различные средства и методы или почему они не работают, каким образом они соотносятся друг с другом и т. д. Ни одна технология в области безопасности не должна рассматриваться как панацея: результат достигается, когда каждая из них используется эффективно.
Надежность системы всегда определяется ее самым слабым звеном, и это, вообще говоря, заставляет нас обратиться к рассмотрению отдельных технологий. В умело построенной системе эти технологии не лежат на поверхности, в конечном счете безопасность системы определяется их взаимодействием. Криптографические методы могут быть разрушены с помощью лобовой атаки или криптоанализа алгоритма. Можно также воспользоваться невнимательностью сотрудника и раздобыть пароль. Но замок на двери помещения, в котором находится компьютер, или хорошо сконфигурированный брандмауэр обеспечит защиту на другом уровне.
Помните начало В поисках утраченной радуги (Raiders of the Lost Arc)? Индиана Джонс должен был пройти через пауков, ловушки с шипами, ямы, отравленные стрелы, внезапно вылетающие, если наступишь не на тот камень, и саморазрушающееся устройство, срабатывающее при движении статуи. Это многоуровневая защита. Он преодолел ловушку с шипами, не затронув пусковой механизм, но он еще должен был увернуться от надвигающейся стены, остановить механизм и сделать массу других вещей. Самый легкий способ избежать ловушки определяет ее эффективность.
Так же как нападение на систему представляет собой нечто более сложное, чем просто нахождение уязвимых мест, защита системы более сложна, чем выбор мер противодействия. Эффективная система таких мер покоится на трех составляющих:
• защита;
• обнаружение;
• реагирование.
В офисе военной организации служебные документы хранятся в сейфе. Сейф обеспечивает защиту от возможного проникновения, но той же цели служит сигнализация и охрана. Предположим, что нападающий – посторонний человек: он не работает в офисе. Если он попытается украсть документы из сейфа, он должен не только взломать сейф, ему нужно еще отключить сигнализацию и суметь пройти мимо охраны. Сейф с замком – это меры защиты, сигнализация – способ обнаружения вторжения, охрана обеспечивает реагирование.
Если охрана обходит офис через каждые пятнадцать минут, то сейф должен противостоять атакующему в течение пятнадцати минут. Если сейф находится в офисе, персонал которого присутствует только в рабочие часы, он обязан обладать способностью выдержать атаку в течение шестнадцати часов: от пяти часов пополудни до девяти утра следующего дня (и намного дольше, если офис закрыт в выходные дни). Если сейф снабжен сигнализацией, и как только кто-нибудь дотронется до него, сразу прибудет охрана, тогда он должен выдерживать атаку только в течение того времени, которое потребуется ей, чтобы добраться до места происшествия и принять меры.
Все сказанное означает, что надежность сейфа основывается на механизмах обнаружения и реагирования на месте. И сейфы классифицируются по этому признаку. Одному сейфу может быть присвоена классификация TL-15: это означает, что он способен противостоять профессиональному взломщику с инструментами в течение 15 минут. Другой сейф может быть отнесен к разряду TRTL-60, что будет означать, что ему по плечу сопротивляться такому же взломщику, да еще вооруженному паяльной лампой с подачей кислорода, 60 минут. Это оценки чистого времени атаки: время идет, только когда сейф подвергается нападению, – время, затраченное на планирование и подготовку, не учитывается. И тесты проводятся профессионалами, имеющими доступ к чертежам сейфа: нельзя рассчитывать на недостаток информации у нападающего. (Много общего с криптографическими атаками, не правда ли?)
Меры защиты, обнаружения и реагирования работают совместно. Сильный механизм защиты подразумевает, что вы не нуждаетесь в столь же действенных механизмах обнаружения и реагирования.
Классификация сейфов демонстрирует это ясно. Какой сейф вы купите: рассчитанный на 15 минут, на 30 минут, на 24 часа? Это будет зависеть от того, в течение какого времени сработает сигнализация (обнаружение) и прибудет охрана, чтобы арестовать взломщиков (реагирование). В отсутствие систем обнаружения и реагирования в действительности все равно, какой сейф вы выберете.
Большинство мер компьютерной безопасности носят профилактический характер: криптография, брандмауэры, пароли. Некоторые можно отнести к механизму обнаружения, как системы обнаружения вторжения. Реже встречаются механизмы реагирования: например, система ввода регистрационного имени и пароля, которая блокируется после трех неудачных попыток – хотя механизмы обнаружения бесполезны без механизмов реагирования. Представьте себе систему обнаружения вторжения, которая только регистрирует атаку. Она подаст сигнал системному администратору, может быть, пошлет сообщение по электронной почте на его пейджер. Если администратор не отвечает в течение нескольких часов – допустим, он обедает, – тогда не имеет значения, что нападение было обнаружено. Не было предпринято никаких мер, чтобы решить проблему.
Обычная охранная сигнализация также является средством обнаружения. Когда она срабатывает, дальнейшее развитие событий зависит от того, есть ли кому реагировать на нее. Если взломщик знает, что на сигнал тревоги никто не обратит внимания, это то же самое, как если бы сигнализации не было вовсе.
Иногда невозможно использовать механизмы обнаружения и реагирования. Представьте себе обычное прослушивание: Алиса и Боб общаются с помощью незащищенной связи, а Ева их подслушивает. Ни Алиса, ни Боб не могут обнаружить прослушивание и, соответственно, у них нет возможности как-то отреагировать на него. Средство защиты – шифрование – должно обеспечить достаточно безопасную связь, чтобы прослушивание дало результаты, представляющие интерес для Евы.
Сравним только что приведенный пример с шифрованием кодов доступа для системы кредитных карт. Предположим, что заполучить эти коды можно только взломав систему. Если на всех автоматах установлена сигнализация (обнаружение) и коды доступа могут быть изменены в течение 15 секунд (реагирование), то алгоритм шифрования не обязательно должен быть очень надежным. Возможно, существует множество путей для того, чтобы получить эти коды, не вызвав при этом сигнал тревоги. Если коды меняются раз в неделю и это изменение никоим образом не связано с механизмом обнаружения (то есть автоматическое реагирование не предусмотрено), то алгоритм шифрования должен обеспечить защиту кодов в течение недели.
Неразумно надеяться только на защитные механизмы, и прежде всего потому, что часто одна атака может следовать за другой. Использование исключительно защитных механизмов обеспечит безопасность только в том случае, если технологии, лежащие в их основе, совершенны. Если бы наличествовала идеальная система защиты смарт-карт от вторжения, не было бы необходимости в обнаружении и реагировании. Система защиты смарт-карт, существующая в реальном мире, время от времени дает сбои; поэтому хорошо сконструированная система защиты обязана включать в себя механизмы обнаружения и реагирования на случай ее провала. Одна из основных идей этой книги состоит в том, что не существует совершенной технологии. Обнаружение и реагирование, таким образом, весьма существенны.
Представим себе компьютерную сеть. Если брандмауэры, операционные системы, пакеты серверного программного обеспечения абсолютно защищены, тогда нет необходимости в системах сигнализации. Никто не в силах проникнуть внутрь, так что незачем поднимать тревогу. В реальном мире не существует продуктов, у которых нет уязвимых точек. Всегда можно найти способ взломать брандмауэр, разрушить операционную систему, атаковать программное обеспечение сервера. Единственное, что спасет положение в отсутствие совершенных защитных барьеров, это применение контрмер обнаружения и реагирования, чтобы получить вовремя сигнал, если система будет взломана, и иметь возможность противодействовать.
Ландшафт уязвимых точек
В реальных системах множество уязвимых точек, и существует много различных способов провести атаку. Если террорист хочет взорвать самолет, он может протащить на борт бомбу, сбить его с помощью ракеты или захватить самолет и направить его на ближайшую гору. Хакер, желающий проникнуть в корпоративную сеть, может атаковать брандмауэр, веб-сервер, использовать модемное подключение и т. д.
Системы, действующие в реальном мире, обладают множеством различных возможностей для противодействия атаке. Оборудование авиалиний включает в себя детекторы металла, химические анализаторы и рентгеновские аппараты, позволяющие обнаружить бомбу, и системы, отыскивающие «ничейные» вещи, так что можно быть уверенным, что бесхозный пакет не взлетит вместе с самолетом, в то время как его хозяин остался на земле. (Эта система противодействия предполагает, что немногие террористы захотят взрывать себя вместе с самолетом, а большинство предпочтут спокойно разгуливать по земле, когда самолет будет взорван.) Военные самолеты имеют также системы противоракетной обороны. Корпоративные сети содержат брандмауэры, системы обнаружения вторжения, используют процедуры периодического обновления паролей или шифрования файлов на сервере.
И все это удивительно легко может стать бесполезным.
Я использую термин ландшафт уязвимых точек, чтобы изобразить обманчивый и сложный мир атак и мер противодействия. Использованная метафора допускает расширение списка описываемых атак – выстрелы из ружья в банковского кассира, шантаж программиста с целью заставить его включить троянского коня в кусок программного кода, проникновение через стену банка, обработка невнимательного сотрудника для того, чтобы получить пароль, – и контрмеры: пуленепробиваемое стекло, защищающее кассира; проверка всего персонала; камеры наблюдения снаружи здания; биометрический контроль. Различные куски ландшафта связаны с различными типами атак. Компьютерные атаки представляют собой, несомненно, только малую часть ландшафта.
Каждая система имеет свой собственный ландшафт уязвимых мест, хотя многие черты для различных систем схожи. (Каждая компьютеризированная система подвержена угрозе отключения питания. И почти каждая система использует угрозу ареста в качестве контрмеры.) Ландшафт уязвимых точек очень неровен, его составляют пики и долины различной высоты и глубины. Чем выше пик, тем эффективнее соответствующая мера отпора: вершина «используйте пароли» невысоко поднята над землей, а «выключите компьютер и утопите его в вонючем болоте», конечно, намного выше. Долины, с другой стороны, представляют собой узкие места: это возможности потенциальных противников атаковать вашу систему. Чем ниже долина, тем серьезнее изъян.
Уязвимая точка еще не означает выигрыш. Выигрыш – это то, о чем мы говорили в главе 3: выигрыш вора, которому удалось украсть деньги, выигрыш нечестного торговца, присвоившего чужую собственность, выигрыш озабоченного студента, заработавшего дурную славу. Уязвимые места могут быть использованы атакующими, чтобы добиться цели. Цель – украсть деньги; незащищенный кассовый аппарат – уязвимая точка. Испортить чью-либо репутацию – это цель; незашифрованные файлы на его жестком диске – уязвимая точка. Некоторые уязвимые точки бесполезны для достижения именно данной цели. В анонимных группах новостей целью атакующего может быть, например, установление личности корреспондентов. Нехватка идентифицирующей информации не сослужит ему хорошую службу. Если группа новостей построена по принципу платной подписки, у нападающего может быть иная цель – пользоваться ею бесплатно. В таком случае уязвимость системы идентификации будет ему на руку.
Ландшафт уязвимости можно представить различными способами. Я выделяю в нем четыре обширные области: физический мир, мир виртуальный, доверенности и жизненный цикл системы. Они связаны друг с другом. Противник способен действовать на уровне физического мира: взломать дверь и ворваться, забросать бомбами, отнять жизнь и т. д. С помощью Интернета тот же противник может напасть в виртуальном мире: отключить компьютеры и телефонную связь, взломать полицейские компьютеры и поместить ложное объявление о розыске всех членов совета директоров и т. п. Нападения на физические инфраструктуры из виртуального мира могут проводиться на расстоянии, мгновенно и без предупреждения. Они часто оказываются гораздо опаснее нападений на физическом уровне.
Физическая безопасность
Проблему физической безопасности человечество пыталось решать во все времена: как только возникло понятие собственности. Стены, замки и вооруженная охрана – вот средства физической безопасности. Уязвимыми местами являются, например, не снабженная сигнализацией стеклянная крыша, дремлющая по ночам охрана и замки, которые можно открыть фомкой. Долгое время учреждения имели дело со всеми этими проблемами, и большинство из них научились использовать меры физической безопасности, соответствующие реальной угрозе. Они более или менее представляют своих противников и то, какие контрмеры являются достаточными для защиты их имущества.
Разработчики систем безопасности в цифровом мире часто забывают о физической безопасности. Постоянно похищаются портативные компьютеры, в которых хранятся секреты. За один особенно неудачный месяц 2000 года MI5 и MI6 (британские разведывательные службы) лишились портативных компьютеров с секретными сведениями. Возможно, воры не интересовались этой информацией или она была зашифрована, однако никто этого не знает точно. (Британские вооруженные силы, судя по всему, имеют множество проблем с сохранностью портативных компьютеров. В 1991 году компьютер, содержавший секретные указания в связи с Войной в Заливе, был похищен из автомобиля, принадлежавшего Королевским Военно-Воздушным силам. После того как были организованы широко освещавшиеся полицейские мероприятия по розыску преступника, компьютер был возвращен с посланием: «Я – вор, а не изменник».) Удивительно много компьютеров крадут в аэропортах организованные шайки воров при прохождении пассажирами детекторов металла.
Меры физического противодействия часто используются совместно, так чтобы они усиливали друг друга, и обычно это бывает более эффективно, чем использование любой из них по отдельности. Охрана обходит прилегающую к запертому зданию территорию, огороженную забором. Банки используют охрану, сигнализацию, видеонаблюдение и сейфы, снабженные замками, срабатывающими в назначенное время.
Когда эти меры предпринимаются в совокупности, ни одна из них не должна обязательно обеспечивать полную защиту от нападения. Требования, предъявляемые к каждому из средств защиты, зависят от того, какие другие меры безопасности задействованы. Дверного замка стоимостью в 5 долларов может быть вполне достаточно при наличии забора и охраны внутри. А замок стоимостью в 50 долларов окажется бесполезен, если поблизости оставлено открытым окно. Отравленные стрелы будут излишни, если на пути злоумышленника установлены вращающиеся стальные лезвия.
Виртуальная безопасность
Против угроз в виртуальном мире также были разработаны контрмеры. Установка брандмауэра аналогична возведению стен и запиранию дверей. Системы идентификации выполняют функции охраны и напоминают проверку пропусков. Шифрование позволяет создать в киберпространстве «секретную комнату» для конфиденциальных переговоров или электронный сейф для хранения информации.
Хорошая система защиты также использует несколько различных мер безопасности: брандмауэр защищает систему от проникновения посторонних, строгая идентификация дает уверенность в том, что лишь правомочное лицо может войти в нее, а дополнительные гарантии дает шифрование данных при сквозной передаче[49].
Доверенности
Доверенность определяет, кому и как собственник доверяет распоряжаться своим имуществом или его частью. Например, поступающий на работу должен представить достоверную анкету, представленные им рекомендации должны быть проверены, а его прошлое не должно быть омрачено криминальными эпизодами. Если его приняли, то ему выдается служебное удостоверение с фотографией и свидетельство о праве на парковку. Различным группам людей предоставляется право входить в определенные помещения, открывать доступные им файлы или посещать некоторые собрания. Только определенные особы могут подписывать чеки, заключать контракты или проводить финансовые операции. При чрезвычайных обстоятельствах дополнительная гарантия безопасности обеспечивается отстранением от обязанностей: например, лицо, обладающее правом подписывать чеки, оказывается лишенным доступа к компьютеру, создающему подписи. Доверенность предполагает сложную структуру отношений. Некто может обладать правом изменять записи базы данных, но не инженерные спецификации. Другой человек будет, наоборот, иметь право изменять эти спецификации, но не иметь доступа к персональным данным.
В реальном мире не составляет труда определить, кто облечен доверием, а кто нет. Вы знаете, как это выглядит. Если иностранец заходит в офис и достает мелкие деньги, это уже вызывает подозрение. До тех пор пока организация настолько мала, что все лично знают друг друга, атака, связанная с физическим проникновением, практически нереальна. Любая другая организация должна обезопасить себя от шпионов: служащие должны отслеживать появление незнакомцев и при этом не думать ни о чем постороннем (в противном случае люди будут уязвимы для угроз, взяточничества, подкупа, шантажа, обмана и других отвратительных проявлений).
В виртуальном мире проблема гораздо сложнее – нужно обеспечить тот же уровень доверия между людьми без физического присутствия заинтересованного лица, имеющего возможность всегда изменить ситуацию. Например, в физическом мире злоумышленник, который хочет притвориться доверенным членом сообщества, рискует, что его могут найти и арестовать. В виртуальном мире шпион, который проник внутрь системы, представляясь доверенным лицом, гораздо меньше рискует быть обнаруженным и пойманным.
Жизненный цикл системы
В целях промышленного шпионажа можно, например, подключиться к телефонной линии своего конкурента. Затем необходимо рассчитать, как и когда следует провести эту атаку. Оборудование офиса уязвимо в течение всего жизненного цикла: при его проектировании, при сборке, при установке и после того, как оно размещено там, где должно находиться. В зависимости от необходимого уровня доступа нападающий может изменить его свойства на любом из этих этапов. В некоторой точке жизненного цикла советские шпионы поставили «жучки» на пишущие машинки в посольстве Соединенных Штатов. Когда они их поставили? На фабрике в США, во время транспортировки в посольство или во время установки? Мы не знаем точно, но каждая возможность могла быть реализована. И в зависимости от того, насколько серьезной проверке подвергались машинки, «жучки» могли или не могли быть обнаружены.
Точно так же, преступник, который хочет украсть деньги из игрового автомата, имеет выбор: он может, воспользовавшись случаем, внести нужные изменения в схему при установке или взломать автомат, когда тот уже находится в казино. Каждый из этих видов атак имеет свои характерные особенности – сложность, вероятность достижения успеха, рентабельность – но все они допустимы.
Оборудование, использующееся в виртуальном мире – программное обеспечение, работающее на компьютерах, включенных в сеть. Нападающий может его атаковать в любой точке на протяжении всего жизненного цикла. Злонамеренные разработчики программного обеспечения в состоянии сознательно оставить «черный ход» в последней версии операционной системы. Злоумышленник способен поместить троянского коня в наиболее популярный браузер и распространять эту программу бесплатно через Интернет. Он может написать вирус, который будет атаковать программное обеспечение при открытии исполняемого файла во вложении сообщения электронной почты. В его силах проанализировать программное обеспечение, использовать все существующие уязвимые точки. Возможности здесь не ограничены.
Разумное применение мер противодействия
Ландшафт уязвимых точек предоставляет широчайшее поле деятельности для различных видов возможных атак, и поэтому имеет смысл при разработке мер противодействия исходить именно из ландшафта. Идея состоит в том, чтобы защититься от наиболее вероятных угроз, вместо того чтобы защищаться от угроз наиболее явных, игнорируя все остальные.
Не менее важно разумное вложение средств в применяемые меры противодействия. Не имеет смысла тратить кучу денег на самый лучший замок на входной двери, если злоумышленник способен проникнуть через окно. Нерационально тратить 100 долларов на пуленепробиваемое стекло, чтобы защитить имущество, оцениваемое в 10 долларов. Можно сказать, что, например, применять сложные методы шифрования для кабельного телевидения – это то же самое, что «повесить замок на сумку из бумаги».
Ценность чего-либо всегда определяется в зависимости от окружающих условий. До того как стали применяться жесткие диски, подростки иногда воровали в офисах дискеты… поскольку они могли представлять ценность. Некоторые компании потеряли таким образом довольно важные данные. А с другой стороны, маловероятно, что украдут кредитную карточку общей стоимостью около 100 долларов, у которой 0,25 доллара на депозите. Тщательный анализ стоимости очень важен при разработке рациональных мер противодействия телефонному мошенничеству и созданию пиратских копий программного обеспечения.
Следует помнить, что возможный противник далеко не всегда преследует цель обогащения. Иначе как тогда объяснить поведение хакера, который тратит сотни часов на то, чтобы взломать бесполезную компьютерную систему? Многие нападающие стремятся к огласке, или хотят отомстить, или имеют иные, нематериальные цели; помните об этом, когда анализируете ценности.
Также полезно иметь в виду, что блокирования любого из четырех первых шагов атаки достаточно, чтобы ее пресечь. Простые меры противодействия, такие как обучение персонала, грамотная политика безопасности, процедуры, связанные с контролем доступа, являются разумными и рентабельными средствами, позволяющими снизить риск, создаваемый ландшафтом уязвимых точек. Эти простые мероприятия могут значительно повысить сложность и рискованность действий, необходимых для осуществления успешной атаки.
Следующие несколько глав будут посвящены моделированию угроз, оценкам риска и определению необходимых мер противодействия.