next up previous contents
Next: Наиболее распространённые возможности Internet Up: Житие в Internet Previous: Этика

Проблемы защиты

Сразу успокоим большинство российских пользователей, исторически проживающих в системах типа ms-dos. Проблема безопасности существует только для серверов. Если на компьютере работают только программы-клиенты, то он вообще не способен производить какие-либо действия по командам извне, поэтому в него вообще невозможно ``влезть''.*

Сервер в Internet в плане защищённости аналогичен компьютеру, с которой можно связаться по модему, например, BBS или узлу FIDOnet. Проблемы те же и могут отличаться только по значительности. Если ваш модем находится в режиме дежурства, всякий может позвонить к вам и попытаться вломиться. То же самое и с сервером в Internet. Однако, если в случае BBS для взлома требуется предварительно узнать телефонный номер, что не всегда легко, то в Internet доменное имя сервера можно легко найти, запросив соответствующий DNS-сервер. Если при взломе BBS взломщик должен платить за потреблённое время телефонной связи, причём, чем он дальше находится от взламываемого компьютера, тем больше, то в Internet расстояние и время не имеет почти никакого значения. Если у BBS мишенью для атаки может служить только единственный существующий интерфейс, то у сервера в Internet таких интерфейсов обычно много: ftp, telnet, e-mail, WWW и т.д.

Поэтому проблема защиты сервера в Internet стоит намного острее, чем в других системах. Это проблема есть прямое продолжение достоинств Internet: оперативности, открытости и глобальности. Вывод лично для вас: при подключении компьютера к Сети вам следует тщательно обдумать все аспекты возможных проблем с безопасностью вашего компьютера, продумать саму систему защиты.

Как это заманчиво просто: вытащить из яркой коробочки новенькую рабочую станцию, с уже установленной операционной системой, например UNIX, и включить её в Internet. А вы подумали о безопасности? А ведь есть такие, которые просто собирают машину и включают её в сеть, она работает. Дело вроде бы сделано. Работа закипела. Но в этот розовый мирок, в конце концов, кто-нибудь вламывается и необратимо портит что-нибудь всем нужное и очень важное.

Ведь это так легко понять: чтобы сначала немного подумать о безопасности, требуется намного меньше времени и сил, чем разбираться со всеми последствиями и думать о ней же, когда это случилось.

Включаться в сеть следует, только имея правильную позицию в вопросах безопасности. Проникнитесь: защищаться -- это именно ваша забота, ваш сервер сам должен заботиться о защите, сеть же его защищать не обязана. Вы или ваш сетевой администратор можете ограничить круг компьютеров Internet, которым разрешено общение с вашим, но такое ограничение лишит вас множества достоинств работы с сервером. Если вы сузите круг компьютеров, которым доступен ваш WWW-сервер, то вы сможете распространять свои гипертексты только в этом узком кругу. Вас это устраивает? Чтобы полнокровно пользовать Internet, ваш сервер должен быть включён в Internet по полной программе. Это подвергает ваш компьютер риску, так что вам нужно его защитить.

Защита более эффективна, если она организуется совместными усилиями всей локальной сети или всех локальных сетей организации. Существуют специальные механизмы групповой защиты, например, так называемые firewalls, которые представляют собой специализированные шлюзы, располагаемые в точках подключения локальных сетей или их множества к внешним сетям -- внешнему миру. Термин firewall почему-то переводят с английского не на русский, а на немецкий, считая, что ``брандмауэр'' звучит понятнее. Firewall-ы чётко разделяют внутренний и внешний трафики, зорко следя за тем, чтобы ни один ``шальной'' пакет не проскочил ни извне внутрь, ни изнутри вовне. При пересылке пакетов через себя в любом направлении шлюз требует аутентификации и подтверждения прав доступа на такую пересылку у компьютера-источника. Таким образом исключается ``прощупывание'' структуры сети извне, что сильно затрудняет взлом. Фактически, для взлома компьютера в такой защищённой сети требуется сначала взломать firewall, а потом ещё и сам компьютер.

Групповая защита помогает бороться со взломами по наиболее популярной методике взлома по цепочке. Взлом по цепочке осуществляется поэтапно: взламывается А, А используется для взлома В, В имеет привилегированный свободный доступ в С и т.д. Такая методика позволяет взломщику лучше скрывать и запутывать свои следы.

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

Открытое обсуждение защиты и слухи о её проблемах, существующих в каких-либо системах, являются частью самой проблемы надёжной защиты. Это всё равно, что объявить во всеуслышание, например, что все сейфы, произведённые некой известной фирмой в конце квартала имеют картонную заднюю стенку или открываются сами собой, если их поставить кверху ногами. Поэтому требуется способ обсуждения и исследования возникающих проблем, нахождения решения и информирования достойных доверия специалистов без усугубления тяжести ситуации с этой проблемой, если возникнет утечка информации. В США для этих целей правительством основана организация CERT: the Computer Emergency Response Team -- группа реагирования на компьютерную опасность.

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

В CERT предпочитают работать непосредственно с местными силами безопасности, но в тревожном случае не откажутся ответить и на вопросы отдельного пользователя в тревожном случае, -- часто именно такие сообщения отдельных пользователей помогают обнаружить существование новой ``дырки'' в защите. Вот вам на всякий случай адрес CERT:

cert@cert.sei.cmu.edu.

CERT даёт советы ``защитникам'', которые она публикует в виде текстовых файлов. Подписаться на это издание, чтобы получать все советы по мере их выдачи, можно по e-mail по тому же адресу.

CERT ведёт архив своих советов, который находится на ftp-сервере CERT, доступном в анонимном режиме: cert.sei.cmu.edu в поддиректории pub.

Производить поиск нужного совета удобно по WAIS. Соответствующая база данных называется cert-advisories.src

Настоятельно рекомендуем всем, перед кем стоит проблема обеспечения безопасности сетевого компьютера, изучить информацию этого обширного архива. Подписываться на бюллетень CERT непосредственно не обязательно, -- он публикуется в Usenet News. Советуем подписаться на телеконференции, содержащие в название слово security, а также на info.nsfnet.cert. Полезно также читать хакерские телеконференции. Да и вообщее, каждый сетевой и системный администратор должен быть хакером, -- только тогда он сможет хорошо выполнять свою работу.

Мы не можем себе позволить подробное рассмотрение различных проблем защиты, но преподать вам азы сетевой самообороны, мы обязаны. Итак, маленький лмкбез.

Как и почему может быть взломан сетевой компьютер? Как ломать, мы не знаем и знать не хотим. Но постараемся объяснить, почему система защита может оказаться бессильной против вторжения.

Причин, из-за которых защита сетевого компьютера может быть сломлена, много, но основных классов, как нам кажется, -- 4. Перечислим их в порядке убывания частот соответствующих им взломов:

-
плохие пароли;
-
использование в компьютере программ-``Троянских коней'';
-
неправильно сконфигурированное программное обеспечение;
-
ошибки в операционной системе.

Существует также проблема вирусов, но она актуальна только для систем типа DOS. Сетевые черви (worms), как нам представляется, не являются отдельной проблемой для безопасности, но являются самой этой проблемой, поскольку они для своего распространения должны взламывать компьютеры точно так же, как обычные взломщики.

О получении программ из неофициальных бесплатных источников много говорилось в связи с распространением этим способом компьютерных вирусов. В сетевом смысле эта проблема выглядит точно так же, ничего специфического в сравнении с несетевыми компьютерами не возникает.

Пароли

Казалось бы, самая тривиальная проблема из всех, но именно она является наиболее актуальной. Дело в том, что большинство пользователей выбирает пароли, руководствуясь удобством их запоминания. В этом всё и дело. Легко запомнить, значит что-то широко известное, а значит легко и отгадать. Что стоит компьютеру потрудиться денёк над поиском вашего пароля: перебрать весь повседневный словарь и все имена вместе с их различными производными (перевёртышами и т.п.)? 80% взломов происходит именно так. Поэтому придерживайтесь хотя бы следующих простых правил для выбора пароля. Пароль должен:

-
не быть словом;
-
быть не короче шести символов, чем длиннее -- тем лучше;
-
включать и большие, и маленькие буквы, а также цифры;
-
не быть набором близлежащих на клавиатуре клавиш, как, например, jcukeng и fywaproldv или же qwerty и asdfgh .

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

Многим довольно трудно придумать надёжный пароль, который можно было бы запомнить. Можно, конечно, и не запоминать, а записать в блокнотике, если своей памяти мало доверия. Но это плохое решение проблемы. Что вы будете делать, если блокнотик потеряется? А если его при этом найдёт кто-то нехороший? А если кто-нибудь ненавязчиво заглянет в этот ваш блокнотик, пока вы плещетесь в бассейне?

Поэтому лучше всего -- поднапрячься и научиться запоминать, не так уж это и трудно -- запомнить восьмисимвольный ASCII-бред. Меняйте их почаще и быстро натренируетесь.

При установке компьютера в сеть убедитесь, что вы запаролировали или запретили доступ по коренным, системным, обслуживающим и любым другим логическим (login) именам, которые имеют особую силу. Регулярно меняйте эти пароли и пользовательские имена. Некоторые машины поставляются со стандартными паролями. Если их сразу не сменить, то от них не только нет пользы, они вообще представляют особую угрозу для безопасности вашего компьютера: все покупатели такой же машины знают эти пароли.

И будьте, пожалуйста, предельно осторожны с возможностями автоматического прохождения системы защиты, которые избавляют пользователя от необходимости помнить множество адресов и паролей, от ввода этих паролей с клавиатуры. Это может быть реализовано различными способами (r-login, screen и т.д.), но в любом случае, кто бы к вам не вломился, он будет так же как и вы способен свободно воспользоваться этими системами автоматического прохождения систем защиты, что означает, что он автоматически получит доступ ко всем компьютерам, в которые вы для своего удобства организовали такой вход. Это похоже на то как, если бы вы заперли все наружные окна и двери своей виллы на могучие запоры, но оставили для своего удобства все внутренние двери и сейфы открытыми. Достаточно умельцу взломать один-единственный запор, как он получает доступ во все уголки вашего дома. Держите внутренние двери и сейфы надёжно закрытыми.

Программное обеспечение

Если вы пользуетесь несертифицироваными программами или программами типа shareware или public domain, которые попадают к вам окольными путями, то возможно, что на этом пути кто-то такую программу умело подпортил. А именно встроил в неё такой замечательный блочок, который, например, читает ваш файл с паролями и незаметно пересылает его автору. Это так называемые ``Троянские кони''.

Чтобы избежать встреч с ними нужно действовать очень просто. Получать программы только из надёжных источников. Например, если вы хотите поставить себе на машину Linux, то обращайтесь прямо во Free Software Foundation. Там вам скажут, кто в вашем регионе является распространителем их программного обеспечения.

Существует также проблема с установкой системного и программного обеспечения. Ведь работа программы и системы зависит не только от того, какова она сама по себе, но также и от того, как она установлена на компьютере. Велосипед замечательное изобретение, но пользоваться им нужно умеючи.

Что конкретно мы можем вам посоветовать по этому поводу? К сожалению очень немного. Не только потому, что слишком велико разнообразие системного и прикладного программного обеспечения, но также потому, что открытое обсуждение таких проблем требует огромной осторожности. Никак нельзя открыто обсуждать такие проблемы детально и конкретно. Такое обсуждение является ценнейшим источником информации, если не руководством к действию для взломщика*, лучшего подарка ему не придумать. На самом деле умному пользователю для защиты достаточно более общее обсуждение. Ограничимся им.

Некоторые системы (системное или прикладное программное обеспечение) имеют отладочные инструменты, которые могут быть включены в них при установке на компьютер. Это включение, как и всё в системе, управляется так называемыми ``ключами'' (переключателями), конкретно -- отладочными. Эти ключики при установке могут быть либо активированы, либо дезактивированы. Очевидно, такая проблема с защитой может возникнуть только при активированных ключах.

Почему они вообще могут оказаться включёнными? Во-первых, они могут быть оставлены включёнными случайно, из-за невнимательности. Во-вторых, разработчики обеспечения могли оставить их включёнными намеренно, на случай, если у пользователя возникнут нарекания, -- чтобы можно было, не сходя с места, посмотреть в такой ``дверной глазок'', что там случилось. Некоторые из этих ``глазков'' такой непомерной величины, что не только дают возможность поглядеть, но и влезть туда с головой как самому разработчику для наладки, так и взломщику, увы, совсем не с добрыми намерениями. Поэтому убедитесь, что в ходе установки ни один из этих отладочных ключей не был без необходимости включён на вашей системе.

И, конечно, существует проблема с ошибками в самом программном обеспечении. Особенно опасны ошибки в системном обеспечении. Естественно, речь идёт об ошибках в механизмах защиты. Если такие ошибки быстро находятся, то и вылечить их можно очень быстро. Но если к моменту обнаружения ошибки система успела широко распространиться, то вылечить все системы от данной ошибки быстро не получается. Причём, в этом случае возникает очень щекотливая ситуация, связанная с возможным просачиванием информации об этой ``дырке'' в системе защиты в ``открытую печать''. Проблема ещё осложняется и тем, что никакой производитель программного обеспечения не хочет такой ``рекламы'', чтобы его продукция получила репутацию ``лёгкой добычи''. И вот, этот производитель должен, с одной стороны, как можно быстрее оповестить всех своих клиентов, что обнаружена ошибка и её нужно исправлять так-то и так-то, иначе, существование этой проблемы может быть обнаружено самими пользователями, что может привести вынесению проблемы на открытое обсуждение, и с другой стороны, он должен сделать это так, чтобы никто посторонний не узнал, что у этого производителя существуют какие-то проблемы. Вот и получается, что ошибка уже обнаружена, но производитель не оповещает о ней пользователей открыто, пытаясь сделать это приватно, что происходит очень медленно, и на что уходит уйма времени. А пользователи остаются долгое время в неведении и, фактически, ходят по краю пропасти.

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

Бди !

Взломщики по проникновении первым делом уничтожают все свои следы и информацию, по которой их можно выследить, если двигаться вспять от неё к её источнику; стараются быть как можно невидимее, незаметнее. Чтобы обнаружить их, предпринять правильные действия, нужно постоянно вести тщательное наблюдение за системой, за её работой.

Наблюдать нужно за различными отклонениями от нормы. Обращать внимание вообще на любые странности в поведении системы и в различных служебных её сообщениях, диагностике, например, на сообщение при входе утром, что последний сеанс был в 3.33* утра, на свои сомнения и подозрения типа ``компьютер вроде тормозит'' или ``вроде не редактировал (удалял, создавал) я этот файл''. Тщательно исследуйте такие ситуации.

Если вам кажется, что кто-то влез, сразу откройте крышку процессорного блока компьютера и посмотрите, не сидит ли там кто внутри, не торчат или из корпуса жёсткого диска мохнатые уши... А если серьёзно, то:

--
Проверьте пароли в соответствующем файле -- ищите необычные логические имена, обычно, с большим числом привилегий.
--
Просмотрите все задачи в системе (многопользовательской) или выдайте листинг использования резидентной памяти -- нет ли каких-то странных задач (резидентов)?
--
Выдайте развёрнутый и наиполнейший список файлов. Ищите незнакомые названия, странные даты редакций.

Чтобы заметить изменения, нужно знать, как это должно выглядеть в нормальном состоянии. Поэтому, в любом случае, следует время от времени эти вещи просматривать и как-то архивировать (печатать на бумаге, периписывать на дискеты и т.д.).
Регулярно и как можно чаще! Делайте резервные копии! Это не только поможет вам защищать свой компьютер, но и повысит устойчивость системы к возникновению различного рода аппаратных неисправностей, -- важен компьютер не сам по себе, а важна информация, в нём содержащаяся.

Что же делать, если к вам всё-таки ``влезли''? Как только обнаружите взлом, останавливайте систему, ничего не меняйте, не трогайте, бегите к своему системному или сетевому администратору. Если вы и есть таковой, вы должны сами знать, что нужно делать. Если вы всё-таки не в состоянии сами справиться с этой ситуацией, звоните в службу компьютерной защиты.


next up previous contents
Next: Наиболее распространённые возможности Internet Up: Житие в Internet Previous: Этика


Urazmetov@mx.ihep.su