Пару слов о безопасности

"Безопасность - состояние защищенности жизненно-важных интересов личности, общества, организации от потенциально и реально существующих угроз, или отсутствие таких угроз".

Википедия

Сегодня неизвестный злоумышленник проник в компьютерную сеть корпорации "Рога и Копыта". По сообщениям представителей компании, ущерб, нанесенный хакером, равняется двум миллионам космокредитов. Правоохранительные органы начали расследование происшествия. По предварительным данным, виной всему беспечность администратора и операционная система "Hinged Window-Pane for Ventilation" от компании Microdumb.

Примерно такими заголовками пестрит компьютерная и околокомпьютерная пресса последние года два. Хакеры, всемогущие повелители Интернета, не оставляют бедного пользователя в покое ни на минуту, и единственный способ не пасть жертвой очередной атаки - это отключить Интернет. И никто даже не задумывается, что под очередной "сенсационной" статьей находится реклама какой-либо антивирусной лаборатории. Старожилы должны помнить "проблему 2000 года". Где только не муссировались слухи о скором закате компьютерной индустрии: в прессе, по телевидению, в Интернете. Предсказанный конец так и не наступил, зато акулы пера тут же выдумали новую проблему, дескать, конец Мировой Паутины уже как никогда близок, а специалисты даже и не думают предупредить об этом бедных пользователей.

Из пустоты ничего не возникает, как учат нас трактаты по физике. И беда заключается в том, что такие слухи распространяют не только журналисты, которые за деньги напишут вам все, что вашей душе угодно, но и представители вполне респектабельных антивирусных компаний. Надо же им как-то продвигать в народ свои товары, а маркетинг, знаете ли, тоже разный бывает. Вот и пугают пользователей мнимыми угрозами.

Я не стану спорить, что компьютерные вирусы за последние пять лет стали распространяться с ужасающей скоростью и уже не поддаются никакому учету. Новые штаммы очередной малвари появляются чуть ли не ежеминутно, причем изменения, вносимые в тело вируса, минимальны, однако крупные компании все чаще стали рапортовать о миллионных убытках. И виной тому даже не реверсеры - любой человек просто физически не сможет дизассемблировать и исследовать зловредный код за считанные секунды. Оттого и появляются ложные срабатывания антивируса, когда, казалось бы, безобидный Notepad++, к примеру, является ужаснейшим вирусом Win32 Neshtaa, и было бы неплохо его удалить, дабы не допустить потери конфиденциальной информации. Конечно, глобальные эпидемии иногда случаются (все помнят Conficker?), но.... Любой бизнес основан на риске, а идеально защищенных систем не бывает в природе, и все, что написал человек, может быть взломано им же.

Если обратить внимание на статистику, любезно предоставляемую нам антивирусными компаниями, то в глубине души возникают совершенно противоречивые чувства. Кто-то заверяет, что мы в полной безопасности, и массовых эпидемий уже не случится (что лично меня немного удивляет), а другие, напротив, рапортуют о разработанном в недрах компании proof-of-concept exploit'е, способного пройти любые защитные механизмы в считанные секунды. Хакеров останавливают лишь вездесущие спецслужбы, активно борющиеся с киберпреступлениями. Зная уровень подготовки сегодняшних стражей порядка (кроме меня, никто не удивился истории о тринадцатилетнем оршанском хакере?), можно сделать вывод, что злоумышленников останавливает не страх перед наказанием, а отсутствие смекалки для изобретения новых способов обхода защитных механизмов.

За все время существования человеческой цивилизации было рождено немало мифов. Это сейчас, в двадцать первом веке, мы с уверенностью можем сказать, что чернокнижники и ведьмы - сказки святой инквизиции, зато в пятнадцатом веке люди так не считали. На мой взгляд, то же самое творится и сейчас, а именно - массовое помрачение общественного сознания в страхе перед неизвестным. Мало кто из пользователей сможет объяснить, как работают компьютерные вирусы, еще меньшее количество народу их дизассемблировало. Бывалый реверсер скажет вам, что написание долгоживущего вируса - задача, справиться с которой может далеко не каждый вирусописатель. Зачастую все ограничивается тем, что вирус попадает в базу какой-либо компании, и специально обученные люди изучают алгоритмы вторжения, которыми пользовался вирус.

Так что же мешает крупным компаниям ввести в эксплуатацию свободное программное обеспечение, к примеру, операционные системы на основе xBSD или Linux? Ответ прост и лаконичен: "Эти системы не предназначены для настольных решений". Вранье! Причем наглое. Многие западные компании успешно используют компьютеры Mac, которая является той же xBSD, только с красивым "лицом". Тем более, что все популярные офисные решения давно портированы под Mac: будь то Microsoft Office или Adobe Photoshop. Но даже на Западе многие руководители опасаются заменять Windows на что-то более безопасное, так как поддержка компьютеров с *nix на борту существенно отличается от тех же самых компьютеров под управлением Windows. В защиту хочется сказать лишь одно: все дело в привычке. Человек, десять лет проработавший в операционных системах от всем известной корпорации, просто физически не сможет привыкнуть к "новым" интерфейсам вроде GNOME или KDE. С этим уже ничего не поделаешь.

Основное достоинство UNIX в том, что системных вызовов там - около сотни, реально используются около сорока из них. Для сравнения, Windows содержит что-то около 100 тыс. API-функций, вызываемых ядром из тысяч мест, причем с сотней разношерстных параметров. Программист, пусть даже очень опытный, вынужден таскать с собой кучу учебников, чтобы хоть как-то ориентироваться в хаосе операционной системы. А если бы парни из корпорации Microsoft внимательно слушали лекции в своих университетах, то проблем в их ОС было бы гораздо меньше. Именно в университете на пальцах разъясняют принцип Keep It Simple Stupid (оставь это простым, болван), если следовать которому, большинство ошибок проектирования как рукой снимает. Если вы все еще не уверены, то ознакомьтесь с операционной системой OpenBSD.

Linux за несколько последних лет уже не вызывает ужаса в глазах обывателей. Нацепив приятный интерфейс (привет, KDE!), обзавелся графическими мастерами, в общем, вплотную приблизился к Windows. И именно это меня и пугает: попытки научить систему тому, что должен делать администратор, уже были, и наиболее удачная из них - Windows 7, где ОС лучше знает, что и как должно работать. Корпорация Microsoft упорно настаивает на том, что свобода и безопасность - взаимно исключающие понятия. Автоматика, конечно, вещь хорошая, но только не тогда, когда речь заходит о безопасности. Искусственный интеллект еще далек от совершенства, и все его "выдумки", сверхсовременные эвристические механизмы обходятся буквально за пару часов работы, и остановить малварь, написанную гуру вирусописательства, они не в состоянии. То же можно сказать и о современных межсетевых экранах и антивирусах. Моя подруга, к примеру, вряд ли задумается над сообщением брандмауэра, которое рассказывает ей об изменении контрольной суммы исполняемого файла. Любой неискушенный пользователь, не задумываясь, нажмет кнопку "Yes" и продолжит работу. Так, может, создателям защитного программного обеспечения стоит задуматься о внедрении некой автоматики в свои продукты? Опытный пользователь будет получать полный отчет о событиях, фиксируемых межсетевым экраном, а новичок получит режим "автопилот", в котором программа сама решит, стоит ли расценивать то или иное действие как угрозу безопасности. Но это - идеал, которого не достичь, и среднестатистический пользователь не должен впадать в ступор, слыша слова "протокол" или "порт". Но, как я могу судить, квалификация преподавателей информатики, что в школах, что в высших учебных заведениях, оставляет желать лучшего, и единственное, на что способны такие "учителя", - рассказать, как же правильно строить таблицы в Excel.

Мудрость, проверенная годами: "как не ограничивай права пользователя в Windows, все равно он, гад, может навредить". Было бы желание, как говорится. Тем более, даже в бизнес-секторе существуют тысячи (если не миллионы) программ, элементарно не работающие в том случае, если не дать им администраторских прав. И вина в этом отнюдь не разработчика, а самой корпорации Microsoft, которая запрещает "левым" программам устанавливать свои драйверы в систему из-под непривилегированного пользователя. Как итог - администратор устанавливает десять/сто/тысячу (нужное подчеркнуть) сторонних модулей, один из которых, по закону подлости, непременно окажется уязвим.

У читателя, должно быть, сложилось впечатление, что я всячески пытаюсь отговорить его от использования продуктов корпорации Microsoft и перейти на открытое программное обеспечение. Уверяю вас, это не так. По моему скромному мнению, проприетарное ПО ничуть не хуже открытого, и все проблемы с безопасностью лежат аккурат между пользователем и клавиатурой. Любая операционная система состоит из миллионов строк кода, некоторые из них не изменяются десятилетиями (в Windows Server 2008 R2 есть ряд компонентов, написанных еще в 88-90 годах прошлого века), и переписывание кода "с нуля" применяется лишь в редких случаях. Зачастую на код накладываются все новые и новые слои абстракции, в итоге образующие весьма шаткое сооружение. Исключив всего один компонент, программист рискует "поломать" целую программу, что весьма негативно отразится и на его, программиста, зарплате. Вот и получается, что некоторые фрагменты кода, спроектированные еще в восьмидесятых, сейчас сталкиваются с условиями, работать в которых им весьма проблематично.

А если в мире остались евангелисты, свято верующие в то, что горячо любимый ими Linux был написан с нуля, то... счастливые они люди! Линус Торвальдс написал свою операционную систему, основываясь на учебной ОС Minix, и, впоследствии, не раз "слизывал" куски кода у xBSD. В этом и состоит фундаментальная проблема программирования: постоянное совершенствование старого кода уменьшает количество наслоений и, соответственно, количество ошибок. Взять, к примеру, две системы из семейства xBSD: OpenBSD и FreeBSD. Первая десятилетием отшлифовывала свой код и добилась потрясающих результатов: всего две критические уязвимости за все время существования, а вторая же... В общем, дела там обстоят многим хуже. А про операционные системы семейства Windows даже и говорить не хочется - достаточно взглянуть, насколько потяжелел дистрибутив Windows 7, по сравнению с Windows XP. Ну а что касается Linux - в своем стремлении переманить пользователя некоторые создатели дистрибутивов постепенно лишают нас всякой возможности по самостоятельной настройке системы, заменяя командную строку графическим интерфейсом. Для профессионалов такие "телодвижения" слишком уж, простите, противны, а для новичков Linux все еще не достиг того уровня, который позволит пользователю "безболезненно" мигрировать с Windows. И ведь говорят, что 2010 год - год Линукса на десктопах. А я улыбаюсь, понимая, что где-то я это уже слышал. В конечном итоге, на мой взгляд, Linux в своем стремлении объять необъятное разрастется в чудовище похуже, чем то, что сейчас предлагает нам Microsoft. Либо возвратится к истокам, смирившись с ролью операционной системы для энтузиастов и ударников пролетариата.

Кристиан КАРМАК

Версия для печатиВерсия для печати

Номер: 

12 за 2010 год

Рубрика: 

Размышлизмы
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!

Комментарии

Страницы

Аватар пользователя Логик
mike (old student) > Вздор. Можно писать и без дыр.

НИЗЗЯ!!!

"результаты хакерского конкурса Pwn2Own, победители которого, два специалиста по безопасности, успешно воспользовались уязвимостями в Internet Explorer и Firefox, запущенными в среде Windows 7. Они и выиграли главный приз в 10 000 долларов.

Пит Липейдж, менеджер по продукции из подразделения разработки Internet Explorer, высказался в защиту функций DEP (предотвращение исполнения данных) и ASLR (рандомизация адресного пространства), которыми воспользовались победители конкурса. Он упомянул также защищенный режим Internet Explorer. "Технологии глубокой защиты не предназначены для отражения всех мыслимых атак, - сказал он. - У них другая цель - существенно затруднить эксплуатацию уязвимости".

Технология DEP впервые появилась в 2004 году в Windows XP SP2, ее основная задача - предотвращать выполнение вредоносного кода в области памяти, не предназначенной для выполнения. Функция ASLR появилась в Windows Vista три года назад, она в случайном порядке распределяет положение ключевых областей памяти, в частности стэка, чтобы хакерам было сложнее предсказать, где произойдет выполнение их кода. Защищенный режим - это так называемая "песочница" для Internet Explorer, когда браузер запускается с ограниченными правами, что усложняет хакеру задачу модифицировать данные системы вне браузера. Все эти средства действуют и в Windows 7.

...победитель Pwn2Own, Чарли Миллер, сказал "Никакие улучшения безопасности не смогут помешать исследователям выигрывать (такие конкурсы)... По-прежнему невозможно быть в полной безопасности даже на компьютере со всеми обновлениями".

НИЗЗЯ!!! НИЗЗЯ!!! НИЗЗЯ!!!

Аватар пользователя mike
>И через сертификацию в "ГБ" проходило?

В БГ и БС да. В ГБ сертифицировать не приходилось. Отдавал на экспертизу исходники (без комментов!). Зафиксировали контрольные суммы "опуса". И всё.

>НИЗЗЯ!!! НИЗЗЯ!!! НИЗЗЯ!!!

Можно, соблюдая определённые правила, но это замедляет разработку. Начинать холивар неохота.

Аватар пользователя mike
>я считаю всё дело в качестве исполнения

И я так считаю.

Аватар пользователя Логик
mike (old student) > Можно, соблюдая определённые правила, но это замедляет разработку.

Правила есть, и замедляет, но - НИЗЗЯ. все равно НИЗЗЯ.

Аватар пользователя mike
>НИЗЗЯ. все равно НИЗЗЯ.

А я говорю ЛЬЗЯ! :)

Аватар пользователя mike
Что нельзя модифицировать? То, что в ПЗУ! Никто не сможет изменить хеш рутпароля в ПЗУ, кроме хозяина машины. ОС "Хром" будет иметь области, критические для взлома, в псевдоПЗУ, т.е. в рабочем режиме запись в эти области будет отключаться тривиально: механически.:)

А как же для обычных машин без предустановленной ОС? Не знаю, что там для Винды (ну неграмотный я!), а для Линукса есть демоны, контролирующие целостность критических файлов. Взломщику сначала потребуется найти и поубивать их. Вот и тема для ПОЛЕЗНОЙ статьи, кстати. Дарю.

Аватар пользователя Al
Майк, ты когда-нибудь спорил со стенкой? Объяснял ей что-нибудь? Доказывал? Вот так и с Логиком... :) Он круче цитатника Мао! (Кстати, тут продается - занятная штука, но с Логиком не сравнить.)
Аватар пользователя Логик
mike (old student) > для Линукса есть демоны, контролирующие целостность критических файлов

Отлично, что есть. НО! -

Сами демоны имеют дыры, через которые можно этот контроль обойти.

НЕ надо менять "целостность критических файлов" - все что надо - это воспользоваться ДЫРАМИ в этих "целостнЫХ критических файлАХ"!

O, мама-мия!!!

Аватар пользователя Логик
"Корпорация Microsoft объявила о выходе экстренного обновления для браузера Internet Explorer версий 6 и 7. Стоит отметить, что апдейт выпущен сразу для нескольких версий популярного обозревателя. С помощью обновления корпорация рассчитывает закрыть уязвимости в браузере, которые в течение нескольких недель использовались злоумышленниками для получения удаленного несанкционированного доступа на компьютеры пользователей.

Хакеры пользовались "дырами" в системе безопасности браузера с помощью специально сформированных страниц в интернете, на которые заходили пользователи. При открытии такой страницы в компьютер пользователя проникал вирус, который позволял злоумышленникам получить доступ к ПК.

Также Microsoft в рамках обновления закроет потенциально опасные уязвимости, с помощью которых можно получить несанкционированный контроль над компьютером. Это коснется версий браузера Internet Explorer с пятой по восьмую, а также операционных систем Windows 2000, XP, Vista, Server 2003, Server 2008, Windows 7 и Server 2008 R2."

Новость конца марта 2010 года!

Аватар пользователя mike
>демоны имеют дыры...

Конечно. Причём особенно заметные, если внедрить _аппаратный_ отладчик. :)

Страницы