Метка: mpls mitm

  • Перехват BGP-сессии и навязывание ложного маршрута в сети интернет

    Перехват BGP-сессии и навязывание ложного маршрута в сети интернет

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

    Давайте для начала разберемся, что собственно представляет из себя интернет маршрутизация. Маршрутизация основана на автономных системах (AS), которые обмениваются префиксами (диапазоны IP адресов) используя Border Gateway Protocol (BGP). Автономные системы это первые и главные интернет провайдеры (ISP). Но некоторые организации подключены к двум или более провайдерам одновременно. IP адреса, которые ISP выдают своим клиентам, сгруппированны в относительно небольшое число префиксов, покрывающих большие адресные блоки. Эти префиксы «анонсируются» или «рекламируются» через BGP в AS. Префиксы идут от AS к AS, так что в конце концов весь Интернет знает, куда отсылать пакеты с данным адресом назначения.

    Понятие BGP (Border Gateway Protocol, протокол граничного шлюза) было более осязаемо 20 лет назад, когда слово «шлюз» использовалось для название того, что мы сегодня называем маршрутизатор. Итак BGP это протокол, используемый между пограничными маршрутизаторами – роутерами, которые находятся на периферии соседствующих автономных систем. AS представляют собой иерархию, которая выглядит примерно таким образом:

    Между поставщиками Интернет-услуг (ISP) и потребителями услуг показаны отношения сверху вниз: пользователь платит провайдеру. Пунктирные линии показывают отношения, где трафик обменивается без участия денежных операций. При такой экономической модели трафик идет вверх по иерархии, затем в сторону и в конце концов вниз. Маршруты, которые ведут в сторону, затем вниз или вверх, а потом опять в сторону возникают только тогда, когда кто-либо предоставляет бесплатные услуги, что случается довольно таки редко.

    BGP spoofing scheme

    Таким образом, AS 6 может идти к AS 5 по маршруту 6 – 3 – 1 – 2 – 5, где AS 6 платит AS 3, который в свою очередь платит AS 1, при этом AS 5 оплачивающем услуги AS 2. Получается, что все ISP получают деньги, даже несмотря на то, что AS 1 не платит AS 2. Однако маршрут 6 – 3 – 4 – 2 – 5 не действенен для доставки трафика от AS 6 к AS 5. В этом случае, AS 4 пришлось бы платить AS 2 за этот трафик, но так как AS 3 ничего не платит AS 4, получилось бы, что AS 4 предоставляет свои услуги бесплатно. С другой стороны, маршрут 6 – 3 – 4 – 8 от AS 6 к AS 8 работает нормально, так как AS 8 это клиент AS 4 и следовательно AS 8 оплачивает AS 4 входящий трафик.

    Сам по себе BGP не в курсе денежных проблем. В своем дефолтном состоянии BGP поверит всему и с радостью предоставит услуги бесплатно. Чтобы этого избежать, BGP-маршрутизаторы должны обладать фильтрами, которые удостоверяются, что только корректная информация передается по протоколу. В дополнении, «реклама» префиксов, являющаяся способом BGP привлекать входящий трафик, должна высылаться только в соответствии с бизнес отношениями.

    Зная то, как автономные системы взаимосвязаны с другими автономными системами, будь то клиент/ISP соединение или равноправный информационный обмен, можно точно узнать, как может быть достигнута искомая точка назначения из любого источника. Также, необходимо знать какой диапазон IP адресов принадлежит к какой AS. Расчеты перемаршрутатизации после неудачи несколько усложняют дело, но это не слишком большая проблема.

    Знание графа сети и отношений префиксов AS позволило бы создать фильтры, которые утверждали бы информацию, получаемую через BGP и отклоняли некорректную или ложную информацию. Есть специальные базы данных маршрутизации, где отмечается такая информация. К сожалению, не всегда удается пополнять их и информация зачастую ненадежна. IETF и региональные регистраторы, которые раздают IP адреса и AS номера, сейчас работают над базой данных и инфраструктурой сертификатов, которые как раз позволили бы это делать. Хотя пока это только разработки.

    Как бы то ни было, где же эти сервера?

    Операторы сети просто напросто сами не знаю где находится сервера CNN, в Атланте или в Пекине. И когда приходит обновление BGP, утверждая последнее, у провайдеров — точнее у их роутеров, нет другого выбора: им приходится устанавливать обновления и посылать трафик в новом направлении. 999 раз из 1000 перемаршрутизация это вполне обыденное явление. Но 1 раз это все-таки либо ошибка, либо какого-нибудь рода атака.

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

    Это ведет к неприятному состоянию когнитивного диссонанса. С одной стороны, непостижимо, как Интернет-маршрутизация может быть столь наивной. С другой стороны, ведь в большинстве случаев она работает. Исправление ситуации было бы делом непростым, дорогим и окупилось бы далеко не сразу.

    (Я пошел на мое первое IETF собрание в 2002 году, когда в разработке находилась система маршрутизации inter-AS. Я помню у нас был ланч в пицеррии в Атланте. Было 20 человек из Cisco, которые все время неистово изображали топологию сетей на салфетках. К этому времени уже было два предложения для того, чтобы сделать BGP более безопасным: S-BGP от BBN и soBGP от Cisco. Вот уже почти десять лет прошло в спорах о том, какое из этих предложений лучше и вообще стоит ли что-нибудь предпринимать… Но результатов как не было так и нет…)

    Не стоит недооценивать сложности, возникающие при обеспечении безопасности Интернет маршрутизации. Что если сертификат используемый S-BGP или soBGP истечет? Если это означает, что соединение будет прервано, пожелаем успехов в скачивании нового сертификата…

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

    Спасает маршрутизацию то, что большинство ISP тщательно фильтруют то, что клиенты им присылают. И если я настрою свой BGP-маршрутизатор сообщить моему провайдеру, что я владелец IP адреса Windows Update, то мой ISP должен проявить бдительность и игнорировать подобную BGP «рекламу». И так как между ISP и клиентами имеют место быть бизнес-отношения, обе стороны заинтересованы быть в курсе всех последних изменений в префиксах.

    Однако как только некорректная информация перешла границу клиент/провайдер, она быстро распространится по равноправным соединениям практически не встречая никаких преград на своем пути. Это происходит потому, что на данный момент нет никакой официальной базы данных маршрутизируемой информации. Единственный способ ISP отфильтровать равноправных ISP – это постоянный обмен обновленным данным по принципу тет-а-тет. Но по причине постоянной смены клиентов и введения новых префиксов, большого количества пиров у крупных ISP — это способ просто неосуществим.

    Китайская маршрутизация

    Так что же на самом деле случилось в Китае, что повлекло перенаправление маршрутов 15% Интернет-префиксов – а не 15% трафика – на эту страну в апреле? И был ли это несчастный случай или что-то более опасное? Я не был в офисе China Telecommunications Corporation и не наблюдал за случившимся лично, поэтому не могу сказать наверняка, был ли это дьявольский и совершенный план или очень глупая ошибка сетевого инженера. Но я порассуждаю на эту тему позже, не только из-за принципа «Лезвия Хэнлона» («Никогда не приписывайте злонамеренности тому, что вполне может быть объяснено глупостью»).

    Обычный сбой протокола BGP — утечка всей таблицы маршрутизации. В настоящее время существует 341 000 Интернет-префиксов, образующих Интернет, и чтобы работать со всеми ними BGP-маршрутизатору нужно иметь их все в таблице маршрутизации. Если по какой-либо причине BGP-маршрутизатор не имеет никаких фильтров, он просто отправляет всю копию этой таблицы всем маршрутизаторам в соседних автономных системах, к которым он подключен.

    Утечка всей таблицы – ошибка, которая случается достаточно часто, и, казалось бы, это и произошло в Китае. Но вот что могло иметь место на самом деле.

    После обновления фильтра, он может перестать функционировать. Обычно, такое случается с фильтром «максимального префикса» последней инстанции – это останавливает сессию BGP если получено большее количество префиксов нежели возможно. Но, даже не беря в расчет это, подобная утечка должна была быть не настолько разрушительной, потому что обход через (например) Китай означает преодоление дополнительных автономных систем, а BGP предпочитает долгим путям короткие. Это обусловлено тем, что для каждого префикса автономные системы на пути к адресу назначения записываются в «AS путь» — самый короткий путь по количеству автономных систем.

    Однако простая утечка целой таблицы, или хотя бы большей ее части, в данном случае была осложнена любопытным проектным решением China Telecom. Это решение наводит на мысль, что China Telecom очистила AS путь от всех префиксов, которые утекли и таким образом наилучший путь к американским сайтам начал пролегать через китайского провайдера. С точки зрения клиентов China Telecom, адрес назначения, например, CNN, находился внутри сети China Telecom, а не просто достигался через эту сеть.

    Поэтому относительно многие автономные системы начали отдавать свой трафик Китаю. Освобождение AS путей случается когда информация из BGP экспортирована в другой протокол маршрутизации, используемый локально, а потом возвращается обратно в BGP. Такая практика кажется опасной из-за подобного обсуждаемого здесь ранее инцидента. К тому же нет никакого логичной причины зачем делать это – есть правда несколько нелогичных – но я не могу допустить мысли, что такое могло произойти совершенно случайно.

    Таким образом утечка целой таблицы BGP или ее части сама по себе не настолько подозрительна, хотя провайдерам размера China Telecom следовало бы в этом разбираться лучше. Но то, что AS пути были очищены, можно расценить как причину для умеренного подозрения.

    Если бы я был еще большим параноиком, я бы, тем не менее, начал искать в Интернете неправильные префиксы/комбинации автономных систем, которые случайно проявлялись бы на некоторое время. Тот, кто хочет перехватить трафик, наверняка бы создал несколько серверов и BGP-маршрутизаторов в дата-центрах с хорошей связью, а потом попытался бы посмотреть, какой Интернет-провайдер дает сбой в фильтрации. С таким провайдером нацеленная атака могла бы вызвать перемаршрутизацию трафика гораздо дольше чем на 18 минут. Перенаправление префиксов Северной Америки внутри самой Америки выглядело бы менее подозрительно, чем перенаправление их в Китай.

    Пока мы ждем появления какой-то формы безопасности для BGP, мы все должны задуматься о том, что бы случилось, если бы адреса удаленных систем, с которыми мы общаемся, были перенаправлены и наш трафик был бы перехвачен. Шифрование и закрытая аутентификация типа HTTPS или VPN защищают от этого. Однако есть проблема и в шифровании: центрам выдачи сертификатов нельзя так уж доверять. А как справиться с этим – расскажу в следующий раз.

  • BGP маршрутизаторы по прежнему уязвимы

    BGP маршрутизаторы по прежнему уязвимы

    Исследователи предупредили о недостатках в программной реализации протокола BGP (Border Gateway Protocol), которые можно использовать для провоцирования отказа в обслуживании (DoS) на уязвимых одноранговых узлах BGP.

    Уязвимости были найдены во FRRouting версии 8.4, популярном наборе протоколов интернет-маршрутизации с открытым исходным кодом для платформ Linux и Unix. В настоящее время он используется многими вендорами, включая NVIDIA Cumulus, DENT и SONiC, что создает риски для цепочки поставок.

    Проблемы были выявлены в ходе анализа семи различных имплементаций BGP, проведенного Forescout Vedere Labs: FRRouting, BIRD, OpenBGPd, ​​Mikrotik RouterOS, Juniper JunOS, Cisco IOS и Arista EOS.

    Список обнаруженных недавно проблем выглядит следующим образом:

    • CVE-2022-40302 (6,5 балла по шкале CVSS) — out-of-bounds чтение при обработке искаженного сообщения BGP OPEN с опцией Extended Optional Parameters Length;
    • CVE-2022-40318 (6,5 балла по шкале CVSS) — out-of-bounds чтение при обработке искаженного сообщения BGP OPEN с опцией  Extended Optional Parameters Length;
    • CVE-2022-43681 (6,5 балла по шкале CVSS) — out-of-bounds чтение при обработке искаженного сообщения BGP OPEN.

    Наши эксперты пишут, что проблемы «могут использоваться нарушителем для провоцирования состояния отказа в обслуживании на уязвимых одноранговых узлах BGP, что приведет к сбросу всех сессий BGP и очистке таблицы маршрутизации, а сам одноранговый узел перестанет отвечать».

    «Отказ в обслуживании может быть продлен на неопределенный срок путем многократной отправки искаженных пакетов. Основная причина — один и тот же уязвимый шаблон кода, скопированный в несколько функций, связанных с разными этапами анализа сообщений OPEN», — пишут наши исследователи.

    К своему отчету наши аналитики приложили ссылку на опенсорсный инструмент BGP Fuzzer на основе Python, который поможет всем желающим протестировать безопасность BGP или найти новые проблемы в его различных реализациях.

    «Современные реализации BGP роутеров по-прежнему имеют уязвимости, которые могут легко эксплуатироваться нарушителем, — говорят в Forescout. — Для снижения рисков использования уязвимых реализаций BGP, лучшей рекомендацией является как можно более частая установка патчей на устройства сетевой инфраструктуры».

  • Сброс BGP-сессии при помощи TCP Connection Reset Remote Exploit

    Сброс BGP-сессии при помощи TCP Connection Reset Remote Exploit

    Уже ни раз рассказывал о протоколе ТСР, так что повторятся особо не буду, напомню лишь основные положения: Transmission Control Protocol описывается в RFC 793 и преимуществом его является надежность передачи данных от одной машины к другому устройству по сети интернет. Это означает, что ТСР гарантирует надежность передачи данных и автоматически определит пропущенные или поврежденные пакеты. Что для нас важно из его конструкции?

    В общем виде заголовок ТСР пакета выглядит так:

    заголовок пакета TCP

    Программа передает по сети некий буфер данных, ТСР разбивает данные на сегменты и дальше упаковывает сегменты в наборы данных. Из наборов данных формируются пакеты и уже они передаются по сети. У получателя происходит обратный процесс: из пакетов извлекаются набор данных, его сегменты, затем сегменты передаются в ТСР стек и там проверяются, потом собираются и передаются программе.

    Sequence numbers

    Данные разбиваются на сегменты, которые отдельными пакетами направляются по сети получателю. Возможна ситуация, когда пакеты прибудут в точку назначения не по порядку. Это поле — 32-битный номер, определяющий номер сегмента в последовательности, он с каждым пакетом увеличивается и позволяет собрать данные в правильном порядке. В общем смысле значение определяет принадлежит ли пакет активной сессии или нет.

    Window

    TCP так же предоставляет хостам механизм сказать друг другу сколько данных они хотят получить. Это и есть поле Window — 16 битное число в ТСР заголовке. Будучи однажды заданным, оно говорит хосту, что приниматься будет строго ограниченный объем данных, а остальные пакеты будут отброшены. Если очередь приема будет переполнена, то хост может выставить значение окна приема в 0 и таким образом сказать партнеру по обмену трафиком, что типа мол хорош.

    Контрольные биты — SYN, ACK, PSH, URG, RST и FIN, про них уже не раз говорили, так что повторяться не буду.

    Атака TCP RESET

    Главная идея — сфальсифицировать пакет и прекратить или скомпрометировать установленное ТСР соединение. Давай представим, что существует соединение от хоста А к хосту В. Третий хост С подделывает пакет в котором указывает исходный порт и IP адрес хоста А, порт назначения и адрес хоста В, и текущий sequence number активного ТСР соединения между А и В. Хост С устанавливает RTS бит на пакете, так что когда В получит пакет, он немедленно прекратит соединение. Это приведет к отказу от обслуживания до тех пор, пока соединение не будет восстановлено. На уровне приложения конечно трудно сказать что будет, это скорее зависит от самой программы.

    В такой ситуации конечно наиболее уязвимы приложения и протоколы поддерживающие продолжительные соединения. Например BGP (Border Gateway Protocol) от Cisco (см. RFC 1771), так как он основывается на постоянной ТСР сессии между компьютерами. Сбой в работе протокола может привести к “колебанию маршрута” (route flapping), довольно неприятному событию для маршрутизатора.

    Уязвимость

    Paul Watson, обнаруживший уязвимость, объясняет, что на самом деле такую атаку не так трудно организовать как казалось ранее. По предыдущим подсчетам выяснили, что брутфорс атака на sequence number потребует перебора всех чисел от 1 до 4.294.967.295. Однако это вовсе не так. Например, если ТСР стек на хосте А ограничен window в 16К, стек должен получать все пакеты в пределах этого «окна» и атакующему не обязательно посылать пакеты с установленным RTS во всей последовательности SN, а ограничится только каждым возможным окном, так как ТСР примет любой Sequence number в пределах некоторого диапазона, заданного величиной окна. Таким образом нападающему надо перебрать 4.294.967.295 / 16.384 = 262.143 что бы попасть во все доступные окна.

    Вероятно и 262 тысячи может показаться большим числом, однако это не так. Во-первых, при хорошем коннекте атакующий способен генерить десятки тысяч пакетов в секунду. Во-вторых, атаку можно распределить по нескольким хостам. Например на стандартной DSL линии можно производить 250 пакетов в секунду, что исчерпает все варианты за 17 минут, при подключении на скорости 2 МБит/С это уже 4.730 пакетов и всего лишь 60 секунд.

    В примере рассмотрен пример окна в 16К, однако по RFC это поле 16 битное, что дает до 64К. Еесли используется полный его размер, то атакующему достается всего 65.537 пакетов, 4 и 15 секунд соответственно. Причем имейте ввиду, что это максимальное время, в среднем оно будет наполовину меньшим (на практике это 3 минуты и 8 секунд). Что касается описанных в уязвимости 4 пакетов, то она возникает только при использовании window scaling, ТСР расширении (см. RFC 1323) где размер «окна» увеличен с 16 до 30 бит (реализовано, например, и в описанном выше BGP). В случае максимального размера атакующему действительно придется послать только 4 пакета что бы реализовать TCP Reset.

    Source Port

    Все приведенные выше примеры опираются на то, что атакующий знает порт назначения и IP адрес, порт исходный и исходный адрес. Первые два параметра доступны и известны, IP адрес получателя так же не составляет труда узнать — это адрес клиента которого спуфим. Единственный вопрос — исходный порт. Например если ОС случайным образом выдает порт из пула от 1025 до 49.152 (так как например делает OpenBSD), это увеличит количество попыток ровно в 48.127 раз, так как надо будет попробовать подловить номер SN с каждым номером порта. Хорошая новость в том, что большинство ОС, включая Linux и Windows, не используют такой механизм, что сводит на нет вероятность такой защиты.

    reset-tcp.c exploit или сплохи средь бела дня

    Компания ТрансТелеком bgp-сессия

    Paul Watson оказался на редкость щедрым и выложил в сеть написаный им reset-tcp.c эксплоит, который собирается достаточно просто даже на простеньком Debian Linux. Перед сборкой советую проверить наличие в системе необходимой библиотеки libnet-1.1.1 и доставить её в случае отсутствия:

    apt-get install libnet1-dev

    после успешной установки библиотеки в систему переходим к сборке бинарника сплоита:

    gcc reset-tcp.c -o reset-tcp /usr/lib/libnet.a
    или
    gcc -o reset-tcp reset-tcp.c -lnet
    ** можно также поменять предварительно MAC адрес (enet_src/enet_dst) в коде, во избежание лишних проблем со своим интернет-провайдером, которые могут возникнуть в процессе эксплуатации сплоита

    пример запуска:
    reset-tcp [interface] [src ip] [src port] [dst ip] [dst port] [window size]

    [root@orc EuroTransTelecom]# ./reset-tcp eth1 172.16.0.1 1 172.16.0.2 2 65536

    Packets sent: 8192 Sequence guess: 536805376
    Packets sent: 16384 Sequence guess: 1073676288
    Packets sent: 24576 Sequence guess: 1610547200
    Packets sent: 32768 Sequence guess: 2147418112
    Packets sent: 40960 Sequence guess: 2684289024
    Packets sent: 49152 Sequence guess: 3221159936
    Packets sent: 57344 Sequence guess: 3758030848
    packets sent: 65535

    SYN атака

    Reset атака может быть выполнена и без RST бита. Вместо него можно установить SYN бит выполнив точно такую же атаку, что была описана выше. На большинстве реализаций TCP стека в случае получения повторного SYN будет выслан RST с sequence number. Если SYN входит в «окно» текущей сессии, то вместо с RST ответом сессия будет прекращена, а система вероятно даже перезагружена.

    Blind data injection

    Наконец и третий, но далеко не последний вариант развития событий. Делается все так же как и в предыдущих случаях — брутфорсом подбирается sequence number, только вместо посылки пустых SYN или RST пакетов лепим нормальный пакет с данными. Соединение в таком случае не прервется, а вот что у пользователя соберется на компьютере — совершенно непонятный вопрос. Передаваемые данные будут катастрофически повреждены.

  • Multiple banking IP traffic hijacked using BGP

    Multiple banking IP traffic hijacked using BGP

        On 24 July a significant number of Internet Protocol (IP) addresses that belong to banks suddenly were routed to somewhere else 

    An IP address is how packets are routed to their destination across the Internet.

    BGP mitm - multiple banking addresses hijacked

        Why is this important you ask? Well, imagine the Internet suddenly decided that you were living in the middle of Asia and all traffic that should go to you ends up traveling through a number of other countries to get to you, but you aren’t there. You are still at home and haven’t moved at all. All packets that should happily route to you now route elsewhere.

    Emails sent to you bounce as undeliverable, or are read by other people. Banking transactions fail. HTTPS handshakes get invalid certificate errors. This defeats the confidentiality, integrity, and availability of all applications running in the hijacked address spaces for the time that the hijack is running.

    In fact this sounds like a nifty way to attack an organization doesn’t it? The question then would be how to pull it off, hijack someone else’s address? The Autonomous System (AS) in question is owned by NedZone Internet BV in the Netherlands.

    This can be found by querying whois for the AS 25459. According to RIPE this AS originated 369 prefixes in the last 30 days, of these 310 had unusually small prefixes.

    Typically a BGP advertisement is at least a /24 or 256 unique Internet addressable IPs. A large number of these were /32 or single IP addresses. The short answer is that any Internet Service Provider (ISP) that is part of the global Border Gateway Protocol (BGP) network can advertise a route to a prefix that it owns. It simply updates the routing tables to point to itself, and then the updates propagate throughout the Internet. If an ISP announces for a prefix it does not own, traffic may be routed to it, instead of to the owner.

    The more specific prefix, or the one with the shortest apparent route wins. That’s all it takes to disrupt traffic to virtually anyone on the Internet, connectivity and willingness to announce a route that does not belong to you. This is not a new attack, it has happened numerous times in the past, both malicious attacks and accidental typos have been the cause.

    The announcements from AS 25459 can be seen at:
    http://www.ris.ripe.net/mt/asdashboard.html?as=25459

    A sampling of some of the owners of the IP addresses that were hijacked follow:
    1  AMAZON-AES — Amazon.com, Inc.
    2  AS-7743 — JPMorgan Chase & Co.
    1  ASN-BBT-ASN — Branch Banking and Trust Company
    2  BANK-OF-AMERICA Bank of America
    1  CEGETEL-AS Societe Francaise du Radiotelephone S.A
    1  FIRSTBANK — FIRSTBANK
    1  HSBC-HK-AS HSBC HongKong
    1  PFG-ASN-1 — The Principal Financial Group
    2  PNCBANK — PNC Bank
    1  REGIONS-ASN-1 — REGIONS FINANCIAL CORPORATION

    Some on the list were owned by that ISP, the prefix size is what was odd about them. The bulk of the IP addresses were owned by various hosting providers. So, the question is:

    What happened?

    Makes you wonder about the fundamental (in)security of this set of experimental protocols we use called the Internet doesn’t it?

  • Не все HashRate агрегаторы одинаково полезны

    Не все HashRate агрегаторы одинаково полезны

    Исследователь безопасности Эдвард Сноуден, ранее работавший в компании Booz Allen Hamilton говорит, что он обнаружил ряд совершенных одним системным оператором Bell Canada подозрительных транзакций Bitcoin.

    пиратский захват дохода майнинг аппарата с  помощью bgp mitm
    Для получения биткоинов инженер электросвязи скомпрометировал манинг пулы. В свою очередь, участники пулов продолжали отдавать часть производительности своих компьютеров и майнинг-аппаратов на поиск блока криптографического алгоритма Bitcoin, при этом все получаемые ими доходы доставались системному инженеру Bell Canada. Техника bgp mitm перенаправления трафика вводила в заблуждение участников для того, чтобы они продолжали искать блок криптографических алгоритмов Bitcoin, позволяя сетевому оператору сохранить доходы от майнинга криптовалюты на свой счёт. На пике своей деятельности, согласно подсчетам Сноудена, инженер электросвязи из Bell Canada перехватывал поток биткоинов и других цифровых валют, включая dogecoin и worldcoin в сумме эквивалентной примерно 22,5 BTC в день.

    Сноуден считает, что сетевой инженер или инженерка из Bell Canada применила стандартные команды управления протоколом BGP — «протокола граничного шлюза» на вверенном ему сетевом оборудовании, то есть обычные инструкции по маршрутизации, которые направляют трафик в места соединения крупнейших сетей интернета. Предполагается, что инженер или инженерка электросвязи воспользовалась своей учетной записью работника канадского интернет-провайдера Bell Canada, чтобы периодически транслировать нужный её маршрут, которая перенаправляла трафик от сетей других провайдеров, в которых установлены майнинг-аппараты, начиная с февраля и до конца мая этого года на свой сервер, подменяющий серверы изместных майнинг-пулов. В общей сложности таким способом пират или пиратка получила 207,9 BTC за весь перио на свой счёт.

    Однако Сноуден не называет конкретное подразделение интернет-провайдера Bell Canada, в котором работает тот самый инженер или инженерка электросвязи, получавшая до 22,5 BTC в день на криптовалютах с использованием оптимизированных под себя схем маршрутизации сетевого трафика.