Кратко
- Более специфичные маршруты внутри адресного пространства Amazon привели часть рекурсивных резолверов к ложным серверам, которые выборочно отвечали за
myetherwallet.com. - Защита требует не единого центра истины, а независимых прав отказа на каждом уровне и корреляции маршрута, DNS, TLS и транзакции до необратимого действия.
Возможность отвечать — ещё не право на имя
24 апреля 2018 года имя myetherwallet.com не было передано атакующему. Публичные данные не показывают смену владельца домена или правку зоны в панели AWS. Изменилась достижимость части адресов Route 53.
Cloudflare наблюдала примерно с 11:05 до 12:55 UTC объявления /24 внутри четырёх /23 Amazon. Адреса обслуживали авторитетный DNS Route 53 и были связаны с AS16509. Наблюдаемым источником стал eNet AS10297, часть пути проходила через Hurricane Electric AS6939.
Это не доказательство участия самой eNet. Cloudflare допускала, что маршрут мог объявить клиент. BGP показывает технически видимый origin, но не человека и не намерение.
Более специфичные /24 выигрывали по longest-prefix match там, где сети их принимали. Законные агрегаты Amazon могли оставаться в таблице. Некоторые транзиты маршруты, по наблюдениям, не распространяли, поэтому единого глобального переключения не было.
Чужой выбор стал ответом для пользователя
Пользовательская сеть могла не принимать ложный маршрут. Достаточно было пользоваться рекурсивным резолвером, чья площадка или связность его приняла. Резолвер обращался к достигнутому ложному авторитетному серверу и отдавал клиенту ответ.
Cloudflare перечислила затронутые узлы 1.1.1.1 в Чикаго, Австралии, Азии, Маскате и Джибути, тогда как другие узлы работали нормально. Карта риска следовала межсетевым связям, а не государственным границам.
Ложные серверы отвечали для myetherwallet.com, но другие запросы завершались ошибками. Они не копировали Route 53 целиком. Выборочность экономила время атакующего и создавала полезный индикатор: одна ценная зона отвечает, соседние дают SERVFAIL.
Последний отказ оставался у браузера
По данным Cloudflare, фишинговая страница предъявляла самоподписанный сертификат. Браузер видел правильное имя, но не доверял издателю и показывал предупреждение.
Потери возникали там, где предупреждение обходили и взаимодействовали с поддельной страницей. MyEtherWallet позднее оценила похищенное примерно в 150 тысяч долларов в Ether. Это оценка пострадавшей организации, а не доступный независимый аудит всех операций.
Нельзя свести причинность к пользователю. До предупреждения враждебное состояние уже прошло через объявление, транзит, выбор маршрута, рекурсивный запрос и ложный ответ.
Пять узких полномочий
BGP предлагал путь. Сети решали, распространять и выбирать ли его. Резолвер решал, какие DNS-данные принять. Браузер проверял сертификат. Приложение и пользователь разрешали действие с ценностью.
Достижимость не доказывает владение. DNS-ответ не доказывает сертификат. Сертификат не доказывает честность сервиса. Веб-страница не доказывает намерение транзакции.
Атака складывала узкие ответы в широкую видимость «это MyEtherWallet». Полномочия возникли между слоями, а не в одном центре.
Два вида криптографической проверки
RFC 6811 задаёт проверку origin маршрута. Сеть, которая валидирует корректно ограниченный ROA и отклоняет Invalid, может остановить более специфичный маршрут от другого origin до того, как он повлияет на резолвер.
RPKI не проверяет весь AS-path и не принуждает все сети. Атакующий может попытаться подделать разрешённый origin, а чрезмерный maxLength ослабляет границу.
DNSSEC проверяет происхождение и целостность DNS-данных. RFC 4033 определяет эту функцию, RFC 9364 называет её best current practice. Валидирующий резолвер способен отклонить неподписанный ложный ответ, даже если BGP привёл его к чужому серверу.
AWS объявила подпись публичных зон Route 53 и валидацию Resolver в декабре 2020 года. Это более поздняя возможность, а не доказательство конфигурации MyEtherWallet в 2018-м. DNSSEC не проверяет маршрут или намерение перевода.
Не считать меры одинаковыми
MyEtherWallet перечислила Registry Lock, Registrar Lock, HSTS preload, CAA, DNSSEC, CDN и DDoS-защиту. Блокировки домена защищают учётную запись, а не BGP. CAA ограничивает центры сертификации, но самоподписанный сертификат и так не доверен. HSTS preload запрещает обойти ошибку. DNSSEC проверяет данные. ROA и ROV ограничивают origin.
Список становится архитектурой лишь тогда, когда для каждой меры известны механизм, владелец, сигнал отказа и остаточное состояние после восстановления.
Running-Code Primacy как граница
Идея Heng Lu отделяет запись от операционного эффекта. Маршрут действовал только там, где работающие сети его приняли. Ложный ответ действовал там, где резолвер его выдал. TLS-предупреждение оставалось локальным отказом.
Распределённость не гарантирует правду, но сохраняет несколько мест для «нет». Техническая возможность не становится законным полномочием: притяжение пакетов не передаёт префикс, ответ за имя не передаёт домен.
Вывод
Публичный набор не устанавливает исполнителя, полный список резолверов и жертв, сроки всех кэшей или аудированный ущерб. Это не был глобальный захват AWS.
Но механизм установлен достаточно точно: временный маршрут одолжил имя и попытался превратить видимость в необратимый перевод. Надёжная система не позволяет узкому доказательству автоматически получить власть следующего слоя.
Источники
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
