Полное раскрытие
Насколько подробным должно быть сообщение о найденной уязвимости? Какая информацию, кроме необходимой для воспроизведения проблемной ситуации, должна быть обнародована? Стоит ли делать код, использующий уязвимость, доступным широкой публике? Все эти вопросы так или иначе имеют отношение к концепции полного раскрытия (full disclosure), согласно которой обнародованию подлежат все аспекты проблемы. Считается, что пользователям должна быть предоставлена информация, позволяющая воспроизвести ситуацию. Кроме того, необходимо вообще дать им как можно больше информации о проблеме, включая код, использующий уязвимость. Дебаты о концепции полного раскрытия идут до сих пор, ведь у нее имеются и отрицательные стороны. Например, при таком подходе хакеры получают информацию о слабых местах системы, а код, использующий уязвимость, может быть сразу же использован для вторжения. Чтобы лучше понять концепцию полного раскрытия, потребуется историческая справка.
Раньше информация о проблемах безопасности распространялась только среди специалистов. Когда производители получали информацию об уязвимых местах, обнаруженных в их продуктах, они вообще никак не поступали с этой информацией или, в лучшем случае, дожидались, когда выйдет следующая версия продукта, чтобы внести исправления. Широкой публике не сообщалось об этом, так что никто и не знал, что вообще были какие-то проблемы с безопасностью.
Недостаток такого подхода состоит в том, что пользователи не осознают, насколько уязвимо программное обеспечение, которым они пользуются, и, соответственно, не понимают, насколько важно вовремя его обновлять, а также не требуют от производителей более надежных продуктов. Поскольку клиентов мало беспокоит безопасность, производители перестают считать надежность своей продукции первоочередной задачей. В свою очередь потребители не могут составить мнение о том, насколько безопасным является тот или иной продукт, поскольку отсутствует соответствующая информация от производителей. Таким образом, возникает порочный круг.
Ситуация осложняется тем, что даже информация, доступная только узкому кругу специалистов, имеющих непосредственное отношение к проблеме, иногда каким-то образом становится известной хакерам. Впрочем, изредка хакеры самостоятельно обнаруживают те самые уязвимые места, о которых говорят в узких кругах экспертов по безопасности. Некоторые хакеры сделали своей мишенью компьютеры экспертов по безопасности, где они надеются почерпнуть сведения об обнаруженных уязвимостях. Если удается взломать компьютер эксперта и получить новую информацию об уязвимостях, дальнейшее проникновение в чужие системы упрощается.
По большей части пользователи не осведомлены даже о существовании многочисленных проблем безопасности, не говоря уж о способах борьбы с ними. В результате неосведомленность публики и осведомленность хакеров привели к тому, что число удачных атак стало угрожающе расти.
Концепция полного раскрытия явилась попыткой решить эти проблемы. Люди, придерживающиеся данной концепции, обнародуют все детали обнаруженных ими проблем безопасности, что позволяет другим пользователям воссоздать проблемную ситуацию. Применение концепции полного раскрытия на практике имело следующие последствия.
• Прежде всего пользователи начали понимать, насколько ненадежны программные продукты, с которыми они работают.
• Во многих случаях время, в течение которого система оставалась уязвимой, было минимизировано, так как пользователи получили возможность самостоятельно тестировать свою систему в целях обнаружения проблем безопасности и быстро их устранять, вместо того чтобы ждать, пока это сделает производитель.
• Производители были вынуждены оперативно выпускать пакеты обновлений, устраняющих изъяны. Поскольку пользователей стали интересовать проблемы безопасности, надежность программного обеспечения и услуг стала для производителей приоритетной задачей.
• Вырос интерес к вопросам компьютерной безопасности в целом, так как теперь пользователи получили возможность учиться на ошибках других и самостоятельно искать уязвимые места различных приложений.
К сожалению, полное раскрытие имеет и отрицательную сторону. Публикация полной информации о проблемах безопасности не только позволяет действующим из лучших побуждений пользователям самостоятельно контролировать свою систему, но и дает возможность людям с менее благородными устремлениями искать уязвимые места чужих компьютеров. К сожалению, невозможно предоставлять информацию только благонамеренным лицам, поэтому одновременно происходит и обучение хакеров. Но предположим, что некоторые хакеры уже имеют доступ к информации о какой-либо уязвимости и распространяют эти сведения в своей среде. Тогда в любом случае, как с полным раскрытием, так и без него, хакеры осведомлены об этой уязвимости. По крайней мере, при полном раскрытии люди, заинтересованные в том, чтобы вовремя исправлять вновь обнаруженные изъяны, имеют шанс устранить уязвимость до того, как ею воспользуются злоумышленники.
Перед тем как сделать информацию о найденной уязвимости достоянием широкой общественности, рекомендуется связаться с производителем соответствующего программного обеспечения. В результате работа над исправлениями начнется примерно тогда же, когда пользователи узнают о существующих проблемах.
Даже в наши дни следует быть осторожным и позаботиться о том, чтобы информация об уязвимости не попала в руки злоумышленников, в то время как производитель с вашей помощью пытается решить проблему. Например, в июле 1999 года была обнаружена уязвимость службы rpc.cmsd в системе Sun Solaris. Есть подозрения, что один из вариантов использования этой уязвимости был придуман хорошо известной фирмой, специализирующейся в области компьютерной безопасности. Создавалось впечатление, что в процессе исследования этой уязвимости произошла утечка информации. Очевидно, что при таких обстоятельствах требовались особое внимание и осторожность, чтобы избежать преждевременного распространения сведений до тех пор, пока уязвимость не была устранена.
...
Приоткрывая завесу
Фирма Microsoft против полного раскрытия
В последнем квартале 2001 года после сообщения группы Gartner, предостерегающего против использования серверов Microsoft IIS из-за наличия многочисленных уязвимых мест, фирма Microsoft выразила свое недоверие концепции полного раскрытия. Прежде всего менеджер по безопасности фирмы Microsoft Скотт Капп (Scott Culp) написал едкую статью (www.microsoft.com/technet/treeview/default.asp?url=/ technet/columns/security/noarch.asp), в которой сравнил ее с криками «Пожар!» на театральной сцене (забыв, впрочем, указать, что в данном случае действительно происходит пожар).
Фирма Microsoft вступила в сговор с такими специализирующимися на безопасности компаниями, как Bindview, Foundstone, Guardent, @Stake и Internet Security Systems. Их объединяла общая цель – дискредитировать концепцию полного раскрытия. Вместо полного раскрытия они предложили действовать следующего образом: ввести 30-дневный буферный период, в течение которой обычные пользователи будут получать весьма неопределенную информацию о возможном возникновении проблем безопасности, в то время как члены коалиции (а также те, кто подписал соглашение об отказе от полного раскрытия) будут получать всю информацию о вновь обнаруженных уязвимостях. По истечении этого срока пользователи должны были получить более детальные сведения, но при этом предполагается, что публикация кода, использующего уязвимость, будет строго запрещена, чтобы исключить возможность его применения для атаки.
Объединение фирм планирует выпустить документ RFC с описанием нового порядка действий, согласно которому полное раскрытие будет запрещено, а сообщение о найденных уязвимостях следует направлять непосредственно производителю, не делая его достоянием широкой публики. Если этот документ будет одобрен проблемной группой проектирования Internet (Internet Engineering Task Force, IETF), с его помощью можно будет принудить независимых исследователей компьютерной безопасности следовать предписанной процедуре.
Так как в последние годы фирма Microsoft получила многочисленные негативные отзывы о безопасности разрабатываемых ими систем, которые закономерно последовали в результате успешной деятельности бесчисленных червей и компьютерных вирусов, вряд ли стоит удивляться, что они предлагают принять такой стандарт. В конце концов, если затруднить публикацию сведений об уязвимостях, количество негативных отзывов о фирме в прессе уменьшится, даже если она ничего не будет делать для повышения степени надежности производимых ею систем. Предлагаемый новый стандарт выгоден фирме Microsoft более чем кому бы то ни было из производителей, потому что информация об уязвимости будет публиковаться в соответствии с установленными ею правилами. Кроме того, опираясь на него, можно будет оказывать давление на остальных членов организации. Если созданное объединение фирм решит брать за членство в своей организации вступительные взносы, многочисленные разработчики программных продуктов с открытым исходным кодом останутся за бортом.