Утечка программных кодов Microsoft и ее последствия
Валерий Коржов — обозреватель Computerworld Россия. С ним можно связаться по адресу oscar@osp.ru

По сообщениям пиратских сайтов, подтвержденных пресс-релизами солидных компьютерных компаний, в категорию Piratic Source (исходные тексты коммерческих программных продуктов, доступные пиратам) в результате недавней утечки попали коды браузера Internet Explorer 5.0, почтового клиента Outlook и библиотеки WinSOCK. Долю украденных исходных текстов Windows оценивают по-разному — от 15 до 40%, однако это самые важные с точки зрения безопасности компоненты, поскольку именно они наиболее часто используются при организации нападения через Internet.

Вирусы-невидимки

Тут же появились сообщения, что столь массированное пополнение Piratic Source может привести к созданию программ-вредителей, которые будут абсолютно незаметны антивирусным средствам. Вот, к примеру, цитата из заявления компании «Лаборатория Касперского»: «Становится возможным создание нового поколения вирусов-невидимок, контролирующих взаимодействие с антивирусами и межсетевыми экранами для сокрытия своего присутствия».

Видимо, имеются в виду аналоги rootkit для Win?dows, которые невозможно заметить изнутри операционной системы и которые опознаются только при анализе сетевого трафика (rootkit — своего рода «троянец» для Unix-систем. — Прим. ред.). Однако для создания невидимых программ такого рода, скорее всего, недостаточно украденных исходных текстов: для этого нужна тесная интеграция с файловой системой и с планировщиком задач.

«Архитектура Windows принципиально отличается от Unix, — замечает Владимир Мамыкин, менеджер по системам безопасности московского офиса Microsoft. — Украденных фрагментов недостаточно, чтобы на таком высоком уровне понять работу Windows».

Это, конечно, весомый аргумент против Linux, для которого существуют полностью невидимые на уровне операционной системы экземпляры rootkit, однако в этом есть определенное лукавство, ведь Piratic Source в корне отличается от Open Source. «Исходники» Windows в результате недавнего инцидента попали к компьютерным пиратам, в то время как легальные пользователи практически не могут повлиять на исправление найденных во время анализа ошибок.

Сами по себе открытые исходные тексты не дают преимущества ни нападающим, ни защищающимся: первые с их помощью ищут ошибки, а вторые найденные ошибки оперативно исправляют. Ситуация с Piratic Source, когда нападающие имеют доступ к кодам, а защищающиеся нет, похожа на войну, в которой лишь одна из сторон знает секрет изготовления пороха. Кто в такой ситуации заведомо останется в проигрыше, очевидно: сотрудники служб информационной безопасности.

Конечно, Microsoft с помощью инициатив предоставле?ния отдель?ным группам пользователей части программных кодов пыталась свести ситуацию к прямо противоположной, однако события вышли из-под контроля. Утечка кодов перевернула положение дел с ног на голову: законопослушные эксперты по вопросам безопасности программных систем вынуждены молчать, а до пиратов юридическими мерами не добраться.

Piratic Source не оставляет пользователям возможности оперативно исправить найденные ошибки. Так, сообщения о найденных в последнее время ошибках в драйверах Linux, как правило, сопровождались ссылкой на исправленные версии ядра. В то же время признанная Microsoft ошибка в библиотеке ASN.1 была найдена пять месяцев назад. На вопрос о том, почему так долго исправляли ошибку, последовал ответ — тестировали на совместимость со всеми программными продуктами.

А ведь в компании eEye Digital Security, сотрудники которой нашли «дыру» в библиотеке ASN.1, утверждают, что знают еще семь ошибок, три из которых не менее опасны, но исправлений для них нет до сих пор. Видимо, процесс тестирования затянулся. Конечно, непроверенные исправления могут быть не менее опасны, чем сама ошибка. Но так или иначе у пользователя системы категории Open Source в схожей ситуации хотя бы есть шанс самостоятельно разобраться в корректности исправлений, да к тому же эту работу за него, скорее всего, сделает производитель дистрибутива.

А может, это маркетинг?

Следует напомнить, что произошла утечка кодов достаточно старых операционных систем — Windows NT и Win?dows 2000. Этими ОС все еще пользуются, и до недавнего времени причин для отказа от них вроде бы не было. Однако Microsoft некоторое время назад провела рекламную кампанию, девиз которой мог бы звучать так: «Теперь мы уделяем максимальное внимание безопасности». Отдельные наблюдатели полагают, в таких условиях утечка исходных текстов прежних поколений ОС была как нельзя кстати.

В качестве свидетельства этого приводят уже найденную ошибку переполнения буфера в Internet Explorer 5.x, которая была опубликована через неделю после утечки кодов. Она обнаружила?сь в декодере графическо?го формата BMP и позволяла с помощью специально составленной картинки исполнять любой код на стороне клиента. В сообщении об ошибке содержался фрагмент исходного кода с указанием, в каком файле он находится.

Однако, по признанию самого автора модельного примера («эксплойта»), он не работает в In?ternet Explo?rer 6.0: корпорация исправила эту ошибку во время тотального аудита программного кода перед выпуском Windows XP. Возможно, эта же участь постигнет многие найденные в украденных исходных текстах ошибки. Впрочем, переполнение буфера в библиотеке ASN.1 существовало во всех версиях Windows NT/2000/XP/2003. Насколько актуален попавший к пиратам код, покажет ближайшее будущее.