(в настоящее время представляет собой разве что историческую ценность)
Цель этой статьи - освещение некоторых проблем безопасности Windows NT и способов их устранения. Была использована информация из следующих источников:
Троянская конница
Дистрибутивы NTWS4.0 и NTS4.0 включают утилиту
rollback.exe, предназначенную для настройки
пользователями предустановленной системы. Ее
запуск приводит к очистке реестра (без
предупреждения) и возврату к концу Character Based Setup
(часть установки до появления GUI). Запуск ее из-под
рабочей системы приводит к тем же невеселым
последстиям (потеря аккаунтов, настроек
протоколов, пользовательских настроек и т.п.).
Найти ее можно на CD-ROM с NT в каталоге
Support\Deptools\<system>\
Подробности: http://support.microsoft.com/support/kb/articles/Q149/2/83.asp
Каталоги %systemroot% и %systemroot%\system32 имеют по
умолчанию право доступа Change для Everyone.
Это может привести к самым разнообразным
последствиям типа замещения части системных dll
"троянскими" и т.п. При этом они могут быть
вызваны из самых разных программ - в том числе, из
программ, работающих с системными правами
доступа.
Для защиты достаточно грамотно установить права
доступа. Кстати, программа DumpAcl позволяет вывести
права доступа для различных объектов - файлов,
реестра, принтеров и т.п. в общий список, удобный
для просмотра.
В реестре есть ключ
<HKLM\SYSTEM\CurrentControlSet\Control\Lsa>
со значением
<Notification Packages: REG_MULTI_SZ: FPNWCLNT>
Эта DLL существует в сетях, связанных с Netware. Поддельная FPNWCLNT.DLL в каталоге
%systemroot%\system32 вполне может проследить все пароли.
После копирования и перезагрузки все изменения
паролей и создание новых пользователей будут
отслеживаться этой dll и записываться (открытым
текстом) в файл c:\temp\pdwchange.out.
Для защиты достаточно удалить этот ключ и
защитить эту часть реестра от записи.
Испольняемые файлы могут быть переименованы в файлы с любым расширением (или без расширения), но они все равно запустятся из командной строки (например, переименуйте notepad.exe в notepad.doc и запустите "start notepad.doc"). Ну и что, спросите Вы ? Тогда попробуйте представить процесс прочтения файла rollback.exe, переименованного в readme.doc. Очень эффективно.
Большая часть реестра доступна для записи
группе Everyone. Это же относится и к удаленному
доступу к реестру. Может оказаться опасным,
особенно в сочетании с автоматическим импортом
reg-файлов. В реестре NT4.0 появился ключ
<HKLM\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg>
при наличии которого доступ к реестру отрыт
только администраторам. В NT Server этот ключ
существует по умолчанию, в NTWS может быть
добавлен.
Подробности: http://support.microsoft.com/support/kb/articles/Q155/3/63.asp
Проблемы приложений
В FrontPage 1.1 пользователь IUSR_* имеет право доступа Full
Control к каталогу _vti_bin и Shtml.exe. Если взломщик
узнал пароль IUSR_<hostname> (обычно достаточно
простой), то он может получить доступ к каталогу с
исполняемыми файлами. В FrontPage'97 это упущение
исправлено.
Подробности: http://support.microsoft.com/support/kb/articles/Q162/1/44.asp
При запуске администратором в Windows NT 3.51 File Manager
из панели MS Office 7.0, он получает доступ к каталогу,
на который у него нет прав доступа. Это связано с
тем, что File Manager наследует права 'backup and restore permissions'
от панели Office, которые используются Офисом для
записи пользовательских настроек в реестр.
Ошибка исправлена начиная с Office7.0a
Подробности: http://support.microsoft.com/support/kb/articles/Q146/6/04.asp
Служба FTP позволяет устанавливать пассивные
соединения на основе адреса порта, указанного
клиентом. Это может быть использовано взломщиком
для выдачи опасных команд службе FTP.
Реестр содержит ключ
<HKLM\System\CurrentControlSet\Services\MSFTPSVC\Parameters>
со значением
<EnablePortAttack: REG_DWORD: >
Убедитесь, что значение установлено в '0', а не '1'.
Подробности: http://support.microsoft.com/support/kb/articles/Q147/6/21.asp
Несанкционированный доступ
Драйвер ntfsdos.exe
позволяет читать раздел с NTFS из DOS,Windows,Windows'95.
Права доступа при этом игнорируются. Авторами
был обещан вариант драйвера с возможностью
записи.
Аналогичный драйвер (read only) существует для Linux: http://www.informatik.hu-berlin.de/~loewis/ntfs/
Один из популярных методов проникновения в
систему - подбор пароля. Для борьбы с этим обычно
устанавливают блокировку учетной записи
пользователя после определенного числа
неудачных попыток входа. Приятным исключением
является учетная запись администратора. И если
он имеет право доступа на вход через сеть, это
открывает лазейку для спокойного угадывания
пароля.
Для защиты рекомендуется переименовать
пользователя Administrator, установить блокировку
учетных записей, запретить админитратору вход в
систему через сеть, запретить передачу SMB пакетов
через TCP/IP (порты 137,138,139), установить
протоколирование неудачных входов.
Подробности: http://somarsoft.com/ntcrack.htm
Еще один способ - перехват
проходящей по сети информации.
Подробности:
IP-Watcher | http://www.engarde.com/software/ipwatcher/watcher.html |
MS SMS Netmon | http://www.microsoft.com/smsmgmt/ |
Проблемы IIS
Пользователь Anonymous может получить в IIS права
пользователей домена при установке IIS на
контроллер домена (PDC)
Подробности: http://www.microsoft.com/kb/articles/q147/6/91.htm
Internet Information Server 1.0 (IIS) допускает использование
batch-файлов в качестве CGI-прилложений. Это весьма
опасно, поскольку batch-файлы выполняются в
контексте командного процессора (cmd.exe).
Подробности:
http://www.microsoft.com/kb/articles/q155/0/56.htm
http://www.microsoft.com/kb/articles/Q148/1/88.htm
http://www.omna.com/iis-bug.htm
В IIS 1.0 адрес типа 'http://www.domain.com/..\.."
позволяет просматривать и скачивать файлы вне
корневого каталога web-сервера.
Адрес 'http://www.domain.com/scripts..\..\scriptname" позволяет
выполнить указанный скрипт.
По умолчанию пользователь Guest или IUSR_WWW
имеет права на чтение всех файлов во всех
каталогач. Так что эти файлы могут быть
просмотрены, скачаны и запущены.
Адрес "http://www.domain.com/scripts/exploit.bat>PATH\target.bat"
создаст файл 'target.bat'. Если файл существует, он
будет обрезан.
К тем же последствиям приведет адрес
"http://www.domain.com/scripts/script_name%0A%0D>PATH\target.bat".
Подробности: http://www.omna.com/iis-bug.htm
Если соединиться через telnet с портом 80, команда "GET ../.." <cr> приведет к краху IIS и сообщению "The application, exe\inetinfo.dbg, generated an application error The error occurred on date@ time The exception generated was c0000005 at address 53984655 (TCP_AUTHENT::TCP_AUTHENT"
Атаки типа Denial of Service
Ping of Death
Фрагментированный ICMP-пакет большого размера может привести к зависанию системы. Так, команда PING -l 65527 -s 1 hostname на NT 3.51 приведет к "синему экрану" с сообщением.
STOP: 0X0000001E
KMODE_EXCEPTION_NOT_HANDLED - TCPIP.SYS
-ИЛИ-
STOP: 0x0000000A
IRQL_NOT_LESS_OR_EQUAL - TCPIP.SYS
Подробности: http://www.microsoft.com/kb/articles/q132/4/70.htm
Исправление: 3-й Service Pack c последующей установкой ICMP-fix
SYN-атака.
Послав большое количество запросов на
TCP-соединение (SYN) с недоступным обратным адресом,
получим следующий результат:
При получении запроса система выделяет ресурсы
для нового соединения, после чего пытается
ответить на запрос (послать "SYN-ACK") по
недоступному адресу. По умолчанию NT версий 3.5-4.0
будет пытаться повторить подтверждение 5 раз -
через 3, 6, 12, 24 и 48 секунд. После этого еще 96 секунд
система может ожидать ответ, и только после этого
освободит ресурсы, выделенные для будущего
соединения. Общее время занятости ресурсов - 189
секунд.
Подробности: http://www.microsoft.com/kb/articles/q142/6/41.htm
Исправление: 3-й Service Pack
WinNuke
Посылка данных в 139-й порт приводит к
перезагрузке NT 4.0, либо вывод "синего экрана
смерти" с установленным 2-м Service Pack'ом.
Исправление: 3-й Service Pack c последующей установкой OOB
fix. Это исправление включено также в ICMP-fix.
Аналогичная посылка данных в 135 и некоторые
другие порты приводит к значительной загрузке
процессора RPCSS.EXE. На NTWS это приводит к
существенному замедлению работы, NTS практически
замораживается.
Исправление: 3-й Service Pack
Service Pack 3
Многие проблемы безопасности NT4.0 были
устранены в 3-м Service Pack'е. Список исправлений весьма
внушителен. В первую очередь это атаки типа Denial of
Service - WinNuke, ошибка со 135-м портом, перехват
сообщений SMB ("man-in-the-middle attack") и т.д.
Настоятельно рекомендуется установить SP3, если
Вас волнует вопрос безопасности Вашей системы. С
момента выхода SP3 вышло еще несколько обновлений
(hot-fixes), доступных на
ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes/usa/nt40/hotfixes-postSP3.
asp-fix | Устранение проблем производительности с Active Server Pages 1.0b, установленных на IIS3.0 |
dblclick-fix | Некоторые программы (например, Visio Professional 4.x) после установки SP3 стали реагировать на двойной щелчок мыши как на одинарный. Включен в состав getadmin-fix. |
dns-fix | Устраняет некоторые проблемы, связанные с сервером DNS |
getadmin-fix | Решает проблему, связанную с программой getadmin.exe, которая позволяла пользователям (кроме Guest) добавить себя в группу Administrators локальной машины. Также включает dblclick-fix и java-fix. |
icmp-fix | Решение проблем с зависанием системы при получении фрагментированного ICMP-пакета большого размера. Включает также oob-fix. |
iis-fix | Остановка IIS 2.0 и3.0 при получении большлго CGI-запроса (от 4 до 8k) |
java-fix | Зависание IE3.02 при открытии страниц с Java после установки SP3. Включен в состав getadmin-fix. |
lm-fix | Позволяет отключить аутентификацию Lan Manager (LM).
Добавляет в реестр новый параметр к следующему
ключу: HKLM\System\CurrentControlSet\control\LSA Value: LMCompatibilityLevel Value Type: REG_DWORD - Number Возможные значения: 0,1,2, по умолчанию - 0
В последнем случае невозможно соединение с Windows'95 и Windows for Workgroups |
lsa-fix | Устраняет ошибку доступа в Lsass.exe, возникающую при передаче неправильного размера буфера удаленным клиентом при соединении с LSA (Local Security Authority) через именованный канал (named pipe). Включен в lsa2-fix |
ndis-fix | Устраняет ошибку, вызывающую утечку памяти и синий экран с сообщением о неверной команде в ndis.sys при использовании промежуточных драйверов NDIS. |
oob-fix | Посылка "Out of Band" - данных в 139-й порт приводила к зависанию или перезагрузки системы (Атака WinNuke). Первоначальный вариант исправления, включенный в SP3, не решил все проблемы. Включен в состав icmp-fix. |
scsi-fix | Устранение ошибок при работе с системами защиты от сбоев (Fault Tolerant Systems) |
simptcp-fix | Атака Denial of Service, состоящая в посылке большого количества UDP-дейтаграмм с ложного адреса на 19-й порт, при установленных Simple TCP/IP services, приводила к повышенному UDP-траффику. |
winsupd-fix | Исправление ошибки в WINS, приводящей к его завершению при получении неверных пакетов UDP |
zip-fix | Устранение проблем с ATAPI-версией Iomega ZIP |
За время, прошедшее с момента
написания этой статьи, было выпущено еще
несколько hot-fixes:
2gcrash | Устраняет некоторые проблемы на машинах с RAM более чем 1.7 Gb. Подробности меня как-то не заинтересовали :) |
ide-fix | Устраняет проблемы с новыми IDE/ATAPI винчестерами на компьютерах с возможностью автоматического выключения (shut down and power down feature). |
iis4-fix | Исправляет ошибку в Afd.sys |
joystick-fix | Устраняет проблему калибровки ножных педалей, подключенных к game-порту. Полезная штука. В отличие от большинства фиксов, версия для Alpha почему-то отсутствует :) |
land-fix | Ответ на "Land Attack". Включает icmp-fix и oob-fix |
pent-fix | Исправление ошибки f00f в Pentium |
roll-up | Исправление ошибок в MS Transaction Server 2.0 и MS Cluster Server 1.0 |
SAG-fix | Исправление ошибок конвертации EBCDIC->ANSI при работе с IBM-системами |
wan-fix | Устранение возможного "синего экрана" при копировании файлов через RAS по SLIP |
teardrop2-fix | Исправление зависания при атаке "teardrop". Включает ICMP-fix, OOB-fix, и Land-fix |
tapi21-fix | Исправление ошибок TAPI 2.1 |
pcm-fix | Исправление ошибки в драйвере PC-карт при работе с Xircom CBE-10/100BTX |
srv-fix | Очередная атака типа "Denial of Service". Зависание/перезагрузка при получении SMB-запроса, размер которого не соответствует указанному в заголовке. |
pptp-fix | Исправление ошибок в работе сервера Point-to-Point Tunneling Protocol (STOP при получении неверного управляющего пакета PPTP). Включен в pptp2-fix. |
y2k-fix | Устранение ряда ошибок, связанных с проблемой 2000 года (нераспознавание 2000 года как високосного, проблемы с офисными приложенями, Find File, пропуск дня при изменении даты). |
euro-fix | Дополнения, связанные с введением новой европейской валютой. |
atapi-fix | Исправление некорректной работы с IBM-овскими дисками DTTA-351010 - из 10.1Gb видны только 7.5. |
netbt-fix | Устранение задержки (до 90 секунд) при обращении к удаленному серверу при использовании файла LMHOSTS. |
prnt-fix | Устранение некоторых ошибок при работе с принтерами (неверный сброс, проблемы со старыми принтерами и т.п.) |
lsa2-fix | Вышел на замену lsa-fix, но был отозван из-за обнаруженных проблем |
sfm-fix | Исправление десятка проблем, связанных с Services for Macintosh (SFM) - от неверной модификации времени создания файла до синего экрана. |
pptp2-fix | Обновление реализации Point to Point Tunneling Protocol (PPTP) - улучшена производительность, повышена надежность. |
rras20-fix | Обновление Routing and Remote Access Service (в девичестве Steelhead). Требует установки pptp2-fix. Добавлены новые Demand dial фильтры, возможность фильтрации фрагментированных IP-пакетов и т.д. |
ssl-fix | Включает обновленную версию Schannel.dll. Исправляет свежеобнаруженные проблемы в Secure Sockets Layer (SSL) и некоторые мелкие ошибки. Банки за пределами США теперь могут воспользоваться 128-битной шифрацией. |
priv-fix | Используя программу Sechole.exe, локальный пользователь может получить администраторские привилегии. |
При необходимости установки нескольких hot fix'ов рекомендуемый порядок установки выглядит следующим
образом:
asp-fix
dns-fix
iis-fix
zip-fix
roll-up
getadmin-fix
lm-fix
roll-up/cluster
winsupd-fix
ndis-fix
scsi-fix
2gcrash
simptcp-fix
ide-fix
wan-fix
pent-fix (x86 only)
joystick-fix (x86 only)
SAG-fix
iis4-fix
pptp-fix
teardrop2-fix
tapi21-fix
pcm-fix
srv-fix
y2k-fix
euro-fix
atapi-fix
netbt-fix
prnt-fix
lsa2-fix
sfm-fix
pptp2-fix
rras20-fix
ssl-fix
priv-fix
Число исправлений уже пошло на четвертый десяток, их установка уже давно представляет собой весьма занудный и мучительный процесс. Так что мировая общественность с нетерпением ждет выхода 4-го Service Pack'а, выход которого назначен на лето 1998 года (прошедшая в апреле информация о преждевременном выходе оказалась неверна - речь шла всего лишь о бета-версии).
SP3 и некоторые hotfix'ы для русской версии NT можно найти на ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes/rus/nt40/.
обсудить | все отзывы (0) | |
[38247; 3; 8.33] |
|
|