Главная | О проекте | Блог | Реклама
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное

  • Место для вашей рекламы

    Опросы на сайте

     

    Опрос

    Оцените работу движка


     
     
    • Партнеры



    Наши друзья


  • 
    Автор: NA Добавили: 22-05-2010, 09:45 Посмотрели: 2092 раз

    Зашита Windows от DOS


    Недавно столкнулся с проблемой дос атаки...
    Но так как влом было переходить с виндов на линукс, решил загуглить... и вот что нашел (текст не мой, но помог, сслыка на автора внизу статьи)
    Ссылка на архив с прогой (х86-х64)

    Статья написана для сервера л2, но я думаю, кому нужно-сам сможет переписать правила под себя(тем более что все красиво описано)

    Защита от Dos/DDos атак для Windows

    Сразу предупреждение: данный мануал не для тех, кто привык нажимать на кнопочки. Чтобы все заработало нужно хорошо думать что делаете, и иметь прямые руки.

    Те, кто знаю Linux, понимают, на сколько удобно использовать iptables для создания правил, который будут отражать все атакующие зомби-машины, с помощью этих защит можно огородить не только свой Lineage 2 Java сервер, но и другие серверы либо новые браузерные игры.

    Но к счастью, или к сожалению ( для хакеров ), на Windows'e тоже есть подобная софтина, и называется она - wipfw. И сегодня, автор, расскажет Вам как использовать их в своих целях.

    В архиве находятся версии для 32 и 64 битных виндов
    Разархивируем данный софт в любую папку, и устанавливаем ( запускаем install.bat ).
    Отлично, вот и все, софт установлен - стандартные правила записаны.

    Для изменений правил, Вы можете использовать cmd.exe и команды ipfw, посмотреть их можно тут.

    Но согласитесь, не очень удобно записывать правила в команду, если их очень много, поэтому мы будем использовать файл "wipfw.conf", который находится в корне программы - в него записываются стандартные правила, а для того, чтоб они загрузились, нужно запустить "loadrules.cmd", который находится в папке bin.

    С этого момента, если Вы прочитаете DOC по командам ipfw, Вы уже можете написать хорошую защиту.

    Но я хочю Вам, как пример, предоставить структуру своего файла "wipfw.conf", что возможно упростит Вашу настройку защиты.

    Для начала, выложу полностью весь файл, а далее мы будем разбирать каждую строку.

    И так, мой "wipfw.conf" выглядит так:

    Code
    -f flush
    add 1 allow tcp from any to any 53
    add 2 allow tcp from any 53 to any
    add 3 allow udp from any to any 53
    add 4 allow udp from any 53 to any

    add 10 allow tcp from 195.16.88.3 to me

    add 100 allow tcp from me to any
    add 120 allow tcp from 192.0.0.0/8 to any
    add 120 skipto 10000 tcp from 2.0.0.0/8 to any
    add 120 skipto 10000 tcp from 66.0.0.0/8 to any
    add 120 skipto 10000 tcp from 46.0.0.0/8 to any
    add 120 skipto 10000 tcp from 62.0.0.0/8 to any
    add 120 skipto 10000 tcp from 77.0.0.0/8 to any
    add 120 skipto 10000 tcp from 78.0.0.0/8 to any
    add 120 skipto 10000 tcp from 79.0.0.0/8 to any
    add 120 skipto 10000 tcp from 80.0.0.0/8 to any
    add 120 skipto 10000 tcp from 81.0.0.0/8 to any
    add 120 skipto 10000 tcp from 82.0.0.0/8 to any
    add 120 skipto 10000 tcp from 83.0.0.0/8 to any
    add 120 skipto 10000 tcp from 84.0.0.0/8 to any
    add 120 skipto 10000 tcp from 85.0.0.0/8 to any
    add 120 skipto 10000 tcp from 86.0.0.0/8 to any
    add 120 skipto 10000 tcp from 87.0.0.0/8 to any
    add 120 skipto 10000 tcp from 88.0.0.0/8 to any
    add 120 skipto 10000 tcp from 89.0.0.0/8 to any
    add 120 skipto 10000 tcp from 90.0.0.0/8 to any
    add 120 skipto 10000 tcp from 91.0.0.0/8 to any
    add 120 skipto 10000 tcp from 92.0.0.0/8 to any
    add 120 skipto 10000 tcp from 93.0.0.0/8 to any
    add 120 skipto 10000 tcp from 94.0.0.0/8 to any
    add 120 skipto 10000 tcp from 95.0.0.0/8 to any
    add 120 skipto 10000 tcp from 109.0.0.0/8 to any
    add 120 skipto 10000 tcp from 178.0.0.0/8 to any
    add 120 skipto 10000 tcp from 188.0.0.0/8 to any
    add 120 skipto 10000 tcp from 193.0.0.0/8 to any
    add 120 skipto 10000 tcp from 194.0.0.0/8 to any
    add 120 skipto 10000 tcp from 195.0.0.0/8 to any
    add 120 skipto 10000 tcp from 212.0.0.0/8 to any
    add 120 skipto 10000 tcp from 213.0.0.0/8 to any
    add 120 skipto 10000 tcp from 217.0.0.0/8 to any
    add 120 skipto 10000 tcp from 204.16.252.109 to any
    add 120 skipto 10000 tcp from 38.99.77.20 to any
    # GOOGLE
    add 120 skipto 10000 tcp from 74.125.95.93 to any
    add 120 skipto 10000 tcp from 74.125.127.93 to any
    add 120 skipto 10000 tcp from 74.125.43.99/16 to any
    add 120 skipto 10000 tcp from 209.85.135.95/16 to any
    add 120 skipto 10000 tcp from 64.12.202.116/16 to any
    # depositfiles
    add 120 skipto 10000 tcp from 208.88.224.248/24 to any
    # DynDNS
    add 120 skipto 10000 tcp from 204.13.248.117/16 to any
    add 200 skipto 10000 icmp from any to any in icmptype 5,9,13,14,15,16,17
    add 500 deny all from any to any

    add 10000 allow tcp from any to any 80,443,49441,5938,4344,9019,5190
    add 10001 allow tcp from any 80,443,49441,5938,4344,9019,5190 to any
    add 10002 allow tcp from any to me 7777 setup limit src-addr 15 in
    add 10003 allow tcp from any to me 2106 setup limit src-addr 5 in
    add 10005 allow tcp from any to any 7777 out
    add 10006 allow tcp from any to any 2106 out
    add 10500 deny all from any to any

    И так, поехали...

    Code
    -f flush

    - Удаляю все записи, которые были у меня до этого момента.

    Code
    add 1 allow tcp from any to any 53
    add 2 allow tcp from any 53 to any
    add 3 allow udp from any to any 53
    add 4 allow udp from any 53 to any

    - Открываю порты для получения и отправки данных к серверам DNS

    Code
    add 10 allow tcp from 195.16.88.3 to me

    - Открываю данному ip ( ip моего хостинга ) все порты и разрешаю передавать мне любую информацию

    Code
    add 100 allow tcp from me to any

    - Разрешаю себе передавать информацию любому серверу на всех портах

    Code
    add 120 allow tcp from 192.0.0.0/8 to any

    - Разрешаю своим локальным компьютерам передавать информацию любому серверу на всех портах

    Code
    add 120 skipto 10000 tcp from 2.0.0.0/8 to any
    add 120 skipto 10000 tcp from 66.0.0.0/8 to any
    add 120 skipto 10000 tcp from 46.0.0.0/8 to any
    add 120 skipto 10000 tcp from 62.0.0.0/8 to any
    add 120 skipto 10000 tcp from 77.0.0.0/8 to any
    add 120 skipto 10000 tcp from 78.0.0.0/8 to any
    add 120 skipto 10000 tcp from 79.0.0.0/8 to any
    add 120 skipto 10000 tcp from 80.0.0.0/8 to any
    add 120 skipto 10000 tcp from 81.0.0.0/8 to any
    add 120 skipto 10000 tcp from 82.0.0.0/8 to any
    add 120 skipto 10000 tcp from 83.0.0.0/8 to any
    add 120 skipto 10000 tcp from 84.0.0.0/8 to any
    add 120 skipto 10000 tcp from 85.0.0.0/8 to any
    add 120 skipto 10000 tcp from 86.0.0.0/8 to any
    add 120 skipto 10000 tcp from 87.0.0.0/8 to any
    add 120 skipto 10000 tcp from 88.0.0.0/8 to any
    add 120 skipto 10000 tcp from 89.0.0.0/8 to any
    add 120 skipto 10000 tcp from 90.0.0.0/8 to any
    add 120 skipto 10000 tcp from 91.0.0.0/8 to any
    add 120 skipto 10000 tcp from 92.0.0.0/8 to any
    add 120 skipto 10000 tcp from 93.0.0.0/8 to any
    add 120 skipto 10000 tcp from 94.0.0.0/8 to any
    add 120 skipto 10000 tcp from 95.0.0.0/8 to any
    add 120 skipto 10000 tcp from 109.0.0.0/8 to any
    add 120 skipto 10000 tcp from 178.0.0.0/8 to any
    add 120 skipto 10000 tcp from 188.0.0.0/8 to any
    add 120 skipto 10000 tcp from 193.0.0.0/8 to any
    add 120 skipto 10000 tcp from 194.0.0.0/8 to any
    add 120 skipto 10000 tcp from 195.0.0.0/8 to any
    add 120 skipto 10000 tcp from 212.0.0.0/8 to any
    add 120 skipto 10000 tcp from 213.0.0.0/8 to any
    add 120 skipto 10000 tcp from 217.0.0.0/8 to any

    - Все СНГ пользователи ( т.е - здесь IP всей СНГ ) перебрасываются на правило №10000

    Code
    add 120 skipto 10000 tcp from 204.16.252.109 to any
    add 120 skipto 10000 tcp from 38.99.77.20 to any
    add 120 skipto 10000 tcp from 74.125.95.93 to any
    add 120 skipto 10000 tcp from 74.125.127.93 to any
    add 120 skipto 10000 tcp from 74.125.43.99/16 to any
    add 120 skipto 10000 tcp from 209.85.135.95/16 to any
    add 120 skipto 10000 tcp from 64.12.202.116/16 to any
    add 120 skipto 10000 tcp from 208.88.224.248/24 to any
    add 120 skipto 10000 tcp from 204.13.248.117/16 to any

    - Дополнительные серверы, которые подключаясь ко мне будут перебрасываться на правило №10000 - За зоной СНГ ( Здесь google, depositfiles, imageshacke, youtube )

    Code
    add 200 skipto 10000 icmp from any to any in icmptype 5,9,13,14,15,16,17

    - Закрываем порты от сканирование ( делаем невидимыми )

    Code
    add 500 deny all from any to any

    - Отклоняем все пакеты, что дошли к данному правилу. ( Запретить все что сюда дошло )

    Code
    add 10000 allow tcp from any to any 80,443,49441,5938,4344,9019,5190
    add 10001 allow tcp from any 80,443,49441,5938,4344,9019,5190 to any

    - Открываю нужные мне порты для использования, здесь http, skype, icq

    Code
    add 10002 allow tcp from any to me 7777 setup limit src-addr 15 in
    add 10003 allow tcp from any to me 2106 setup limit src-addr 5 in

    - Открываю порт 7777 и 2106 для подсоединения ко мне, с максимальным числом подсоединение с одного IP ( для логин сервера ) 5 и ( для гейм сервера ) 15.

    Code
    add 10005 allow tcp from any to any 7777 out
    add 10006 allow tcp from any to any 2106 out

    - Ещё-раз разрешаю себе отдавать пакеты на портах 7777 и 2106 ( это не обязательно, так как на правиле №100 мы разрешили себе отдавать от себя все и на всех портах )

    Code
    add 10500 deny all from any to any

    - Отклоняем все, что дошло до данного правила

    Вот и все, также хочу сказать, что все правила выполняются в последовательности их номеров, это очень важно!
    Если Вы сначала поставите правило, которые будет запрещать это, а после добавите правило для разрешения подключений, оно будет нерабочим.

    Небольшой комментарий того, что предоставлено в моих правилах:
    - Разрешают доступ к себе только странам СНГ и нужным нам серверам ( А зачем нам Великобритания или Африка? Не думаю что потенциальный игроки там будут, но вот бот-машины там точно есть ).
    - Закрываем все порты, исключая нужные нам и игровые порты.
    - Устанавливаем ограничение на подключение к игровым портам с 1 IP.

    Вот и все, несколько правил, и Ваш компьютер защищен!

    Добавлю интересную информацию:
    Функция deny - сбрасывает пакет.
    Функция skipto [number] - перебрасывает пакет на указанное правило, если его нет, идет дальше по списку ( выше по номеру ).
    Функция allow - пропуска пакет.
    Для добавления правил через cmd, в начало нужно добавлять ipfw.
    Для очистки всех правил, наберите в cmd - ipfw -f flush
    Для просмотра всех правил, наберите в cmd - ipfw list

    Команда в cmd для блокировки конкретного ip:
    ipfw add 10 deny tcp from 10.10.10.10 to any
    (ip 10.10.10.10 будет заблокирован)

    Команда в cmd для блокировки под-сети пользователя:
    ipfw add 10 deny tcp from 10.10.10.10/24 to any
    (ip 10.10.10.0 - 10.10.10.255 будут заблокированы)

    ipfw add 10 deny tcp from 10.10.10.10/16 to any
    (ip 10.10.0.0 - 10.10.255.255 будут заблокированы)

    Для анализирование подключений к себе на компьютер, используйте команду в cmd - netstat
    Также Вы можете смотреть, сколько подключений было отправлено к Вам и сколько активных сейчас. Очень просто наглядно отыскать бот-машины и добавить их ip/под сеть в бан с помощью ipfw ( на примерах как выше )

    А с помощью команды netstat -n | find "2106"
    Вы увидите все подключения на порт 2106.
    Намного удобнее работать отдельно с подключения к конкретному поту, чем со всеми вместе.

    На этом я думаю стоит закончить. Изучайте DOC по правилам ipfw ( сылка на них была выше ), и пишите свои правила, либо переписывайте мои.

    Всем спасибо за внимание и удачи в "отбивании" бот-машин.

    Автор: Kos-Master

    Как оказалось в последствии установить это чудо на Windows Server 2008 x64 не удается, точно так же как и на Windows 7 x64. Эти оси требуют что бы все устанавливаемые в систему драйвера имели цифровую подпись. Загрузка винды в режиме "Отключить проверку цифровой подписи у драйверов" не подходит - каждый раз при загрузке клацать F8 - это верх "задротства". Поэтому опять же помог гугл!. Тем кто хочет установить сею прогу на вин2008 или вин7 советую почитать http://7win.org/Ustanovka/ust17.htm

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

Реклама

Ваша реклама