The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

RangeAmp - серия атак на CDN, манипулирующая HTTP-заголовком Range

26.05.2020 10:30

Группа исследователей из Пекинского университета, Университета Цинхуа и Техасского университета в Далласе выявила новый класс DoS-атак - RangeAmp, основанный на использовании HTTP-заголовка Range для организации усиления трафика через сети доставки контента (CDN). Суть метода в том, что из-за особенности обработки Range-заголовков во многих CDN атакующий может запросить через CDN один байт из большого файла, но CDN загрузит с целевого сервера весь файл или значительно больший блок данных для помещения в кэш. Степень усиления трафика при такой атаке в зависимости от CDN составляет от 724 до 43330 раз, что может использоваться для перегрузки входящим трафиком CDN или снижения пропускной способности конечного канала связи до сайта жертвы.

Заголовок Range даёт клиенту возможность определить диапазон позиций в файле, которые следует загрузить вместо отдачи полного файла. Например, клиент может указать "Range: bytes=0-1023" и сервер передаст только первые 1024 байта данных. Подобная возможность востребована при загрузке больших файлов - пользователь может приостановить загрузку, а потом продолжить его с прерванной позиции. При указании "bytes=0-0" стандарт предписывает отдавать первый байт в файле, "bytes=-1" - последний, "bytes=1-" - начиная с 1 байта и до конца файла. Допускается передача нескольких диапазонов в одном заголовке, например "Range: bytes=0-1023,8192-10240".

Дополнительно предложен второй вариант атаки, нацеленный на повышение сетевой нагрузки при пробросе трафика через ещё один CDN, который используется как прокси (например, когда в качестве фронтэнда (FCDN) выступает Cloudflare, а бэкенда (BCDN) - Akamai). Метод напоминает первую атаку, но локализуется внутри CDN-сетей и позволяет усилить трафик при обращении через другие CDN, повысив нагрузку на инфраструктуру и снизив качество сервиса.

Идея в том, что атакующий направляет в CDN Range-запросы нескольких диапазонов, такие как "bytes=0-,0-,0-...", "bytes=1-,0-,0-..." или "bytes=-1024,0-,0-...". Запросы содержат большое число диапазонов "0-", подразумевающих отдачу файла от нулевой позиции до конца. Из-за некорректной реализации разбора диапазонов при обращении первого CDN ко второму, на каждый диапазон "0-" отдаётся полный файл (диапазоны не агрегируются, а последовательно перебираются), если в изначально отправленном атакующим запросе присутствует дублирование и пересечение диапазонов. Степень усиления трафика в такой атаке составляет от 53 до 7432 раз.

В процессе исследования было изучено поведение 13 CDN - Akamai, Alibaba Cloud, Azure, CDN77, CDNsun, Cloudflare, CloudFront, Fastly, G-Core Labs, Huawei Cloud, KeyCDN, StackPath и Tencent Cloud. Все из рассмотренных CDN допускали первый вид атаки на конечный сервер. Второму варианту атаки на CDN оказались подвержены 6 сервисов, из которых четыре могут выступать в атаке в роли фронтэнда (CDN77, CDNsun, Cloudflare и StackPath) и три в роли бэкенда (Akamai, Azure и StackPath). Наибольшее усиления достигается в Akamai и StackPath, которые допускают указание в заголовке Range более 10 тысяч диапазонов. Владельцы CDN были уведомлены об уязвимостях около 7 месяцев назад и к моменту публичного раскрытия сведений 12 из 13 CDN устранили выявленные проблемы или выразили готовность их устранить (не отреагировал только сервис StackPath).

  1. Главная ссылка к новости (https://www.zdnet.com/article/...)
  2. OpenNews: HTTP-заголовок Alt-Svc может применяться для сканирования портов внутренней сети
  3. OpenNews: Уязвимость, позволяющая совершить MITM-атаку через манипуляцию с HTTP-заголовком Proxy
  4. OpenNews: Легко эксплуатируемая DoS-уязвимость в HTTP-сервере Apache
  5. OpenNews: Атака на системы фронтэнд-бэкенд, позволяющая вклиниться в сторонние запросы
  6. OpenNews: Новая техника атак HTTP Request Smuggling
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53026-rangeamp
Ключевые слова: rangeamp, cdn, range, http, web, ddos
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.6, Аноним (6), 13:22, 26/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это атаки на CDN. Бэкэнд сайта в сценарии а) может не отвечать на range запросы вообще.

    В случае сценария б) CDN достаточно полностью заворачивать range запросы, в которых указывается неадекватное количество интервалов и корректно разруливать отдачу кусков для всех прочих (придется погромистам попотеть и вместо заглушек сделать реализацию).

     
     
  • 2.14, Аноним (14), 16:38, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На цдн отрпасляется 100 запросов по 1 байту из 100 файлов. Цдн range запросы понимает и отправляет 100 range запросов, пускай на 1кБ, запросы на защищаемый сервер. А вот защищаемый range запросы не умеет, по этому на каждый из 100 запросов от отвечает 1МБ+ файлами. Вы же не забыли, что если range заголовок не обрабатывается сервером, то возвращается всё содержимое, да?
    Так на кого эта атака?
     
     
  • 3.19, Аноним (6), 17:43, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Уязвимое поведение однозначно у CDN. Это они получают запросы и начинают в фоне что-то делать до начала самой отдачи.

    >А вот защищаемый range запросы не умеет

    Умеет и отвечает по протоколу.

    Тупые CDN целыми файлами отвечают, так как у них в кэше целые файлы. Не потому, что им исходный сервер отдает на range-запрос целый файл.

    Запросы с range я предлагал не обрабатывать, как обычные, а вообще не отвечать на них. Если сайт не раздает видеофайлы, это простое и рабочее решение.

     
     
  • 4.28, Гентушник (ok), 16:47, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > а вообще не отвечать на них.

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

     

  • 1.1, Аноним (1), 11:43, 26/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Забавно. Средства "безопасности" и "шпионажа" по факту оказались замаскированным LOIC'ом.
     
     
  • 2.2, And (??), 12:05, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +11 +/
    Верным бывает всегда самый тупой вариант: обычная халтура в спешке до обещанного бизнесу срока закрыть тикет и успеть уволится. :))))
     
     
  • 3.9, Аноним (9), 14:00, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В данном случае это наверное все же не "тупая халтура" а просто "непредусмотренное взаимодействие". Бывает и интереснее, например прозрачные прокси, DPI и т.п. могут быть развернуты для ... получения доступа или нанесения добра своей же внутренней сети.

    При креативном подходе к протоколам и алгоритмам вообще можно убедить сделать ремоту вообще совсем не то что было задумано изначально.

     

  • 1.4, Аноним (4), 12:49, 26/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Дев. Ляп. Сы. Какугугли. Тырпрайз. Глобально и надёжно.
     
  • 1.5, InuYasha (?), 13:00, 26/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хотели как лучше, а получили веслье.
    PS: CloudMalware с гугл-капчей из автомобилей уже давно пора бойкотировать.
     
     
  • 2.7, Аноним (6), 13:26, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Пока есть возможность менее чем за 100 долларов в месяц наливать в канал 10+G флудом, такие сервисы будут безальтернативны для посещаемых сайтов.
    L7 ботнеты отфильтровывать без централизации и сопоставления данных также очень непросто (невозможно).
    Это зависит не только от желания владельца сайта что-то использовать или не использовать.
     
     
  • 3.8, InuYasha (?), 13:51, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сервисы-то - это понятно. Просто даже в этой новости есть список альтернатив клаудфлэйру - авось кто-то из них имеет лучшую политику приватности или хотя бы свою капчу генерит?
     
     
  • 4.15, Аноним (6), 16:50, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Более приватные - платные.
     
  • 4.18, flkghdfgklh (?), 16:56, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вылезай из криокамеры. CF уже месяц, как перешли на hCaptcha которым при этом предоставили свои сервера, то есть генерят капчу у себя
     
     
  • 5.21, InuYasha (?), 17:57, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Вылезай из криокамеры. CF уже месяц, как перешли на hCaptcha которым при
    > этом предоставили свои сервера, то есть генерят капчу у себя

    Не хочу http://favim.com/image/64232/
    И ещё месяц не буду ходить на CF-сайты.

     
  • 3.25, Аноним (25), 10:09, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > L7 ботнеты отфильтровывать без централизации и сопоставления данных также очень непросто

    Да вообще-то именно L7 обычно вывешивает достаточно аномалий чтобы отличить бота от человека. Иногда под раздачу конечно может попасть и человек - но собственно клаудспайварь с своей заколебавшей всех капчей за вот это самое как раз и известна больше всего.

     
  • 2.10, Аноним (9), 14:02, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Хотели как лучше, а получили веслье.

    Это в смысле, хотели только шпионить за юзерами, стрипая SSL но хакерье обнаглело и шпион стал LOIC'ом? Это тот самый случай когда хочется сказать "так ему и надо!". Желательно чтобы еще пару владельцев CDN посадили за DDOS-ы :)

     
     
  • 3.11, InuYasha (?), 14:29, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, да, +1

    Эх, ЛОИК, ХОИК... ностальгия. )

     
  • 3.23, пох. (?), 09:12, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Желательно чтобы еще пару владельцев CDN посадили за DDOS-ы

    потребителей услуги же ж.
    Владельцы, как обычно, мынивинаваты, хателикаклучше.

    P.S. и вот обратите внимание - при всем неудержимом желании отдельных государств (по всему миру) лезть "регулировать" интернеты - ни за ddos'ы, ни за спам, ни за разработку подобного софта - не только никого и никогда не сажают, а еще и оплачивают разработки.

     
     
  • 4.26, Аноним (26), 10:13, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > потребителей услуги же ж.

    Адресатов DDoS чтоли? Ну в принципе я не против, пусть ответят за использование клаудспайвари :). Но мне кажется что даже канцелярские крысы могут заметить в этой схеме какой-то подвох.

    > Владельцы, как обычно, мынивинаваты, хателикаклучше.

    При том лучше - для своего кошелька, угу.

    > за спам, ни за разработку подобного софта - не только никого
    > и никогда не сажают, а еще и оплачивают разработки.

    Ну так за скромное вознаграждение такие фирмочки и сами продадут все данные. Ничего личного, это бизнес.

     
  • 2.12, anonymous (??), 15:56, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Нет уже там гуглокапчи. Теперь там другая, не от гугла.
     
     
  • 3.22, пох. (?), 09:05, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    поссорились, перестали делиться трекингом? Или просто наладили внутренний обмен, беспалева...

     
     
  • 4.24, anonymous (??), 09:56, 27/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Перестали.
    "it helps address a privacy concern inherent to relying on a Google service"
    https://blog.cloudflare.com/moving-from-recaptcha-to-hcaptcha/
     

  • 1.13, YetAnotherOnanym (ok), 16:23, 26/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > CDN загрузит с целевого сервера весь файл
    > диапазоны не агрегируются, а последовательно перебираются

    Молодцы!

     
  • 1.27, Аноним (27), 13:33, 27/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Fastly опять предоставляют самый качественный продукт. Жалко у них маркетинг не такой эффективный как у Cloudflare. Fastly заслуживает больше внимания.
     
     
  • 2.29, Аноним (29), 08:41, 28/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Очень дорго и нет быстрого получения услуг без заполнения форм, фтопгу.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру