Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3 DoS.docx
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
754 Кб
Скачать
☆

Заключение

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

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

Однако, решающими факторами, признающими некоторое соответствие экспериментальной модели реальным условиям, являются:

  • заведомо малое количество атакующих хостов;

  • не соизмеримая с ними по величине «ширина канала» связи;

  • отсутствие SQL-базы «логин-паролей» для Apache и Samba, что значительно повышает быстродействие всей серверной системы;

  • примитивность всех видов реализованных атак.

Так же следует отметить, что наибольшей уязвимостью по отношению к успешному проведению DoS/DDoS-атаки обладает файловый samba-сервер, не отвечающий, даже как программный модуль, заданным требованиям безопасности. С другой стороны, подобная ситуация никогда не будет иметь места в реальных условиях сети Internet, но только в случае локальных DDoS-атак. К тому же экспериментально было доказано опровержение мифа о серьезной нестабильности последних версий Samba по отношению к «лавине» запросов. Очевидно, что в исходные коды было внесено дополнение, позволяющее системе Samba в момент пиковой нагрузки обрывать все сеансы связи с последующим перезапуском модуля сервера и восстановлением данных сеансов.

В таком случае наиболее важными фактами противодействия DDoS-атакам всегда остаются:

  1. Быстрые веб-приложения и более чем один сервер, т.е если тестирвать проекты не на 60-70% загрузке CPU, как при обычной работе, а разгонять до 200-300 запросов в секунду с одного ядра, то бороться с DDoS уже будет много легче.

  2. При DDoS необходимо блокировка по IP, участвующим в атаке.

  3. Нужна резервируемость проекта. Атака стоит денег и не имеет смысла, если не приносит никакой выгоды. Именно поэтому любой проект изначально должен иметь возможность подключать сервера в кратчайшие сроки. Это будет стоить денег, но проводить атаку, если она не приносит результатов вообще, никто не станет.

Список использованных источников

  1. Д. Лавникевич. Анатомия DDoS. [Электронный ресурс] – Режим доступа: http://j3qx.wordpress.com/2009/01/07/анатомия-ddos/, свободный, дата обращения 20.05.2010г., свободный, загл. с экрана.

  2. Е. Зобин. Устоять любой ценой: методы борьбы с DoS/DDoS-атаками. [Электронный ресурс] – Режим доступа: http://www.xakep.ru/post/49752/default.asp, свободный, дата обращения 24.04.2010г., свободный, загл. с экрана.

  3. Positive Technologies. Методы защиты от DDoS нападений. [Электронный ресурс] – Режим доступа: http://www.securitylab.ru/analytics/216251.php, свободный, дата обращения 12.04.2010г., свободный, загл. с экрана.

  4. Р. Хансен. DoS-атака с малым использованием трафика выявляет уязвимость в Apache. [Электронный ресурс] – Режим доступа: http://www.xakep.ru/post/48609/default.asp, свободный, дата обращения 9.04.2010г., свободный, загл. с экрана.

  5. Костров Д.В. Рынок систем обнаружения компьютерных атак. - Конфидент, №6, 2002 г., стр. 53 – 60.

  6. В. Путяк. Примеры сетевой обороны на PHP. [Электронный ресурс] – Режим доступа: http://docs.com.ru/php_7.php, свободный, дата обращения 14.05.2010г., свободный, загл. с экрана.

  7. Front-End and Back-End Server Topology Guide for Microsoft Exchange Server 2003 and Exchange 2000 Server [Электронный ресурс] – Режим доступа: http://go.microsoft.com/fwlink/?LinkId=69352, свободный, дата обращения 11.01.2010г., свободный, загл. с экрана.

  8. Д. Батранков. Не так страшен DDoS, как его малюют [Электронный ресурс] – Режим доступа: http://www.securitylab.ru/contest/357397.php, свободный, дата обращения 18.12.2011г., свободный, загл. с экрана.

Приложение А

Спецификация

Обозначение

Наименование

Примечание

Документ

Настройка lighttpd

Приложение Б

Документ

Настройка Varnish

Приложение В

ПРИЛОЖЕНИЕ Б

Настройка lighttpd

#portsnap fetch update

#portsnap fetch update

lexx# whereis lighttpd

lighttpd: /usr/ports/www/lighttpd

lexx# cd /usr/ports/www/lighttpd && make install clean

lexx# cd /usr/local/etc/

lexx# cp ./lighttpd.conf.sample ./lighttpd.conf

lexx# ee ./lighttpd.conf

## список всех модулей

server.modules = (

"mod_rewrite",

"mod_redirect",

"mod_alias",

"mod_access",

# "mod_cml",

# "mod_trigger_b4_dl",

# "mod_auth",

# "mod_status",

# "mod_setenv",

"mod_fastcgi",

# "mod_proxy",

# "mod_simple_vhost",

# "mod_evhost",

# "mod_userdir",

# "mod_cgi",

# "mod_compress",

# "mod_ssi",

# "mod_usertrack",

# "mod_expire",

# "mod_secdownload",

# "mod_rrdtool",

"mod_accesslog" )

## Алиасы сервера: к примеру http://www.mysite.ru/phpmyadmin/

alias.url += ( "/phpmyadmin/" => "/usr/local/www/phpMyAdmin/" )

## Корневая папка сервера

server.document-root = "/usr/local/www/"

## Лог ошибок. Автоматически не создается

server.errorlog = "/var/log/lighttpd.error.log"

# Пример http://www.mysite.ru/index.php

index-file.names = ( "index.php", "index.html",

"index.htm", "default.htm" )

## Где то читал что это важная опция =)

server.event-handler = "freebsd-kqueue"

# Расширения

mimetype.assign = (

".pdf" => "application/pdf",

".sig" => "application/pgp-signature",

".spl" => "application/futuresplash",

".class" => "application/octet-stream",

".ps" => "application/postscript",

".torrent" => "application/x-bittorrent",

".dvi" => "application/x-dvi",

".gz" => "application/x-gzip",

".pac" => "application/x-ns-proxy-autoconfig",

".swf" => "application/x-shockwave-flash",

".tar.gz" => "application/x-tgz",

".tgz" => "application/x-tgz",

".tar" => "application/x-tar",

".zip" => "application/zip",

".mp3" => "audio/mpeg",

".m3u" => "audio/x-mpegurl",

".wma" => "audio/x-ms-wma",

".wax" => "audio/x-ms-wax",

".ogg" => "application/ogg",

".wav" => "audio/x-wav",

".gif" => "image/gif",

".jar" => "application/x-java-archive",

".jpg" => "image/jpeg",

".jpeg" => "image/jpeg",

".png" => "image/png",

".xbm" => "image/x-xbitmap",

".xpm" => "image/x-xpixmap",

".xwd" => "image/x-xwindowdump",

".css" => "text/css",

".html" => "text/html",

".htm" => "text/html",

".js" => "text/javascript",

".asc" => "text/plain",

".c" => "text/plain",

".cpp" => "text/plain",

".log" => "text/plain",

".conf" => "text/plain",

".text" => "text/plain",

".txt" => "text/plain",

".dtd" => "text/xml",

".xml" => "text/xml",

".mpeg" => "video/mpeg",

".mpg" => "video/mpeg",

".mov" => "video/quicktime",

".qt" => "video/quicktime",

".avi" => "video/x-msvideo",

".asf" => "video/x-ms-asf",

".asx" => "video/x-ms-asf",

".wmv" => "video/x-ms-wmv",

".bz2" => "application/x-bzip",

".tbz" => "application/x-bzip-compressed-tar",

".tar.bz2" => "application/x-bzip-compressed-tar",

# default mime type

"" => "application/octet-stream",

)

## Лог доступа. Тоже не создается автоматически, следовательно создаем вручную

accesslog.filename = "/var/log/lighttpd.access.log"

# Расширения для fastcgi

static-file.exclude-extensions = ( ".fcgi", ".php", ".rb", "~", ".inc", ".pl", ".yml" )

## Пид-файл сервера

server.pid-file = "/var/run/lighttpd.pid"

# Виртуальные директории

$HTTP["host"] == "www.mysite.su" {

server.document-root = "/usr/home/Mysite/public_html/"

server.error-handler-404 = "/index.php?error=404" }

$HTTP["host"] == "www.mysite2.ru" {

server.document-root = "/usr/home/Mysite2/public_html/mysite2/"

server.error-handler-404 = "/index.php?error=404"}

## Просмотр пустых директорий

dir-listing.activate = "enable"

## Пользователь, от которого работает сервер

server.username = "www"

## Группа, от которой работает сервер

server.groupname = "www"

## Конфигурация FastCGI (не забываем установить сам php)

fastcgi.server = ( ".php" =>( "localhost" =>

( "socket" => "/tmp/fcgi",

"max-procs" => 2,

"bin-environment" => (

"PHP_FCGI_CHILDREN" => "4",

"PHP_FCGI_MAX_REQUESTS" => "100"

),

"bin-path" => "/usr/local/bin/php-cgi",

"broken-scriptfilename" => "enable"

)

)

)