Иллюстрированный самоучитель по Secure Web


Переполнение буфера - часть 4


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.





Начало  Назад  Вперед



Книжный магазин