Отказ в обслуживании

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

Для исполнения атак такого рода используется несколько методов, но наиболее обще- распространенным и эффективным методом является организация распределенной атаки. С помощью распределенных атак отказа в обслуживании несколько крекеров, используя несколько запущенных и управляемых ими программ, могут полностью за- блокировать работу серверов Интернета. Для этого крекеры нелегально устанавливают и запускают на хостах Интернета специальные программы, называемые «зомби», кото- рые способны действовать как самостоятельно, так и под удаленным управлением своих хозяев. В определенный момент времени крекеры отдают своим программным «зомби» команду затопить отдельный сервер потоками запросов, требующих от сервера отклика или отправки данных, после чего сервер, истощив свои вычислительные ресурсы, замедляет свою работу или вообще претерпевает аварийный останов. В любом из этих случаев, сервер будет не в состоянии обрабатывать запросы, которые посылают обыч- ные пользователи.

Другой тип атак, ведущих к отказу в обслуживании, на удивление прост в исполнении, Например, команда ping, используемая для определения доступности сервера, может быть использована для переполнения серверного буфера, что приводит систему к краху. Те же самые вещи эффективно исполняет атака SYN Flood, за тем только исключением, что для реализации своих целей в атаке SYN Flood используется известная уязвимость протоколов TCP/IP. Согласно протоколу TCP/IP, все запросы к серверу исполняются в два этапа. Вначале крекер запрашивает какой-либо несчастный сервер о возможности установления соединения. Далее в ответ на поступивший запрос этот сервер должен отослать подтверждение о приеме запроса, после чего установить соединение с запра- шивающим компьютером.

Поскольку компьютеру крекера, в действительности, не нужно никакого соединения, эти подтверждения сервера-жертвы им отбрасываются, и вся процедура запроса повторяется до тех пор, пока атакуемый сервер не прекратит обработку поступившего запроса по причине исчерпания времени ожидания. Другими словами, сервер, в конце концов, об- рывает процесс установления соединения, и возвращается в режим ожидания нового запроса. В течение этого периода, пока атакуемый сервер продолжает отсылать под- тверждения компьютеру крекера, серверный компьютер расходует мощности своего процессора и память. Крекеры могут автоматизировать исполнение таких атак, после чего атакованный сервер будет затоплен потоком запросов, и, опять-таки, не сможет обработать ни одного запроса на установление связи с сервером. Как следствие, сервер прекратит нормальное функционирование и станет недоступным.

В дополнение к вышесказанному отметим, что существуют методы атак, ориентированные на отдельные типы компьютерных платформ и операционных систем. Чтобы сделать свой сайт Web менее уязвимыми для атак, вам следует знать о существовании таких методов и обязательно использовать последние версии серверов Web и непрерывно их обновлять.

Продолжение темы:

Полезная информация