В целях промышленного шпионажа можно, например, подключиться к телефонной линии своего конкурента. Затем необходимо рассчитать, как и когда следует провести эту атаку. Оборудование офиса уязвимо в течение всего жизненного цикла: при его проектировании, при сборке, при установке и после того, как оно размещено там, где должно находиться. В зависимости от необходимого уровня доступа нападающий может изменить его свойства на любом из этих этапов. В некоторой точке жизненного цикла советские шпионы поставили «жучки» на пишущие машинки в посольстве Соединенных Штатов. Когда они их поставили? На фабрике в США, во время транспортировки в посольство или во время установки? Мы не знаем точно, но каждая возможность могла быть реализована. И в зависимости от того, насколько серьезной проверке подвергались машинки, «жучки» могли или не могли быть обнаружены.
Точно так же, преступник, который хочет украсть деньги из игрового автомата, имеет выбор: он может, воспользовавшись случаем, внести нужные изменения в схему при установке или взломать автомат, когда тот уже находится в казино. Каждый из этих видов атак имеет свои характерные особенности – сложность, вероятность достижения успеха, рентабельность – но все они допустимы.
Оборудование, использующееся в виртуальном мире – программное обеспечение, работающее на компьютерах, включенных в сеть. Нападающий может его атаковать в любой точке на протяжении всего жизненного цикла. Злонамеренные разработчики программного обеспечения в состоянии сознательно оставить «черный ход» в последней версии операционной системы. Злоумышленник способен поместить троянского коня в наиболее популярный браузер и распространять эту программу бесплатно через Интернет. Он может написать вирус, который будет атаковать программное обеспечение при открытии исполняемого файла во вложении сообщения электронной почты. В его силах проанализировать программное обеспечение, использовать все существующие уязвимые точки. Возможности здесь не ограничены.
Разумное применение мер противодействия
Ландшафт уязвимых точек предоставляет широчайшее поле деятельности для различных видов возможных атак, и поэтому имеет смысл при разработке мер противодействия исходить именно из ландшафта. Идея состоит в том, чтобы защититься от наиболее вероятных угроз, вместо того чтобы защищаться от угроз наиболее явных, игнорируя все остальные.
Не менее важно разумное вложение средств в применяемые меры противодействия. Не имеет смысла тратить кучу денег на самый лучший замок на входной двери, если злоумышленник способен проникнуть через окно. Нерационально тратить 100 долларов на пуленепробиваемое стекло, чтобы защитить имущество, оцениваемое в 10 долларов. Можно сказать, что, например, применять сложные методы шифрования для кабельного телевидения – это то же самое, что «повесить замок на сумку из бумаги».
Ценность чего-либо всегда определяется в зависимости от окружающих условий. До того как стали применяться жесткие диски, подростки иногда воровали в офисах дискеты… поскольку они могли представлять ценность. Некоторые компании потеряли таким образом довольно важные данные. А с другой стороны, маловероятно, что украдут кредитную карточку общей стоимостью около 100 долларов, у которой 0,25 доллара на депозите. Тщательный анализ стоимости очень важен при разработке рациональных мер противодействия телефонному мошенничеству и созданию пиратских копий программного обеспечения.
Следует помнить, что возможный противник далеко не всегда преследует цель обогащения. Иначе как тогда объяснить поведение хакера, который тратит сотни часов на то, чтобы взломать бесполезную компьютерную систему? Многие нападающие стремятся к огласке, или хотят отомстить, или имеют иные, нематериальные цели; помните об этом, когда анализируете ценности.
Также полезно иметь в виду, что блокирования любого из четырех первых шагов атаки достаточно, чтобы ее пресечь. Простые меры противодействия, такие как обучение персонала, грамотная политика безопасности, процедуры, связанные с контролем доступа, являются разумными и рентабельными средствами, позволяющими снизить риск, создаваемый ландшафтом уязвимых точек. Эти простые мероприятия могут значительно повысить сложность и рискованность действий, необходимых для осуществления успешной атаки.
Следующие несколько глав будут посвящены моделированию угроз, оценкам риска и определению необходимых мер противодействия.
Глава 19
Моделирование угроз и оценки риска
Моделирование угроз – это первый шаг в решении проблемы безопасности. Это попытка осмыслить информацию, которую можно извлечь из ландшафта уязвимых мест. Что может оказаться реальной угрозой для системы? Если вы не знаете этого, как вы можете определить, какие меры противодействия нужно использовать?
Моделирование угроз – трудное дело, и успех в нем приходит только с опытом. Для его осуществления необходимо использовать системный подход и хорошо представлять себе все особенности ландшафта. Как лучше провести нападение на систему? Я нахожу, что истинные хакеры весьма искусны в решении этого вопроса, и может быть, компьютеры их привлекают в первую очередь именно возможностями интеллектуальной игры. Хакеры получают удовольствие, размышляя о недостатках систем: как можно их одолеть, почему это возможно и что при этом будет происходить? Они испытывают наслаждение, заставляя систему делать то, для чего она не была предназначена. Те же чувства испытывает умелец, способный переделать двигатель своего автомобиля, чтобы он работал так, как ему хочется, а не так, как предполагал его производитель. Такое же удовольствие получает хакер, взламывающий брандмауэр через Интернет, чтобы убедиться в том, что он способен «овладеть» чужим компьютером.
Я пришел к выводу, что наилучшими экспертами в области безопасности являются люди, исследующие несовершенства защитных мер. Они идут на избирательный участок, размышляя о том, как можно было бы в обход установленного контроля проголосовать дважды. Когда они пользуются телефонной карточкой, они думают о средствах защиты от мошенников и о том, как можно их обойти. Эти размышления вовсе не обязательно подталкивают их к конкретным действиям, и если они обнаруживают, например, появившееся «слепое пятно» в системе видеонаблюдения в магазине, это не означает, что они тут же предпримут попытку кражи.
Моделирование угроз имеет с описанной ситуацией много общего, и единственный способ изучить проблему – это практика. Начнем с кражи блинов.
Наша цель – поесть бесплатно в местном ресторанчике. Для этого у нас есть много возможностей. Можно поесть и убежать. Можно расплатиться подложной кредитной картой, фальшивыми чеком или наличными. Можно выманить посетителя из ресторана и съесть его блюдо. Можно прикинуться (а то и стать на самом деле) поваром, официантом, управляющим или хозяином (которого видели всего лишь несколько работников). Можно стащить тарелку с чужого столика или из устройства для подогрева, опередив официанта. Можно подождать у мусорного бака, когда вынесут выбрасывать объедки. Можно включить пожарную сигнализацию и вволю попировать в полном одиночестве. Можно представиться управляющему некоей знаменитостью, могущей рассчитывать на бесплатный завтрак, или найти доверчивого клиента, которого можно уговорить заплатить за нас. Можно ограбить кого-нибудь поблизости от ресторана и расплатиться за еду. Можно подделать талон на бесплатное обслуживание. А кроме того, есть освященная веками традиция – ворваться с ружьем и прокричать: «Гоните сюда все ваши блины!».
Вероятно, существует множество других возможностей, но у нас уже есть общее представление. Взглянув на приведенный перечень, не так трудно понять, что большинству нападающих ничего не нужно делать в тот момент, когда деньги переходят из рук в руки. Это любопытно, поскольку означает, что безопасность системы платежей не защищает от кражи блинов.
Подобная ситуация складывается и в цифровом мире. Представим себе хранилище блинов в Веб – большинству нападающих не придется иметь дело с системой электронных платежей. Существует множество других уязвимых мест. (Вспомните изящное нападение через веб-страницу на корзину для покупок, описанное в главе 10, когда нападающий мог изменять цены товаров произвольным образом. Здесь кроется возможность для подобного нападения: можно изменить прейскурант таким образом, что блин будет стоить 0,00 долларов.) Наиболее успешные нападения редко проводятся на физическом уровне.
Честные выборы
Перейдем к более значительным и интересным проблемам. Займемся проведением выборов. Это будут местные выборы – мэра города. Жульничество на выборах старо, как сами выборы. Насколько это трудно?