Безопасность в Сети: взлом
🕛 29.12.2008, 04:17
Работая в Сети, всегда следует помнить о том, что сама Сеть, все ее сайты, все ее сервера и сервисы созданы людьми. Миллионами, а, возможно, даже и миллиардами людей. Людей с разными взглядами на мир, культурами, мировоззрениями.И с разными принципами жизни. Как это ни прискорбно сознавать, но в настоящее время среди на-селения Земли встречается немало и тех, для кого нанесение вреда ближнему зачастую является не про-тивоестественным актом, а видом развлечения. Или получения прибыли. Или средством вымещения своих подростковых комплексов. Поэтому, как это ни прискорбно сознавать, Интернет может стать еще и источником опасностей. Опасностей и проблем, связанных не с нарушением работы технических сис-тем, обслуживающих Интернет, а с желаниями некоторых людей, с их волей. С внешними воздействия-ми.
Эта статья посвящена одной из таких опасностей - "взлому компьютера". Бесспорно, в ней будут за-тронуты лишь самые основные принципы защиты - тема эта столь обширна, что даже начальные сведе-ния по ней не поместятся не то что в журнальную статью, а даже и в серию книг. Однако и сказанного хватит, чтобы иметь представление о проблеме.
"Взлом", или, в просторечии, "хакерская атака" - это для большинства пользователей, пожалуй, са-мая страшная из Интернет-напастей. Именно хакеров обычно больше всего боятся те, кто начинает пользоваться Интернетом, и даже в простых сбоях в работе Интернет-программ им зачастую видятся козни взломщиков...
1.
Что это такое
По своей сути "взлом" - это довольно простая вещь: получение контроля над компьютером жерт-вы. Получение возможности отдавать этому компьютеру различные команды. А уж какие будут эти ко-манды - зависит от воли взломщика. Это могут быть и команды копирования информации, и ее удале-ния, и выполнения компьютером определенных действий (скажем, вывода на экран каких-либо текстов или картинок).
Чаще всего компьютеры тех пользователей Сети, которые используют доступ в Интернет по комму-тируемым телефонным линиям, взламывают ради похищения авторизационных данных для доступа в Сеть. Те же компьютеры, которые подключены к Интернету посредством локальной сети, могут под-вергнуться взлому просто ради "спортивного интереса" взломщика или из хулиганских побуждений. Ну и, естественно, в том случае, если на таком компьютере есть конфиденциальная информация, которую кто-то захотел себе скопировать.
2.
Как это делается
Наиболее часто применяемый способ взлома локальных компьютеров - это использование "дыр" в программном обеспечении.
"Дырой" именуется особенность программы, позволяющая приказать ей выполнить какие-либо не-желательные действия с помощью команд, отправленных ей недокументированным способом с удален-ного узла Интернета. Установив через "дыру" связь с какой-либо программой из числа запущенных на компьютере , взломщик сможет этой программой управлять, получая через нее с компьютера данные или приказывая программе что-либо сделать с этими данными. Поскольку в подавляющем большинстве программ есть команды работы с файловой системой компьютера, то осуществить такое управление возможно почти во всех случаях.
Наиболее частоиспользуемыми "дырами" являются так называемые "портовые дыры". Как вы помните, порт - это адрес программы на компьютере, указываемый в заголовке пакета данных вместе с IP-адресом компьютера назначения. Каждой программе для работы с Интернетом при ее запуске опера-ционная система выделяет такой адрес - он представляет собой число от 1 до 65535. Некоторые из пор-тов (например, 80, 25, 110) по традиции выдаются лишь определенным программам, остальные же мо-гут использоваться любыми приложениями для организации обмена данными с другими узлами Сети. Но вполне возможна ситуация, когда при обращении к компьютеру по какому-либо порту, на котором, вроде бы, не должна работать ни одна из запущенных на нем программ, обращающийся получит ответ от одной из них, да еще и сопровождающийся готовностью выполнять посылаемые команды. Это про-исходит вследствие ошибок и недоработок разработчиков программ и является фактически программ-ным браком. Если программа с "дырой" умеет работать с файловой системой компьютера, на котором она запущена, то последствия управления ею через "портовую дыру" могут быть самые катастрофиче-ские - от похищения документов с секретными данными до удаления всех файлов с жесткого диска уда-ленного компьютера.
Второй путь взлома - это помещение на компьютер жертвы специальной программы, как раз и предназначенной для работы с ней извне, с какого-либо узла Интернета. Так сказать, ручное "создание дыры" на компьютере жертвы. Написать такую программу может любой более-менее квалифицирован-ный программист, кроме того, в свободном доступе есть немало уже готовых утилит подобного рода (например, весьма известный одно время "Back Orifice"). Именуются они довольно официально - "ути-литы удаленного администрирования, но в "компьютерном" лексиконе такие программы принято назы-вать "троянами", особенно если помимо предоставления возможности удаленного управления компью-тером они выполняют еще и какие-либо привычные пользователям функции.
Установка "утилиты удаленного администрирования" на компьютер-жертву может быть выполнена многообразными способами. Чаще всего взломщики рассылают жертвам письма с такими программами в надежде, что те по глупости или из любопытства запустят их и тем самым откроют свой компьютер для вторжения. Нередко трояны размещаются в популярных сетевых хранилищах программного обес-печения под видом каких-либо полезных программ, текстовых редакторов или Интернет-пейджеров. Возможна и прямая установка трояна, если взломщик или кто-либо из его соучастников получат "физи-ческий" доступ к поражаемому компьютеру и смогут скопировать программу с дискеты или компакт-диска.
Третий путь получения доступа к локальному компьютеру через Интернет - это использование не-правильно сконфигурированных сетевых сервисов, запущенных на этом самом компьютере. Прак-тически все современные операционные системы в своем составе имеют штатные средства удаленного доступа (то есть доступа с другого компьютера локальной или глобальной сети) к их файловой системе. Например, содержимое жестких дисков подключенного к локальной сети компьютера с операционной системой Windows 2000 с помощью определенных ухищрений можно просмотреть с другого компьюте-ра, если использовать скрытые имена - вида "С$", "D$". Установка "привязки" "Службы доступа к фай-лам и принтерам" к "Контроллеру удаленного доступа" в Windows 9x тоже может позволить работать из Интернета с файлами на жестком диске того компьютера, на котором это сделано. Так что сетевые сер-висы, призванные обеспечивать возможность и удобство работы с ресурсами локальных сетей и Интер-нета, вполне могут послужить не только вам, но и взломщику.
Есть и еще один способ "взлома". Злоумышленник может использовать и совершенно "легальные" средства для доступа к компьютеру жертвы (например, систему удаленного администрирования Рабо-чего стола в Windows XP), правильно сконфигурированные и не имеющие дыр, узнав или даже подоб-рав пароль для использования этих средств (если они, конечно, регламентируют доступ именно по па-ролю).
3.
Защита
Наиболее актуальна проблема защиты от "взлома" для тех пользователей, которые подключаются к Интернету по постоянному каналу - например, напрямую через "домашнюю" сеть. В этом случае ком-пьютер фактически постоянно является узлом Сети, а, значит, и постоянно доступен взломщику. Да и IP-адрес у такого компьютера постоянный - то есть взломщик легко сможет нацеливать свои "удары", ему не надо будет предварительно определять сетевое местонахождение атакуемой машины. Несколько меньше опасность "взлома" при работе с Интернетом из локальной сети через прокси-сервер или меж-сетевой шлюз - в этом случае обращение к нужному компьютеру для взломщика потребует довольно хорошей квалификации.
При использовании же коммутируемого доступа риск подвергнуться атаке взломщика довольно мал - ведь, во-первых, время соединения компьютера с Сетью в таком случае обычно ограничено, а, во-вторых, и IP-адрес ему выделяется динамически, то есть при каждой новой установке связи с провайде-ром - новый. Так как процесс "взлома", состоящий из определения "дыр" в программах или в настрой-ках сетевых сервисов, все же занимает некоторое время, то взломщик может просто не успеть его за-вершить до отключения атакуемого компьютера от провайдера, а повторно связаться с тем же компьютером при следующем сеансе его подключения весьма затруднительно, так как IP-адрес у этого компьютера будет новый.
Тем не менее в том случае, если пользователь коммутируемого доступа проводит в Интернете по ча-су в день и более, да еще и длительными непрерывными сеансами, то и ему стоит задуматься о риске подвергнуться хакерской атаке.
Какие же есть методы защиты от "взлома"? Собственно, о них нетрудно догадаться на основе ин-формации о способах атаки.
4.
Файерволл
Прежде всего для защиты от "взлома" стоит использовать файерволл - так называется программа, которая обеспечивает санкционированность всей информации, приходящей или уходящей с компьюте-ра . В частности, файерволл разрешает работу с ресурсами Сети только тем программам и только по тем портам, которым пользователь разрешил это делать. Также файерволл блокирует любые попытки свя-заться с программами на компьютере с других ресурсов Интернета, за исключением тех, кому это раз-решил пользователь.
Перед началом использования файерволла производится его настройка - то есть указание номеров портов, через которые может идти обмен данных, и программ, которые с этими портами работают (в современных файерволлах настройка может пройти и автоматически). В результате, если, к примеру, с компьютера собирается отправиться пакет данных, то файерволл посмотрит, какая программа его от-правляет, и по какому порту, и на какой адрес, и на какой порт удаленного компьютера. И в том случае, если эти данные не будут соответствовать указанным в настройках файерволла, то он забьет тревогу: либо запретит вообще отправку этого пакета, либо запросит пользователя о возможных действиях (за-висит от конкретных настроек программы).
Например, пользователь может разрешить работу в Интернете программе-браузеру, позволив ей от-правлять пакеты данных на порт 80 удаленного компьютера (и, соответственно, принимать ответы - на какой бы порт они ни приходили), и почтовой программе, разрешив ей работать с портами 25 и 110. В том случае, если соединение с каким-либо ресурсом Интернета пожелает установить какая-либо иная программа из числа запущенных на компьютере, то файерволл ей этого сделать не позволит - попросту не пропустит в Интернет отправляемые ей пакеты. То же самое произойдет, если какая-либо программа извне, из Интернета попробует связаться с программами на компьютере путем отправки запросов на ка-кой-либо порт (то есть использовать "портовую дыру") - действия такой программы будут заблокирова-ны.
В результате в том случае, если на компьютер пробрался троян, то он не сможет воспользоваться ни одним портом, да и вообще не сумеет осуществить даже отправку данных о себе своему создателю. Файерволл его распознает - он ведь, естественно, не будет входить в список разрешенных программ - и запретит ему доступ к Интернету. Попытки установить несанкционированную связь с запущенными на компьютере программами тоже успехом не увенчаются.
Иными словами, файерволл защищает пользователя от "утилит удаленного администрирования", коли таковые все же попадут на его компьютер, а также от последствий наличия "дыр" в программ-ном обеспечении, если таковые "дыры" связаны с реакциями программ на запросы по каким-либо не разрешенным для их работы портам.
Программ-файерволлов в настоящее время сделано довольно много. Весьма популярны такие разра-ботки, как Agnitum Outpost Firewall (http://www.agnitum.com/products/outpost), ZoneAlarm (http://www.zonelabs.com) и т.д.
Однако файерволл все же сможет помочь не всегда. Например, если приложенный к пришедшему письму троян будет не непосредственно связываться со своим автором, а управлять почтовой програм-мой, приказывая ей, скажем, собирать с дисков компьютера данные и отправлять их по определенному адресу, то файерволл окажется бессилен. В самом деле: вся работа с ресурсами Интернета в таком слу-чае будет вестись "законной" программой - почтовым клиентом, поэтому файерволл ее разрешит, а тот факт, что сутью такой работы будет несанкционированная отправка данных, брандмауэр определить не сумеет.
5.
Заплаты
Файерволл, бесспорно, является хорошей защитой, однако все же не всесильной. "Дыры" могут быть и в тех программах, которым вы разрешите работать с ресурсами Интернета. Например, в программе Microsoft Internet Explorer нередко обнаруживались такие ошибки, которые позволяли, например, сце-нарию на web-странице осуществлять отправку на определенный адрес какого-либо файла с компьюте-ра посетителя этой web-страницы. При этом вся работа браузера по такой отправке велась вполне ле-гальным способом, не менее "законным" для файерволла, как и обычная работа в Интернете.
Практически все компании - производители программного обеспечения при обнаружении "дыр" в своих программах выпускают их новые, исправленные версии или, в случае больших размеров дистри-бутивов, размещают на своих сайтах "заплатки" (специальные программы, исправляющие уязвимости в файлах основной программы). Соответственно и метод защиты прост - следить за новостями компью-терного мира и в случае выявления новой уязвимости в какой-либо используемой вами программе за-гружать с сайта ее компании-производителя и устанавливать соответствующую "заплатку".
Выявлением "дыр" в различных программах, а также сбором и накоплением информации о таких "дырах" занимается организация под названием "Computer Emergency Response Team" (сокращенно - CERT, в переводе - "Команда быстрого реагирования мира компьютеров"). На ее сайте http://www.cert.org регулярно публикуются сведения о новообнаруженных "дырах" в программном обеспечении, а также другие сведения о компьютерной безопасности.
Кроме того, информацию об обнаруженных программных уязвимостях нередко размещают на своих страницах различные сайты новостей, особенно касающихся компьютерных технологий. В частности, в Рунете таким сайтом является Компьюлента - http://www.compulenta.ru, непосредственно уязвимостям в программном обеспечении на нем посвящен раздел "Безопасность" - его адрес http://www.compulenta.ru/bug.
Бесспорно, наличие "дыры" в какой-либо программе - это вина разработчиков этой программы. Од-нако, к сожалению, от ошибок в нашем мире не застрахован никто, и как бы тщательно программа ни тестировалась перед выходом на рынок, стопроцентной гарантии отсутствия в ней ошибок не даст ни-кто. Поэтому, как это ни прискорбно сознавать, но, по всей видимости, загружать и устанавливать "за-платки" или новые версии программ нам придется постоянно - во всяком случае, до тех пор, пока суще-ствуют компьютерные технологии. Или пока их развитие окончательно не затормозится - тогда будет время все программы досконально выверить...
6.
Конфигурация
Желая работать в Интернете, правильно сконфигурируйте сетевые сервисы вашего компьютера. В частности, при использовании коммутируемого доступа следует учесть следующее.
- Если вы работаете в Windows 9x, и ваш компьютер не подключен к локальной сети, то проследите, чтобы в диалоговом окне "Сеть", доступном через одноименный пункт "Панели управления", среди ус-тановленных сервисов присутствовали только "Контроллер удаленного доступа", "Клиент для сетей Microsoft" и "Протокол TCP/IP", а в диалоговом окне "Доступ к файлам и принтерам" были сняты все отметки. Все остальные сервисы просто лишние.
Впрочем, если вы удалите из окна "Сеть" и "Клиент для сетей Microsoft", то много не потеряете - разве что не сможете сохранять в стандартной "звонилке" Windows пароли на вход в Интернет и делать кое-что еще.
- Если вы работаете в Windows 9x, но ваш компьютер подключен к локальной сети, то в диалоговом окне "Сеть" будут присутствовать как сервисы доступа в Интернет, так и сервисы, обеспечивающие ра-боту в этой самой локальной сети - в Windows 9x предусмотрены разные настройки протоколов для ра-боты в локальной сети и для работы в Интернете посредством модемного доступа. В этом случае отмет-ки в диалоговом окне "Доступ к файлам и принтерам" необходимо оставить (иначе вы не сможете работать с файлами на других компьютерах в сети), но необходимо проследить, чтобы в свойствах про-токола TCP/IP для "Контроллера удаленного доступа", на вкладке "Привязка" отсутствовала отметка в пункте "Служба доступа к файлам и принтерам сетей Microsoft".
- Windows 2000 является более защищенной системой, чем Windows 9x. Однако и при работе с ней стоит выполнить некоторые действия. Так, чтобы к дискам вашего компьютера нельзя было присоеди-ниться посредством скрытых имен, в системном реестре, в разделе HKEY_LOCAL_MACHINESystemCurrentControlSetServicesLanmanServerParameters следует создать параметр "AutoShareWks" формата Dword со значением "0". Однако имейте в виду, что иногда, напри-мер, при установке сервис-паков для Windows 2000, этот параметр придется удалять из реестра для ус-пешного осуществления инсталляции.
Деинсталлируйте все явно лишние и ненужные компоненты операционной системы, например, Internet Information Service - вряд ли вам потребуется организовывать web-сервер на вашем компьютере, а новые "дыры" в этом компоненте Windows обнаруживаются довольно часто. Тем более что даже если потребность в web-сервере и возникнет, то есть куда как более удобные разработки для этой цели.
Ну и, конечно, проследите, чтобы на вкладках "Сеть" настроек подключений к Интернету посредст-вом модемного доступа (эти настройки доступны в окне "Панель управления" - "Сеть и удаленный дос-туп к сети") не было отметок в пунктах "Протокол NetBEUI" и "Служба доступа к файлам и принтерам сетей Microsoft". Впрочем, по умолчанию при создании нового подключения этих отметок и не ставит-ся.
При использовании некоммутируемого доступа (посредством ADSL, к примеру) меры, которые сле-дует принять, похожи на вышеперечисленные. В частности, следует точно так же отключить службу доступа к файлам и принтерам, в Windows 2000 - удалить лишние сервисы и запретить доступ к дискам по "скрытым именам". При подключении к Интернету через "домашнюю" сеть о безопасности вашей работы должен позаботиться администратор этой сети, однако вам тоже не следует забывать о мерах безопасности.
7. Антивирусы
Почти все современные антивирусные программы умеют определять, является ли проверяемая ими программа "троянской" или нет, содержит ли она код, позволяющий работать с нею с удаленного узла Сети, или безопасна в этом плане. Поэтому проверяйте антивирусом все программные файлы, за-гружаемые вами с ресурсов Интернета - если автор той или иной программы преследовал какие-то иные цели, окромя создания удобной и полезной для пользователей разработки, то вы об этом узнаете.
Некоторые антивирусы включают в себя еще и блок автоматического сканирования всех приходя-щих на компьютер почтовых сообщений на предмет наличия в них вирусов и троянов. Такие борцы с заразой будут особенно полезны для превращения компьютера в неприступную крепость - при выборе антивируса обращайте внимание на наличие в нем этой функции.
Соблюдая все эти правила, вы во многом обезопасите свой компьютер от "взлома". Бесспорно, сто-процентной гарантии безопасности дать нельзя, но вот задачу взломщику вы можете своими действия-ми очень серьезно усложнить. А и это уже немало.
Антон Орлов