Атаки уровня приложений или DDoS-атаки уровня 7 (L7) относятся к типу вредоносных программ, предназначенного для «верхнего» уровня в модели OSI, где происходят распространенные интернет-запросы, такие как HTTP GET и HTTP POST. Эти атаки уровня 7, в отличие от атак сетевого уровня, таких как усиление DNS, особенно эффективны из-за потребления ресурсов сервера в дополнение к сетевым ресурсам.
Как работают атаки уровня приложений
В основе эффективности большинства DDoS-атак лежит разница между количеством ресурсов, необходимых для запуска атаки, и количеством ресурсов, необходимых для ее поглощения или смягчения. В то время как это все еще имеет место с атаками L7, эффективность воздействия как на целевой сервер, так и на сеть требует меньшей общей пропускной способности для достижения того же разрушительного эффекта. Атака уровня приложения создает больший ущерб с меньшей общей пропускной способностью.
Чтобы понять, почему это так, нужно понять разницу в относительном потреблении ресурсов между клиентом, выполняющим запрос, и сервером, отвечающим на запрос. Когда пользователь отправляет запрос на вход в учетную запись в интернете, такую как учетная запись Gmail, объем данных и ресурсов, которые должен использовать компьютер пользователя, минимален и непропорционален объему ресурсов, потребляемых в процессе проверки учетных данных для входа, загрузки соответствующих данных пользователя из базы данных, а затем отправки ответа, содержащего запрошенную веб-страницу.
Даже при отсутствии имени сервер, получающий запрос от клиента, часто должен выполнять запросы к базе данных или другие вызовы API для создания веб-страницы. Когда это несоответствие увеличивается в результате того, что многие устройства нацелены на одно веб-свойство, как во время атаки ботнета, эффект может сокрушить целевой сервер, что приводит к отказу в обслуживании законного трафика. Во многих случаях достаточно просто нацелиться на API с атакой Л7, чтобы отключить службу.
Почему сложно остановить DDoS-атаки на уровне приложений
Различие между трафиком атаки и обычным трафиком сложно отличить, особенно в случае атаки уровня приложения, такой как ботнет, так как он выполняет атаку потока HTTP против сервера жертвы. Поскольку каждый бот в ботнете делает, казалось бы, законные сетевые запросы трафик не подделан и может показаться “нормальным” в происхождении.
Атаки на уровне приложений требуют адаптивной стратегии, включая возможность ограничения трафика на основе определенных наборов правил, которые могут регулярно изменяться. Такие инструменты, как правильно настроенный WAF, могут уменьшить объем фиктивного трафика, передаваемого на исходный сервер, что значительно снижает влияние DDoS-атак.
С другими атаками, такими как наводнения SYN или атаки отражения, или усиление NTP, стратегии для отбрасывания трафика могут использоваться довольно эффективно при условии, что сама сеть имеет пропускную способность, чтобы получить их. К сожалению, большинство сетей не могут получить атаку усиления 300 Гбит / с, и еще меньше сетей могут правильно маршрутизировать и обслуживать объем запросов уровня приложения, которые может генерировать атака L7.
Какие тактики помогают смягчить атаки на уровне приложений
Один из методов заключается в том, чтобы реализовать вызов устройству, делающему сетевой запрос, чтобы проверить, является ли он ботом. Это делается с помощью теста так же, как тест «капча» обычно встречаются при создании учетной записи в интернете. Предоставляя требование, такое как вычислительная задача JavaScript, можно смягчить многие атаки.
Другие пути остановки http-наводнений включают использование брандмауэра веб-приложения, управление и фильтрацию трафика через базу данных IP reputation, а также анализ сети на лету инженерами.
Имея преимущество масштабирования с более чем 6 миллионами пользователей в сети, Cloudflare имеет возможность анализировать трафик из различных источников, смягчая потенциальные атаки с помощью постоянно обновляемых правил WAF и других стратегий смягчения, часто до того, как они произойдут или имеют шанс ретаргетировать других.
Вам будет полезно узнать – тролль бот.