Инцидент длился более 2-х часов, начавшись в 4:44 по UTC с пиком в 80 префиксов, закончившись в 7:19 с еще одним пиком в районе 7:04 UTC.
Из-за специфического набора сервисов, испытавших влияние инцидента, мы можем предположить, что статические маршруты протекли в BGP. Тем не менее, основной вопрос заключается в том, почему эти некорректные анонсы вообще распространились? Тот факт, что перехваченные префиксы распространились во все уголки интернета, демонстрирует как отсутствие каких-либо фильтров между AS39523 и ее прямым поставщиком AS31133 (Мегафон), так и между AS31133 (Megafon) и крупнейшими мировыми операторами связи, такими как Level3 (AS3356), Cogent (AS174), Zayo (AS6461), Hurricane Electric (AS6939) и другими.
Существуют три наиболее распространенных причины отсутствия входящих фильтров на стыках операторов вида клиент-поставщик:
- Некоторые транзитные операторы не могут убедить своих клиентов создать корректные route объекты. Так как клиент платит деньги за услугу, некоторые интернет-провайдеры не считают обязательным накладывать строгие фильтры, и в результате мы имеем исключения.
- Другая проблема заключается в том, что нет никакой авторизации для объектов AS-SET. В результате в AS-SET можно добавить любой ASN или AS-SET! Существуют интернет-провайдеры, у которых в их объекте AS-SET будут тысячи префиксов, при всего паре десятках реально относящихся к их клиентскому конусу. Данная ситуация только ухудшается ближе к ядру Интернета, где крупные Tier2-сети могут иметь AS-SET, раздутый до сотен тысяч записей. Вместо того чтобы работать со своими клиентами над решением этой проблемы, часть Tier1-операторов предпочитает просто убрать любые фильтры для провайдеров со слишком большими AS-SET.
- Наконец, некоторые интернет-провайдеры считают, что фильтры, основанные на AS_PATH, неадекватны и, соответственно, не применяют вообще никакой фильтрации префиксов.
Это несложно доказать, все что нужно — это найти глобально видимый префикс без route объекта. Например, у сети 91.243.129.0/24 нет никаких соответствующих route-объектов ни в одной базе данных, но при этом она спокойно анонсируется Мегафоном и его Tier1-апстримами.
Пример из IPv6 также легко найти. Не существует route6 объекта для сети 2a03:34e0::/32, что видно из NLNOG’s IRRExplorer, но опять же префикс 2a03:34e0::/32 распространяется без затруднений. Отсюда можно сделать вывод, что не существует фильтров между AS12695 и AS31133 (Мегафон), либо фильтры не работают, а также что нет фильтров и между Мегафоном и Hurricane Electric (AS6939).
Данный перехват еще раз поднял проблему фильтрации префиксов на стыках клиентов и поставщиков. Конечно, можно свалить всю вину на AS39523, но без настроенных фильтров на стыках между транзитными операторами связи, мы обречены видеть подобные инциденты снова и снова. Мы настоятельно рекомендуем всем транзитным операторам перепроверить свои политики фильтрации, по меньшей мере внедрив prefix-based BGP фильтры на всех соединениях с клиентами.
Всего неделю назад на московском пиринговом форуме Александр Азимов, глава проекта Radar.Qrator, представил доклад, посвященный данной теме — вы можете перейти по ссылке для того, чтобы прослушать доклад и получить больше информации о том, как отсутствие фильтров становится дырой в безопасности, позволяющей проводить успешные атаки MiTM даже на зашифрованный трафик.
Особая благодарность Job Snijders из NTT Communications за помощь в подготовке данной публикации.
Комментарии (34)
zurapa
14.12.2017 03:44Удивительная история. Маршрутизация в сети держится на честном слове. Полная анархия. Договорённости не соблюдаются, или соблюдаются абы как…
Если взять отдельно стоящего админа в организации и спросить, согласен ли он надельить всех пользователей такими же админскими правами и доверить им самоорганизацию сети, то в абсолютном большинстве, вам админ покрутит у виска. Но, когда речь касается всемирной паутины, то тут почему-то всех одолевает слабоумие… Не первый же случай с BGP…vvpoloskin
14.12.2017 09:36Пример полностью распределенной системы=) Хотите жесткую руку — заставят всех брать интернет от «мегаоператора» с жестким регулированием на анонсы. Такая тенденция сейчас намечается, например, в Таджикистане.
zurapa
14.12.2017 14:03-2А вы верите, что смерч сможет собрать боинг?.. Полноценный, настоящий боинг, который будет летать, с сидячими местами, всеми системами?..
Я конечно утрировал сейчас. Но большинство проблем в сети от отсутствия контроля (только рекомендации).
Знаете, если мне не будут флудить на интерфейсы внешние, если мне не будут спамить безмерно в почту, уж я как-нибудь смирюсь с контролем…
А так-то мы все сидим на «мегаоператорах» (магистральных операторах) и rutracker мне успешно блокируют… А вот сор прочи, что-то, как-то не очень…
sav6622
14.12.2017 07:34Зачем далеко ходить, глюки не в таких масштабах конечно, но в рамках Петербурга вполне регулярны (раз в несколько дней) с BGP — провайдер для корпоративщиков ЗАО «Радион». Причем по жалобам, похоже, переключают в ручной режим — всё работает какое-то время, затем похоже самостоятельно уходит снова в автоматический и всё по-новой начинает глючить. Как вообще корпоративщики его терпят.
achekalin
14.12.2017 14:12А у корпоративщиков, видимо, и выбора-то нет. Вот вопрос, куда смотрит какой-то-там-связь-надзор — это куда правильнее вопрос.
Конечно, БД начинают петь про эксклюзив, и формально тут не придраться — пока не появится что-то вроде закона либо иной регуляции про равный доступ к сетевым услугам. Грубо говоря, отмазки БД сейчас выглядят как «наша территория, как хотим, так и доим», и напоминают «моя земля — выращиваю наркоту как хочу» — пока закон не скажет обратного.Bormoglotx
14.12.2017 17:12Ну так зачем какому-то-там-надзору заниматься реальными проблемами? Они лучше linkedin заблочат или к телеграмму пристанут.
Gansterito
14.12.2017 09:50Что происходит с AS31133 и так всем видно. Это нормальное состояние «умирания». Аналогично было и с AS3216 (когда их купил AS16345) — просто не осталось сотрудников, которые бы могли сделать эту работу.
achekalin
14.12.2017 14:07Некоторые транзитные операторы не могут убедить своих клиентов создать корректные route объекты. Так как клиент платит деньги за услугу, некоторые интернет-провайдеры не считают обязательным накладывать строгие фильтры, и в результате мы имеем исключения.
Это смотря что за услуга. Вообще говоря, они вроде как обещались передавать в мир анонсы этого оператора, но есть, очевидно, границы такого рода услуги — как раз передавать анонсы AS клиента, а не любые, которые он надумает сгенерировать.
Просто потому, что такое больно ударит в первую очередь по самому транзитному оператору.
T-362
14.12.2017 14:49https://bgpmon.net/popular-destinations-rerouted-to-russia/
Мои эстоноязычные коллеги считают что это был "хитрый план кровавой гебни" наловить иностранного трафика и
пытатьанализировать его в своих застенках (сделайте поправку на массово раздуваемую местным правительством милитаристическую параною).
Насколько такой вариант реалистичен вообще?
amarao
14.12.2017 15:03Более чем. Многократно уже были такие инцеденты, причём трафик дальше роутили без вопросов, то есть типовой MitM.
T-362
14.12.2017 15:07А с практической точки зрения? Это же огромная куча https, будто с пакета яровой у гебни в застенках мало шифрованного трафика? Или есть какой-то прогрессивный метод дешифровки базирующийся на поисках закономерностей в бигдате?
Я, правда, сам склоняюсь к идее "понабрали студентов за 20к рублей в месяц" и прочим шедеврам оптимизации затрат в провайдере вызвавшем такой рероут.
amarao
14.12.2017 16:35Сегодня — нет, завтра — есть. Несколько десятков терабайт данных, которые, возможно, потом удастся прочитать, включая миллионы кук, паролей и т.д.
Кроме того, аккуратный перехват куска чужой АС позволяет увидеть проходящий трафик. Не содержимое, а метаданные. Которые, сами по себе довольно интересная информация.
Плюс это отличная тренировка на «переключение всего трафика» на случай очередной суверенитизации интернета.firk
14.12.2017 19:33Уже где-то писал в комментах к https-пиарной статье, напишу тут. Сделав mitm сетевого уровня к нужному https-сайту, можно без проблем за пару секунд получить DV-сертификат к нему от let's encrypt, и дальше уже делать mitm внутри https. В обычных условиях для этого достаточно быть сетевым провайдером атакуемого сайта. Если же учесть BGP-перехваты, то достаточно быть любым из множества тех, кто может их организовать. Хотя в данном случае это уже не выйдет незаметно, в отличие от первого.
KivApple
14.12.2017 19:54Справедливости ради, некоторые особо крупные сайты вроде Google не подвержены такой атаке из-за certificate pinning.
masterspline
14.12.2017 23:51> Сделав mitm сетевого уровня к нужному https-сайту, можно без проблем за пару секунд получить DV-сертификат к нему от let's encrypt, и дальше уже делать mitm внутри https.
Для этого нужно, чтобы провайдер let's encrypt решил, что твой анонс AS атакуемого сайта более приоритетный, чем анонс от реального провайдера сайта. А это возможно, только для сайтов, которые находятся в России и для кого Россия является провайдером (возможно, для Белоруссии, частично). Даже в Японию и Китай трафик из России идет через США. Поэтому анонсировать AS атакуемого сайта так, чтобы американский Let's Encrypt решил, пойти к тебе, а не к реальному провайдеру сайта почти без шансов.firk
15.12.2017 13:23Вы хотите сказать что все желающие перехватить BGP поголовно располагаются в России?
Да и вообще, всё немного сложнее чем вы представляете.
amarao
15.12.2017 13:54-1Если the most specific приходит из России от американской компании, в этом нет ничего странного. Например, условный Фуугл, который располагается в штатах, решает поднять CDN в России. Фуугл анонсирует свою /16 из штатов, а одну /24 — из России, потому что там её CDN-сервера для России.
Глазами можно удивиться и подумать, но на сетевом уровне — это совершенно легитимная ситуация.
Более того, даже если рядом Фуугл анонсирует /23, содержащую эту /24 из другой локации в РФ, то /24 победит (the most specific), и это тоже не удивительно для сетевого оборудования или CA — такие выкрутасы в маршрутизации — норма.
amarao
15.12.2017 13:51Я понял идею. Страшно.
А что Let's encrypt и другие CA говорят по этому вопросу?firk
15.12.2017 16:56Не видел их комментариев на этот счёт, но скорее всего там будет что-то о том, что DV-сертификаты это только начальный уровень, а для хорошей проверки надо EV.
Ну и вон выше про certificate pinning писали.amarao
15.12.2017 17:08Certificate pinning работает для отдельных сайтов, и является фактическим признанием того, что CA-модель не работает, а работает ssh-модель. Пришли на сервер, выучили ключ, больше другим ключам не доверяем.
flx
14.12.2017 15:10Нашим недостаточно паранодальным соотечественникам:
petsymposium.org/2017/papers/hotpets/bgp-bogus-tls.pdf
flx
14.12.2017 15:09Нашим прибалтийским коллегам:
You can’t measure «suspiciousness» and qualify intent in terms of BGP. But if we take a look at the set of the hijacked prefixes, they belong to both Russian and International content providers such as Google, Facebook, Microsoft, Mail.ru, Vkontakte and many more. For most ISPs this services generate most part of their traffic, and it’s common to have specified routing policy for such prefixes. Leaks of static routes in BGP is a very common mistake in this case.
alexstup
14.12.2017 15:13вы не учитываете то что есть много желающих купить данные из этого трафика для маркетингового анализа
athacker
14.12.2017 17:41Технически — реалистичен вполне. Но, зная как идут дела в Мегафоне и связанных с ним операторах — я бы поставил на то, что конкретно этот инцидент является следствием кривых рук.
a0fs
14.12.2017 20:28Почему не фильтровали магистралы ясно — сильно дорого налаживать систему фильтрации на огромной системе маршрутизаторов. Больше рисков поймать глюк с умной фильтровалкой, чем профита от фильтрации. Почему не фильтровал мегафон — загадка, вот ему то сам бог велел следить за теми, кому он выдаёт доступ в BGP роутинг. Собственно дискоммуникация и принуждение ходить через 3-го провайдера, который возьмёт на себя наведение порядка в анонсах мегафона за мзду великую должно по идее прочистить мозги кому попало и расширить бюджеты где следует…
vvpoloskin
15.12.2017 23:39Какие-то прямо теории заговора, получить трафик до гугла и прослушать его, мы все под колпаком. Правда в том, что у оператора есть cdn на попсовые ресурсы, на него прописаны маршруты статикой, и, бац, админ (или даже не админ, а какой-нибудь робот) косякнул и начал анонсировать их в мир. При полноценно функционирующем конечном операторре такое чинится за неделю. Ни один провайдер не фильтрует подключаемых к нему операторов по префиксам, только по as-set.
Night_Snake
Почему до сих пор не сажают за настройку BGP в пьяном виде? (с)
flx
была идея выдавать права на управление BGP ;)
ну там «до 2х апстримов и 100 пиров»
«транзит»
«национальный транзит»
И естественно «tier1»
Впрочем, в этой истории зафейлили все.
flx
ну и за «вождение под воздействием» изымать права, а за «инцидент под воздействием» — тюремный срок :))))))
Butylkus
Когда какое-нибуть гов.ру или госуслуги захватят — начнётся содомия похлеще щитшторма с торрентами. И сажать начнут. Жаль, что кулхацкеры не хотят надевать белые шляпы =(