Всем привет, мы снова встретились, я ваш друг Цюаньчжаньцзюнь.
Длинный отпуск — это короткий период отдыха для ИТ-персонала,Но IT-систему нельзя остановить на какое-то время.,Чем больше праздников,Скорее всего, вызовет большие проблемы,Ниже я расскажу о том, как мы страдали вместе.DOSатакующийСлучай。
Сразу после праздника Весны веб-сервер компании Сяо Ли вышел из строя. В час дня, вернувшись с ужина, Сяо Ли по привычке проверил веб-сервер. Система мониторинга трафика веб-сервера показывает нисходящую красную кривую. В то же время по электронной почте поступает сигнал тревоги, который может определить, что с сервером что-то не так.
Основываясь на приведенных выше вопросах, Сяо Ли немедленно начал проверять логи веб-сервера, пытаясь найти какие-то подсказки о том, что вызвало сбой. В поисках улик руководитель отдела рассказал Сяо Ли, что ему позвонил клиент с жалобой о том, что он не может получить доступ к своему веб-сайту.
В файлах журналов веб-сервера не было обнаружено ничего подозрительного, поэтому Сяо Ли тщательно проверил журналы брандмауэра и журналы маршрутизатора. Распечатывайте записи сервера в случае возникновения проблемы, фильтруйте обычный трафик и сохраняйте подозрительные записи. В таблице 1 показаны результаты печати.
Таблица 1. Статистика журнала брандмауэра
Исходный IP-адрес | IP-адрес назначения | исходный порт | порт назначения | протокол |
---|---|---|---|---|
172.16.45.2 | 192.168.0.175 | 7843 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
10.168.45.3 | 192.168.0.175 | 34511 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
192.168.89.111 | 192.168.0.175 | 1783 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
10.231.76.8 | 192.168.0.175 | 29589 | 7 | 17 |
192.168.15.12 | 192.168.0.175 | 17330 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
172.16.43.131 | 192.168.0.175 | 8935 | 7 | 17 |
10.23.67.9 | 192.168.0.175 | 22387 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
192.168.57.2 | 192.168.0.175 | 6588 | 7 | 17 |
172.16.87.11 | 192.168.0.175 | 21453 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
10.34.67.89 | 192.168.0.175 | 45987 | 7 | 17 |
10.65.34.54 | 192.168.0.175 | 65212 | 7 | 17 |
192.168.25.6 | 192.168.0.175 | 52967 | 7 | 17 |
172.16.56.15 | 192.168.0.175 | 8745 | 7 | 17 |
10.18.18.18 | 192.168.0.175 | 19 | 7 | 17 |
Он проделал то же самое с журналами маршрутизатора и распечатал записи, которые выглядели необычно. В Таблице 5-1 показана нормализованная информация журнала маршрутизатора за период атаки на веб-сайт.
Чтобы получить дополнительную информацию, Сяо Ли затем проверил полную статистику NetFlow в маршрутизаторе. Подробности следующие:
Чтобы получить базовые данные, он также распечатал данные кэша, которые он сохранил за несколько недель до того, как на веб-сервере начались проблемы (это нормальные цифры). Обычный журнал маршрутизации, как показано ниже:
Распределение размеров IP-пакетов В двух строках под этим заголовком показано процентное распределение пакетов по диапазонам размеров. То, что показано здесь, показывает, что только 2% пакетов имеют размер от 33 до 64 байт.
Обратите внимание, что посещаемость сайта резко упала. Судя по всему, в это время ни у кого не было доступа к его веб-серверу. Сяо Ли начал изучать, что произошло и как как можно быстрее исправить неисправность.
2. Вопросы и ответы
1. Что случилось с веб-сервером Сяо Ли? Каковы возможные типы атак?
2. Если адрес не замаскирован, как Сяо Ли сможет отследить злоумышленника?
3. Если адрес замаскирован, как он сможет отследить злоумышленника?
3. Аргументация дела
Каким атакам подвергся веб-сервер Сяо Ли? Эта атака достигается путем непрерывной отправки пакетов UDP на эхо-порт (номер эхо-порта — 7). Судя по всему, атака исходит из двух мест, возможно, двумя злоумышленниками, использующими разные инструменты одновременно. В любом случае перегруженный поток данных приведет к сбою веб-сервера. Однако источник адреса атаки неизвестен. Неизвестно, является ли сам источник атаки распределенным, или один и тот же реальный адрес скрывает множество разных поддельных IP-адресов. Эту проблему трудно оценить. Если Исходный IP-адрес не фейковый,Вы можете обратиться в реестр интернет-номеров ARINI США.,Узнайте, к какой сети принадлежит вторгшийся IP-адрес, из базы данных Whois. Просто свяжитесь с администратором этой сети для получения дополнительной информации, но вряд ли это будет DOS-атака.
Если адрес источника подделан, отследить злоумышленника будет гораздо сложнее. Если вы используете маршрутизатор Cisco, вам также потребуется запросить кэш NetFlow. Но чтобы отследить этот замаскированный адрес, необходимо запросить кэш NetFlow на каждом маршрутизаторе, чтобы определить, на какой интерфейс вошел трафик, а затем проследить его один за другим через эти интерфейсы маршрутизатора, пока не будет найден источник IP-адреса. Однако это очень сложно сделать, поскольку между веб-сервером и исходным компьютером злоумышленника может быть множество маршрутизаторов, и они могут принадлежать разным организациям. Кроме того, этот анализ необходимо проводить во время атаки. Без участия судебного ведомства установить источник будет сложно.
После анализа мы сопоставили информацию в журналах брандмауэра и маршрутизатора и обнаружили некоторые интересные сходства, такие как жирные черные метки в Таблице 5-1. Целью атаки, очевидно, является веб-сервер (192.168.0.175, порт UDP). 7. Это очень похоже на атаку типа «отказ в обслуживании» (но я не могу быть в этом уверен, поскольку атака Исходный Распределение IP-адресов случайное). Адрес кажется случайным, фиксирован только один исходный адрес и его исходный адрес. Номер порта также не изменился. Это очень интересно. Затем он сосредоточил свое внимание на журналах маршрутизатора.
Он обнаружил, что в журналах маршрутизатора в момент атаки было большое количество 64-байтовых пакетов, но в журналах веб-сервера в это время проблем не было. Он также обнаружил, что в журналах маршрутизатора на момент инцидента было большое количество пакетов «UDP-other», и журналы веб-сервера также были в норме. Это явление по-прежнему согласуется с гипотезой об атаках типа «отказ в обслуживании» на основе UDP.
На этом этапе можно предположить, что злоумышленник использует множество небольших UDP-пакетов для заливки эхо-порта (echo 7) веб-сервера. Поэтому следующая задача Сяо Ли и его команды — предотвратить эту атаку. Сначала Сяо Ли заблокировал атаку на роутер. Быстрая настройка правила фильтрации для роутера. Поскольку исходный адрес поступает из случайных источников, они считают, что трудно предотвратить атаки путем ограничения определенного адреса или диапазона адресов, поэтому они решили запретить все UDP-пакеты, отправляемые на 192.168.0.175. Такой подход приведет к тому, что сервер потеряет некоторые функции, например DNS, но, по крайней мере, позволит веб-серверу работать нормально.
Исходный временный список управления доступом DOS (ACL) маршрутизатора выглядит следующим образом:
access-list 121 remark Temporary block DoS attack on web server 192.168.0.175
access-list 105 deny udp any host 192.168.0.175
access-list 105 permit ip any any
Такой подход снижает нагрузку на веб-сервер, но атака все равно может достичь Интернета, что в определенной степени снижает производительность сети. Затем следующим шагом будет связаться с провайдером восходящей полосы пропускания и попросить его временно ограничить весь входящий UDP-трафик на порту 7 веб-сайта Сяо Ли. Это значительно уменьшит сетевой трафик, поступающий на сервер.
Не существует волшебного средства для предотвращения и смягчения последствий DOS-атак, связанных с пропускной способностью. По сути, это атака «большая трубка побеждает тонкую трубку». Злоумышленники могут «командовать» большей пропускной способностью, иногда даже огромной, чтобы победить сеть с недостаточной пропускной способностью. В этом случае предотвращение и смягчение последствий должны дополнять друг друга.
Существует множество способов затруднить возникновение атаки или уменьшить ее последствия, если она произойдет, а именно:
Фильтрация входящего трафика сети Поставщик сетевых услуг должен настроить фильтрацию входящего трафика в своей нисходящей сети, чтобы предотвратить попадание в сеть ложных пакетов. Это не позволит злоумышленникам подделать IP-адреса, что облегчит их отслеживание. Программное обеспечение для фильтрации сетевого трафика никогда не ошибется, отфильтровав нежелательный трафик из вашей сети. Это также может предотвратить атаки DOS, но для того, чтобы эти фильтры были эффективными, их следует устанавливать как можно дальше в сети.
Ограничение скорости сетевого трафика. Некоторые маршрутизаторы имеют максимальные ограничения на скорость трафика. Эти положения о регулировании будут обеспечивать соблюдение политик пропускной способности и позволять данному типу сетевого трафика соответствовать ограниченной пропускной способности. Эта мера также может активно смягчать продолжающиеся атаки.
Системы обнаружения вторжений и инструменты прослушивания хостов. IDS может предупреждать сетевых администраторов о возникновении атак и об инструментах атак, используемых злоумышленниками, что может помочь предотвратить атаки. Инструменты мониторинга хоста могут предупреждать администраторов, если в системе появляются инструменты DOS.
Одноадресный RPF (обратный Path Forwarding), то есть CEF (Cisco для маршрутизаторов). Express Функция пересылки (сокращенно) используется для проверки другой характеристики пакета данных, полученного на интерфейсе. Если Исходный Если IP-адресCEFповерхность не имеет согласованного маршрута, указывающего на интерфейс, на котором был получен пакет, маршрутизатор отбросит пакет. Самое замечательное в отказе от РПФ заключается в том, что он блокирует все притворства. Исходный Атаки на IP-адреса.
1) Обнаружение DOS-атак
Проблемы можно быстро обнаружить с помощью совместного анализа системы мониторинга хоста и системы IDS, например, с помощью инструмента EtherApe (инструмент с открытым исходным кодом для мониторинга соединений). Конечно, того же эффекта можно достичь, используя Sniffer Pro и сеть Collet. инструмент анализа. Сниффер может отображать состояние сетевого подключения в режиме реального времени. Если вы столкнулись с атакой DOS, вы можете изначально определить тип атаки по плотным соединениям внутри него и IP-адресу. В это время вы можете использовать программное обеспечение для мониторинга трафика. Система Ossim, такая как Ntop и система IDS. Судите внимательно. Последние два будут подробно объяснены в книге «Анализ сетевых журналов Unix/Linux и мониторинг трафика». Самый быстрый способ — использовать командную строку. Мы вводим следующую команду:
# netstat -an|grep SYN_RECV|wc –l
По результатам можно обнаружить, что в сети имеется большое количество пакетов синхронизации TCP, но успешно установлено очень мало TCP-соединений. Согласно анализу принципа трехстороннего рукопожатия TCP, это определенно ненормально. Это явление. Должно быть, в сети возникла проблема и необходима дальнейшая проверка. Если значение очень велико, например, если оно достигает тысяч значений, то весьма вероятно, что оно подверглось атаке. Как показано на рисунке 1.
Рис. 1. Оссим обнаружил атаку DOS
На рисунке 1 Snort в системе OSSIM обнаруживает DOS-атаку и графически отображает большой объем тревожной информации. Например, когда веб-сайт подвергается DOS-атаке, TCP-соединение выглядит следующим образом:
Считаем количество статусов «SYN_RECV», команда такая:
#netstat –na |grep SYN_RECV |wc –l
1989
Учитывая такое большое значение в сочетании с приведенным выше графиком 5-1, можно определить, что веб-сайт находится под DOS-атакой.
Совет: Вы также можете использовать следующую команду Shell, чтобы отобразить, какой IP-адрес имеет наибольшее количество подключений.
#netstat -nta |awk ‘{print $5}’ |cut –d:f1 |sort|uniq –c |sort –n
1 192.168.150.10
2 192.168.150.20
… …
1987 192.168.150.200
Эта команда дает более подробную информацию. Значение достигает 1989 с почти 2000 записей, что явно указывает на DOS-атаку. В настоящее время мы можем использовать инструмент Wireshark для декодирования пакетов данных, чтобы решить больше проблем. В настоящее время все коммуникации используют TCP. Проверьте флаг TCP и отправьте все пакеты данных с SYN, установленным в 1, то есть данные запроса синхронизации TCP. пакеты, и эти пакеты данных часто указывают на один и тот же IP-адрес. На этом этапе можно проверить приведенное выше суждение: этот хост подвержен DOS-атаке, а метод атаки — SYN. Нападение наводнения.
1. Сервер Сяо Ли подвергся DOS-атаке. Атака была осуществлена путем непрерывной отправки небольших UDP-пакетов на порт 7. Судя по всему, атака произошла из двух мест, вероятно, двумя злоумышленниками, использовавшими разные инструменты. Огромный поток данных быстро перегружает веб-сервер. Трудность заключается в том, что источник адреса атаки неизвестен. Трудно определить, является ли сам источник атаки распределенным или представляет собой один и тот же адрес, замаскированный под множество разных IP-адресов.
2. Предполагая, что адрес не замаскирован, Сяо Ли запрашивает ARIN и из своей базы данных Whois выясняет, к какой сети принадлежит вторгшийся IP-адрес.
3. Если IP-адрес подделан, такое отслеживание более затруднительно. Вам необходимо запросить данные NetFlow на каждом маршрутизаторе, чтобы определить, через какие интерфейсы входит и выходит трафик, а затем отслеживать маршрутизаторы по одному интерфейсу за раз. шаг за шагом, пока не найдете источник исходного IP-адреса. Однако здесь задействовано несколько AS (автономных систем). Если искать источник атаки внутри страны,
В этом процессе часто задействовано множество операторов и судебных органов, что увеличивает рабочую нагрузку и время. Еще сложнее, если речь идет о трансграничном отслеживании. Самое сложное заключается в том, что во время атаки необходимо провести точный анализ. Как только атака закончится, вам придется запросить систему журналов.
Прочитав приведенные выше реальные случаи, мы также узнали, что со многими DoS-атаками трудно справиться, поскольку запросы, отправленные хостом, наносящие ущерб, полностью законны и соответствуют требованиям, но их количество слишком велико. Мы можем сначала заблокировать эхо-запросы ICMP на маршрутизаторе с помощью соответствующего ACL.
Router(config)#ip tcp intercept list 101
Router(config)#ip tcp intercept max-incomplete high 3500
Router(config)#ip tcp intercept max-incomplete low 3000
Router(config)#ip tcp intercept one-minute high 2500
Router(config)#ip tcp intercept one-minute low 2000
Router(config)#access-list 101 permit any any
Если можно использовать управление доступом на основе контекста (CBAC), его настройки тайм-аута и пороговых значений можно использовать для борьбы с лавинными атаками SYN и мусорными лавинами UDP. Например:
Router(config)# ip inspect tcp synwait-time 20
Router(config)# ip inspect tcp idle-time 60
Router(config)# ip inspect udp idle-time 20
Router(config)# ip inspect max-incomplete high 400
Router(config)# ip inspect max-incomplete low 300
Router(config)# ip inspect one-minute high 600
Router(config)# ip inspect one-minute low 500
Router(config)# ip inspect tcp max-incomplete host 300 block-time 0
Внимание: не рекомендуется одновременно использовать функции перехвата TCP и защиты CBAC, так как это может привести к перегрузке маршрутизатора.
Включение функции Cisco Express Forwarding (CEF) может помочь маршрутизатору защититься от потока пакетов данных со случайными адресами источника. Вы можете внести некоторые настройки в планировщик, чтобы избежать полной перегрузки процессора роутера под воздействием торрентов:
Router(config)#scheduler allocate 3000 1000
После настройки IOS потребуется 3 секунды для обработки запроса на прерывание сетевого интерфейса, а затем использовать 1 секунду для выполнения других задач. Для более старых систем вам, возможно, придется использовать планировщик команд. interval<milliseconds>。
Другой способ — использовать Iptables для предотвращения сценариев DOS.
#!/bin/bash
netstat -an|grep SYN_RECV|awk ‘{print5}’|awk -F: ‘{print1}’|sort|uniq -c|sort -rn|awk ‘{if (1 >1) print
for i in $(cat /tmp/dropip)
do
/sbin/iptables -A INPUT -s $i -j DROP
echo “$i kill at `date`” >>/var/log/ddos
done
Этот скрипт подсчитает IP-адреса, находящиеся в SYN_RECV, и их число достигнет 5, и установит цепочку INPUT, записанную в Iptables, на отклонение.
Независимо от цели проведения крупномасштабной атаки или других целей, к DOS/DDoS-атакам следует относиться серьезно. Основным способом предотвращения такого рода атак является своевременное применение патчей от производителей. В то же время отключите уязвимые службы или используйте списки контроля доступа, чтобы ограничить доступ. Обычные DOS-атаки, особенно DDOS-атаки, предотвратить труднее. Если вся полоса пропускания будет занята пинг-флудом, мы мало что сможем сделать. Для атак DOS мы должны сначала проанализировать метод атаки, будь то атака трафика, такая как ICMP Flood, UDP Flood и SYN Flood, или метод, аналогичный TCP Flood, CC и т. д., а затем искать относительно эффективные контрмеры. . Ниже представлено несколько методов, которые можно использовать для атаки такого типа:
1) Используйте защиту «приманки» для усиления немедленного анализа и реагирования на инструменты атак и вредоносные образцы. Масштабное развертывание устройств-приманок для отслеживания динамики ботнетов и перехвата вредоносного кода. Развернуть оборудование для мониторинга работы веб-сайтов, усилить мониторинг троянов веб-страниц, механизмов перенаправления доступа и разрешения доменных имен, а также перекрыть основные пути заражения вредоносного кода. Используйте автоматическое оборудование для анализа вредоносного кода с технологией «песочницы» и различными технологиями оболочки, чтобы усилить исследование новых вредоносных кодов и повысить своевременность исследований.
2) Используйте для мониторинга стратегию защиты Apache Dos, предоставляемую системой Ossim.
3) Использовать новые технологические платформы, такие как облачные вычисления и виртуализация, для повышения эффективности обнаружения и защиты от новых атак, особенно атак на уровне приложений и низкоскоростных атак. Некоторые зарубежные учёные начали использовать платформу Hadoop для проведения исследований алгоритмов обнаружения HTTP Get Flood.
4). Используйте механизм репутации IP. Внедрите механизм репутации в каждый аспект защиты информации, чтобы повысить эффективность и точность защиты. Например, он оценивает репутацию безопасности прикладного программного обеспечения и файлов, управляет поведением пользователей сети при загрузке и помогает устройствам безопасности автоматически генерировать стратегии защиты, публикуя достоверную информацию о репутации IP. Подробности см. в разделе 2.1 «Сеть Unix/Linux». Анализ журналов и мониторинг трафика».
5) Принятие пассивной стратегии, то есть покупка большей пропускной способности, также может эффективно снизить вред от DDOS-атак.
6). Создайте распределенную систему, разверните свой бизнес в нескольких компьютерных залах, распределите доступ из каждого региона к соответствующим компьютерным залам, рассмотрите возможность развертывания CDN и развертывания межсетевых экранов (таких как межсетевые экраны Cisco, Juniper и т. д.) на важном узле IDC. помещения. Даже если злоумышленник осуществит DOS-атаку, масштаб ущерба может охватывать только один из компьютерных залов и не затронет весь бизнес.
7) Если масштаб небольшой и условия в компьютерном зале средние, можно рассмотреть возможность использования в системе некоторых анти-DDoS-гаджетов, например DDoS. Deflate,Адрес его официального сайта:http://deflate.medialayer.com Это бесплатный скрипт, используемый для защиты и смягчения DDOS-атак. С помощью встроенной в систему команды netstat он отслеживает и отслеживает IP-адреса, которые создают большое количество сетевых подключений. Когда обнаруживается, что узел превышает заданный предел. Программа забанит или заблокирует эти IP-адреса через APF или IPTABLES. Конечно, этот инструмент лишь смягчает последствия, но не может полностью предотвратить атаки.
Наконец, более чем одно подключение к Интернету с использованием разных поставщиков, разных путей AS и поддержки функций балансировки нагрузки все еще далеко от требований для борьбы с обычными DOS/DDOS-флудами, которые потребляют высокую пропускную способность. Мы всегда можем использовать CAR (Commited Access Rate, зафиксированная скорость доступа) или NBAR (Network-Based Application Recognition, распознавание сетевых приложений), чтобы отбросить пакеты данных или ограничить скорость атакующего сетевого потока, снизить нагрузку на процессор маршрутизатора и уменьшить потребность в зоне буферизации и занятости хостов за маршрутизатором.
Заявление об авторских правах: Содержание этой статьи добровольно предоставлено пользователями Интернета, а мнения, выраженные в этой статье, представляют собой только точку зрения автора. Этот сайт предоставляет только услуги по хранению информации, не имеет никаких прав собственности и не принимает на себя соответствующие юридические обязательства. Если вы обнаружите на этом сайте какое-либо подозрительное нарушение авторских прав/незаконный контент, отправьте электронное письмо, чтобы сообщить. После проверки этот сайт будет немедленно удален.
Издатель: Full stack программист и руководитель стека, укажите источник для перепечатки: https://javaforall.cn/187270.html Исходная ссылка: https://javaforall.cn