Крис Касперский - ТЕХНИКА СЕТЕВЫХ АТАК
Но стоимость даже самого навороченного ПК в глазах корпоративных пользователей ничтожна в сравнении с предоставляемыми NT возможностями. Не будет большой ошибкой сказать, что Windows NT - та же UNIX, но построенная по новым технологиям с учетом ошибок своей предшественницы. Базовые концепции UNIX сформировались в тот далекий период, когда никакой стройной теории безопасности не существовало, и разработчики действовали скорее наугад, чем целенаправленно. В главе «Безопасность UNIX» рассказывается о проблемах отладки приложений под UNIX, - во имя безопасности разработчики оказались поставлены в очень невыгодное положение, и частенько решали задачу модификацией ядра, снимая «лишние» (с их точки зрения) защиты.
Защита не должна мешать легальным пользователям, но должна уметь противостоять любому, даже самому хитрому, злоумышленнику, пытающемуся проникнуть в систему. В Windows NT защитные механизмы полностью интегрированы в ядро, а не были добавлены в систему позже, как это произошло с UNIX.
Желая привлечь к себе как можно больше клиентов, Microsoft поставила цель - научить новую систему выполнять приложения, написанные для OS/2, 16-разрядные приложения Windows и обеспечить легкий перенос программного обеспечения UNIX. Но к началу девяностых конфликт между Microsoft и IBM достиг апогея, и Microsoft, наблюдая сокращения рынка пользователей OS/2, внезапно поменяла свои планы.
Отныне она сосредоточилась на Windows - подобных операционных системах, и одела NT в графическую оболочку, визуально неотличимую от интерфейса Windows 3.x. О целесообразности этого шага, аналитики спорят до сих пор. Недружелюбный к разработчикам графический интерфейс вызывал пренебрежение к новой системе всех поклонников UNIX. С другой стороны, он привлек начинающих пользователей и обеспечил легкий переход на Windows NT с Windows 3.x (да только много ли корпоративных клиентов в глаза видело Windows 3.x?).
Программистский интерфейс win32 API, первоначально задумывавшимся одной из подсистем, стал основным способом общения приложений с операционной системой, а стремление компании обеспечить совместимость с программами, написанным для OS/2, исчезло. Операционная система Windows NT стала в первую очередь ориентирована на работу со своими родными 32-разрядными приложениями, и не гарантировала корректного выполнения программного обеспечения, созданного для 16-разрядной Windows и MS-DOS.
Первая публичная версия Windows NT 3.1 появилась на рынке 24 мая 1993 года. Реакция разработчиков была не однозначна. Устойчивость и защищенность системы (не свободной, впрочем, от шероховатостей) противостояли умопомрачительным системным требованиям. Комфортная работа обеспечивалась при наличии, по крайней мере, 16-32 мегабайт оперативной памяти и быстрого процессора (а лучше сразу двух). В начале девяностых цены на микросхемы оперативной памяти еще оставались высокими, и далеко не все считали переход на Windows NT чем-то целесообразным.
Смущала и явная избыточность системных вызовов, - многие функции оперировали десятками аргументов, сложными структурами данных, которые были слишком трудны для запоминания. Однако разработчики осознавали - при такой агрессивной маркетинговой политике Microsoft, переход на Windows NT неизбежен, пускай и растянется на несколько лет.
Рынок «персональных пользователей» вообще проигнорировал появление Windows NT, поскольку мало кто из них располагал аппаратными ресурсами требуемой мощности. Поэтому, Microsoft задумалась о выпуске «облегченной» Windows NT, хотя бы сносно запускающейся на массовых компьютерах. В середине девяностых «массовый компьютер» подразумевал собой 80386 процессор, оснащенный 4 мегабайтами оперативной памяти.
Перед разработчиками стояла задача - втиснуть большинство функций win32 API в это скромное пространство, обеспечивая возможность запуска и работы с 32-разрядными приложениями, созданными для Windows NT. Фактически от NT новая система отличалась бы отсутствием защиты и переносимости.
Действительно, подсистема защиты один из самых «прожорливых» компонентов Windows NT. Выкинув защиту и отказавшись от переносимости, удалось бы значительно увеличить производительность системы, переписав критический код на оптимизированном ассемблере.
Но лимит в четыре мегабайта стал настоящим кошмаром для разработчиков, вынужденных изощряться всеми мыслимыми и немыслимыми способами, лишь бы втиснуться в это крошечное пространство. В результате пришлось пойти на ряд существенных упрощений, значительно ухудшивших совместимость с Windows NT.
В кругу разработчиков новая система была известна под именем «Chicago», но в продажу она поступила под официальным названием «Windows 95». Интенсивная телевизионная реклама не осталась не замеченной и 24 августа 1995 года, в первый день продаж Windows 95 в очереди на ней стояли даже люди, не имеющие ни компьютера, ни отношения к вычислительной технике вообще.
Началась массовая миграция с MS-DOS и Windows 3.x на Windows 95, и очень быстро Windows 95 стала единственной, практически безальтернативной операционной системой, установленной на миллионах компьютеров. «Если вы программируете, - то вы программируете под Windows 95» убеждали программистов пользователи и распространители программного обеспечения. Программы MS-DOS исчезли с прилавков магазинов и страниц компьютерных журналов, - мир окунулся в Windows 95, и не собирался выныривать.
Тем временем, Microsoft поглядывала на “hi-end” рынок серверов и рабочих станций, оснащенных операционной системой UNIX, упорно игнорирующих новики прогресса. Недостаточное быстродействие Windows NT препятствовало ее продвижению на рынок. Тем более, архаичный интерфейс NT 3.x не шел ни в какое сравнение с дружелюбностью Windows 95 и породил конкуренции внутри Microsoft - покупатели, приобретали Windows 95, откладывая покупку NT на потом, выжидая когда компания перенесет в нее новый интерфейс.
И вот 31 июля 1996 года вышла Windows NT 4.0. Это был тот редкий случай, когда очередная версия программного обеспечения требовала аппаратных ресурсов значительно меньше своих предшественниц. Разработчики приложили титанические усилия в оптимизации кода Windows NT, перенесли весь GUI (Графический интерфейс пользователя) в ядро и ускорили вызовы наиболее употребляемых функций.
Логотип Windows NT 4.0
Вместе с этим компания исправила ряд досадных ошибок и шероховатостей, имевших место в предыдущих версиях, отчего система стала значительнее надежнее, устойчивей и защищенной. Конечно, устранение одних ошибок, порождало другие и атаки систем, оснащенных Windows NT 4.0, не прекращались, но Microsoft сумела отвоевать у UNIX аппетитный кусок рынка и продолжила дальнейшее наступление.
В результате в Internet оказалось множество серверов, оснащенных Windows NT, а в локальных корпоративных сетях Windows NT стала стандартом де-факто. Вместе с захватом рынка операционных систем, Microsoft монополизировала рынок WEB-браузеров, интегрировав Internet Explorer с Windows 95 и Windows NT. У пользователей отпала необходимость приобретать продукты сторонних фирм. Основной конкурент Microsoft - фирма Netscape не только не могла предложить ничего принципиального нового, отсутствующего в Internet Explorer, но и проигрывала в устойчивости работы - Netscape Navigator очень часто «зависал», «рушился», «спотыкался» на скриптах и заковыристых HTML-конструкциях. Были, конечно, и у него свои приверженцы, но большинство пользователей, не раздумывая, выбирало продукцию Microsoft.
А сама Microsoft интенсивно выталкивала Netscape с рынка. «…Netscape непомерно разрекламировала Navigator как программу просмотра AOL в своей службе GNN Internet. Был фурор. Аналитики провозгласили рождение совместного предприятия, предсказывая, что оно укрепит положение фирмы Netscape как лидера. Днем позже выступила Microsoft и быстро перехватила инициативу. Внезапно AOL согласилась сделать Explorer основным браузером для пяти с лишним миллионов своих абонентов. Взамен AOL обеспечила себе место на рабочем столе Windows 95.» [138]
В свою очередь ребята из Netscape вместо того, чтобы плотно сеть за кодирование, подали на Microsoft в суд, пытаясь обвинить ее в нечестной конкуренции, и потребовали изъять браузер из операционной системы. Интересно, но ведь Windows, помимо браузера содержит еще утилиты проверки и дефрагментации диска, но это не мешает Питеру Нортону продавать свои программы; еще в Windows есть графический редактор, но никто не видит в нем конкурента PhotoShop. Почему? Сторонние производители сумели обогнать Microsoft и выпустить нечто принципиально новое. Напротив же, Netscape и Explorer близнецы - братья, функционально неотличимые друг от друга.
Непонятно, почему суд стоит на стороне Netscape, поддерживая откровенно глупый иск, кстати, ущемляющий интересы пользователей (которых бесплатный Explorer вполне устаивает, а покупать продукцию Netscape неохота) и тормозящий прогресс (интеграция с браузеров облегчает создание объективно ориентированных интерфейсов).