Вопрос или проблема
Я заметил подозрительную сетевую ошибку при попытке ввести информацию о своей кредитной карте на странице console.cloud.google.com/billing. Сетевая ошибка указала на то, что GET-запрос к https://224.32.32.182/6516
завершился неудачей с net::ERR_ADDRESS_UNREACHABLE
.
При дальнейшем расследовании я выяснил, что этот запрос был вызван скриптом https://clients2.google.com/gr/gr_full_2.0.8.js
. После деобфускации сильно обфусцированного скрипта я обнаружил, что он пытается получить доступ к URL-адресам формата https://224.32.32.{1 до 253}/{случайное целое число}
через свойство src
объекта Image. Скрипт также, похоже, собирает информацию через ActiveX и ShockwaveFlash.
Диапазон адресов 224.32.32.0/24
является частью резервированных многоместных IP-адресов, как указано в IANA.
Я подозреваю, что основная цель этого скрипта — отпечаток устройства. Это подозрение возникает из-за его использования ActiveX и ShockwaveFlash для сбора информации о устройстве. Однако мне неясно, какова цель отправки запросов на многоместные IP-адреса, особенно когда четвертый сегмент IP-адреса и путь генерируются случайным образом.
Кроме того, тот факт, что Google не указал явно IP-адреса в скрипте и использует обфусцированный код для их генерации, предполагает, что может быть намерение скрыть эти действия. Это вызывает беспокойство относительно законности и цели такого поведения.
Вот код, ответственный за создание URL для запросов:
var b = "\u00e0 ";
b = [b.charCodeAt(0), b.charCodeAt(1), b.charCodeAt(2), Math.floor(Math.random() * 253) + 1].join(".");
var c = "http";
a.ya && (c += "s");
var d = c;
d += "://";
d += b;
d += "/";
var e = Math.floor(Math.random() * 1E5)
, f = u()
, g = a.ba || 1E3;
В этом коде используется Юникод-строка "\u00e0 "
для генерации первых трех октетов IP-адреса, а четвертый октет — это случайное целое число от 1 до 253. Затем скрипт отправляет запрос на этот IP-адрес с использованием либо HTTP, либо HTTPS.
Составленный URL передается функции vb
, которая инициирует сетевой запрос. После этого целое число в пути увеличивается, и выполняется еще один запрос, с записью времени, затраченного на каждый запрос. Это поведение, похоже, нацелено на измерение сетевого производительности или сбор какой-то информации о времени, но точное намерение остается неясным.
Учитывая необычный характер этих запросов — особенно нацеливание на резервированный диапазон многоместных IP-адресов и обфускацию IP-адресов — меня беспокоят потенциальные проблемы с конфиденциальностью или безопасностью. Я был бы признателен за любые сведения о цели этого скрипта и о том, является ли такое поведение стандартным или его следует дополнительно расследовать.
Ответ или решение
Судя по вашему описанию, вы столкнулись с достаточно необычным и потенциально тревожным поведением JavaScript кода, выполняемого в браузере на странице Google Cloud Console. Давайте рассмотрим несколько аспектов вашего вопроса.
1. Подход к мульткастовым IP-адресам
IP-адреса в диапазоне 224.32.32.0/24 относятся к классу мульткастовых адресов, которые зарезервированы IANA (Internet Assigned Numbers Authority) для специализированных сетевых приложений. Как правило, такие адреса используются для передачи данных от одного источника к множеству получателей и не предназначены для прямой адресации конкретных устройств в интернете. Поэтому запросы к таким адресам из браузера могут вызывать настороженность.
2. Обычное поведение или потенциальная угроза?
Обращение к сериализуемым и обфусцированным IP-адресам может указывать на несколько возможных причин:
-
Сбор данных: Использование таких адресов может быть связано с механизмами сбора данных о устройстве пользователя, как вы и подозреваете. Скрипты, использующие ActiveX и Shockwave Flash, получили notoriety за свою способность извлекать информацию о конфигурации устройств, что наводит на мысль о возможности так называемой "пальчиковой подписи" устройства.
-
Тестирование сети: Интерес к рандомизированным адресам также может свидетельствовать о тестировании производительности сети или исследовании пропускной способности. Однако отправка запросов на адреса, находящиеся в пределах зарезервированных мульткастов, выглядит странно.
3. Причины обфускации кода
Обфускация JavaScript-кода зачастую используется для защиты интеллектуальной собственности, но в контексте вашего случая это может также вызывать подозрения. Если Google намеревался сделать этот процесс прозрачным, код мог бы быть более понятным. Это может указывать на рискованные практики, не соответствующие современным стандартам конфиденциальности и безопасности.
4. Возможные меры
Если данные запросы вызывают у вас тревогу по поводу конфиденциальности или безопасности, вы можете предпринять несколько шагов:
-
Блокировка скриптов: Рассмотрите возможность использования расширений браузера, которые блокируют сторонние скрипты, или использование режима инкогнито, который может уменьшить отслеживание.
-
Обратная связь с Google: Сообщите о вашей находке в поддержку Google. Это может дать дополнительный анализ ситуации и, возможно, повлиять на их методы обработки данных.
-
Мониторинг трафика: Используйте инструменты для анализа сетевого трафика (например, Wireshark), чтобы углубленно исследовать типы данных и объем информации, которая передается вашему устройству.
Заключение
Важно быть внимательными к таким видам сетевой деятельности, особенно в контексте передачи чувствительной информации, как номеров кредитных карт. Действительно, запросты к мульткастовым адресам и оюфсированный код могут указывать на небезопасные практики. Ваша бдительность — это первый шаг к защите личных данных и устройств.