Carnivore: Как работала спорционная программа перехвата пакетов ФБР

17

Программа ФБР Carnivore вызвала дрожь у сторонников конфиденциальности, когда новость о ней появилась в СМИ. Это звучало как отрывок из антиутопического романа, в частности из книги Джорджа Оруэлла «1984». Агентство утверждало, что это необходимый инструмент для отслеживания подозреваемых преступников в цифровую эпоху. Критики не согласились, увидев в этом массовое превышение полномочий в сфере частных коммуникаций.

В январе 2005 года правительство окончательно свернуло проект Carnivore. Вместо него были внедрены готовые коммерческие инструменты слежки. Однако техническая архитектура этой заброшенной системы по-прежнему предоставляет интересный взгляд на то, как развивался цифровой мониторинг.

От Omnivore до DragonWare

Carnivore не была первой попыткой ФБР осуществлять цифровое прослушивание. Это было третье поколение их программного обеспечения для обнаружения онлайн-угроз. Первая версия остается загадкой. Некоторые эксперты подозревают, что это была просто Etherpeek, стандартный коммерческий инструмент анализа сети.

В 1997 году они развернули второе поколение: Omnivore.

Согласно раскрытым данным ФБР, Omnivore размещался в сети провайдера интернет-услуг (ISP). Его задача была простой. Он отслеживал почтовый трафик. Он выделял сообщения от конкретного целевого источника. Затем он сохранял их на ленточный накопитель или распечатывал в реальном времени.

Эта система была выведена из эксплуатации в конце 1999 года. Она была заменена более надежной системой: DragonWare Suite.

DragonWare не просто сохранял электронные письма. Он реконструировал их. Он мог восстанавливать загруженные файлы. Он даже мог собирать веб-страницы по кусочкам. В состав набора входили три основных компонента, хотя ФБР держало детали в строжайшем секрете.

  • Carnivore : Движок захвата. Работал на Windows NT или 2000.
  • Packeteer : Официальная цель неизвестна. Вероятно, отвечал за сборку фрагментированных данных в читаемые сообщения.
  • Coolminer : Также непрозрачен. Вероятно, анализировал извлеченные данные на наличие паттернов.

Мы знаем очень мало о Packeteer и Coolminer. Но роль Carnivore была ясна. Это был перехватчик пакетов (packet sniffer).

Механика перехвата пакетов

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

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

Перехватчик меняет это правило.

При настройке перехватчика вы переводите сетевой интерфейс в промоiscuous-режим (режим прослушивания). Это заставляет сетевую карту читать каждый проходящий мимо пакет, независимо от адреса назначения. Объем данных, которые вы видите, зависит от того, куда вы подключены. Рабочая станция на боковой ветке видит ограниченный трафик. Главный сервер видит почти всё.

Эти инструменты можно запускать двумя способами:

  • Без фильтрации : Вы захватываете каждый пакет.
  • С фильтрацией : Вы захватываете только пакеты, соответствующие определенным критериям, например, адресу электронной почты цели.

Отфильтрованные копии сохраняются в памяти или на жестком диске. Аналитики затем могут просматривать их построчно.

Что могло видеть ФБР

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

Carnivore потенциально мог мониторить:

  • Какие веб-сайты вы посещали
  • Конкретные страницы, которые вы просматривали
  • Кому вы отправляли электронные письма
  • Содержание этих писем
  • Загруженные файлы
  • Использование потоковых медиа
  • Посетители вашего собственного веб-сайта

Является ли это действительно новой угрозой? Вероятно, нет. Многие провайдеры используют перехватчики для диагностики. Многие хранят резервные копии электронной почты для хранения данных. Действия ФБР вызвали споры, потому что они формализовали и масштабировали этот доступ для правоохранительных органов. Сама технология была лишь эволюцией существующих инструментов управления сетью.

Механика работы Carnivore была меньше похожа на магию и больше на бюрократическую процедуру, встретившуюся с аппаратным обеспечением. Всё начиналось с судебного приказа. ФБР требовалось обоснованное подозрение в том, что подозреваемый причастен к преступной деятельности. Они не просто просили заглянуть в переписку; они запрашивали полный авторизованный перехват содержимого (content-wiretap). Это различие имеет значение. В терминах телефонного прослушивания перехват содержимого захватывает всё, что находится внутри пакета связи. Это цифровой эквивалент прослушивания разговора, а не просто фиксация того, кто с кем говорит.

Сравните это с судебным приказом на установку ловушки и отслеживания (trap-and-trace). Он позволяет получить только метаданные — адресата. Кому отправляется письмо? Какой веб-сайт посещается? Затем есть обратный вариант: регистратор пера (pen-register). Он отслеживает, откуда исходит входящее сообщение. Но Carnivore был создан для тяжелой работы. Он был разработан для перехвата содержимого.

Аппаратная настройка

ФБР не просто устанавливало программное обеспечение на свои ноутбуки. Они шли к источнику. Они связывались с провайдером интернет-услуг (ISP), на серверах которого находился аккаунт подозреваемого, и запрашивали доступ к резервным файлам. Затем они привозили свое оборудование в серверную комнату провайдера.

Этот аппарат не был каким-то футуристическим черным ящиком. Это был Pentium III, работающий под управлением Windows NT или 2000. У него было 128 мегабайт оперативной памяти. Сегодня это звучит смешно, но в конце 90-х это было серьезным бизнесом. Система опиралась на три уровня программного обеспечения: коммерческие инструменты связи, собственное приложение на C++ для перехвата и фильтрации пакетов, а также физическая система блокировки. Для доступа к аппаратному обеспечению требовался специальный пароль. Никакого несанкционированного персонала. Никаких любопытных техников.

Ключевым элементом настройки было устройство изоляции сети. Оно делало систему Carnivore невидимой для остальной сети провайдера. Это был призрак. Вы не могли взломать его с другого компьютера, потому что для сети он фактически не существовал. Хранение данных осуществлялось с помощью 2-гигабайтного диска Iomega Jaz. Это были сменные картриджи, которые можно было менять, как дискеты, но с значительно большей емкостью. Здесь хранились захваченные данные.

Фильтрация шума

Конфигурация была специфической. ФБР подключало IP-адрес подозреваемого. Carnivore игнорировал всё остальное. Он пассивно копировал пакеты, не нарушая трафик. Если сеть замедлялась, это было не из-за Carnivore. Это было потому, что система делала именно то, что ей поручили: ничего, кроме копирования.

После копирования данные попадали в фильтр. Это была «умная» часть. Программное обеспечение определяло протоколы. Оно искало сигнатуры протокола простой почты (SMTP). SMTP — это стандарт для электронной почты. Фильтруя по SMTP, Carnivore отбрасывал шум — просмотр веб-страниц, передачи по FTP, логи чатов. Он оставлял только пакеты электронной почты. Они сохранялись на картридж Jaz.

Агент ФБР посещал провайдера каждые один-два дня. Он физически менял картридж. Процесс был жестким. Картридж помещался в старый, запечатанный контейнер. Если печать нарушалась, лицо, имеющее к нему доступ, должно было немедленно подписать, датировать и запечатать его заново. В противном случае улики считались скомпрометированными. Цепочка сохранности доказательств была всем.

У наблюдения был жесткий предел. Максимум месяц без продления судебного приказа. Когда срок истекал, оборудование изымалось. Данные на картридже обрабатывались с помощью инструментов Packeteer и Coolminer. Если электронные письма предоставляли достаточно доказательств, они передавались в суд. Если нет — они уничтожались. Сам провайдер не хранил записи о деятельности в этот период. Он был просто площадкой.

Почему выбирались конкретные преступления?

Carnivore не был удочкой. Это было копье. ФБР планировало использовать его для конкретных расследований с высокими ставками. Вы не получали судебный приказ на использование Carnivore для поимки местного вора из магазина. Целями были:

  • Терроризм
  • Детская порнография и эксплуатация
  • Шпионаж
  • Информационная война
  • Мошенничество

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

Общественная реакция

Технология работала, но реакция была яростной. Защитники прав частной жизни увидели сценарий кошмара. Закон о конфиденциальности электронных коммуникаций (ECPA) обеспечивал правовую защиту электронных коммуникаций. Любое наблюдение требовало вероятной причины и судебного приказа. Использование Carnivore вне этих рамок было незаконным. Это граничило с неконституционностью. Потенциал для злоупотреблений был «слоном в комнате». Критики утверждали, что система слишком непрозрачна.

Затем был страх перед регулированием. Некоторые считали, что Carnivore — это первый шаг к тому, чтобы правительство США захватило контроль над Интернетом. Идея заключалась в том, что ФБР разместит эти системы у каждого провайдера — частного, коммерческого, образовательного. Теоретически возможно для провайдеров, базирующихся в США. Невозможно для тех, кто находится вне юрисдикции США. Требуемая инфраструктура была бы массивной. А сопротивление было бы всеобщим.

Заботы о свободе слова звучали не менее громко. Ходили слухи, что Carnivore мониторит всё содержимое, сканируя ключевые слова, такие как «бомба» или «убийство». Любой перехватчик пакетов можно настроить на поиск шаблонов. Но без вероятной причины мониторинг вашей общей активности нарушал ECPA и Первую поправку. ФБР утверждало, что они смотрят только то, что указано в судебном приказе. Они отказывались раскрывать исходный код. Эта секретность только подпитывала паранойю.

Многие путали Carnivore с Echelon. Echelon — это предполагаемая сеть Агентства национальной безопасности (NSA), предназначенная для захвата международных пакетов, содержащих определенные ключевые слова. Было мало веских доказательств того, что Echelon вообще существовал так, как его описывали. Но смешение этих понятий повредило репутации Carnivore. Он стал символом превышения правительством своих полномочий.

Внедрение было борьбой с подъемом в гору. ФБР должно было оправдывать каждое свое действие. Они должны были доказать, что соблюдают закон. Но в рамках ECPA Carnivore оставался мощным инструментом. Он показал, что цифровое наблюдение больше не было научной фантастикой. Оно стало операционной реальностью. И это изменило то, как мы думаем о конфиденциальности в цифровую эпоху.

Как Carnivore обращался с конфиденциальностью данных?

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

Почему Carnivore вызывал споры?

Секретность была главной проблемой. ФБР не выпускало исходный код. Они не объясняли алгоритмы фильтрации подробно. Отсутствие прозрачности делало легким для критиков предполагать худшее. Сканнировало ли оно ключевые слова? Хранило ли оно больше данных, чем необходимо? Без проверки общественность должна была догадываться. И люди предполагали худшее.

Что случилось после Carnivore?

Технология эволюционировала. Новые версии сталкивались с более строгим контролем. Правовые рамки адаптировались. Но основное напряжение осталось. Правоохранительным органам нужны инструменты для поимки преступников. Граждане ожидают конфиденциальности. Баланс хрупкий. Carnivore был лишь одним кусочком этой головоломки. Крупным, шумным и спорным кусочком.

Можно ли действительно так легко мониторить электронную почту?

Технически, да. Если у вас есть физический доступ к сети и правовые полномочия. Сотрудничество провайдера интернет-услуг имеет решающее значение. Без него аппаратное обеспечение бесполезно. ФБР не могло просто подключиться к проводу из своего офиса. Они должны были быть на месте. Это физическое требование добавляло слой трения. Оно делало массовое наблюдение непрактичным. Но целевое наблюдение? Очень простое.

Наследие Carnivore — это не только аппаратное обеспечение. Это дебаты, которые оно спровоцировало. Оно заставило вести разговор о шифровании, законах о конфиденциальности и власти правительства. Этот разговор не закончился. Он просто переместился в облако. И ставки теперь выше.

Секретный сниффер пакетов ФБР

Carnivore был не абстрактной концепцией или теоретическим кодом. Это была реальная развернутая система слежки. И управляла ею напрямую ФБР.

На протяжении многих лет агентство тщательно скрывало свои методы от общественности. Программное обеспечение действовало как сниффер пакетов. Оно располагалось за веб-серверами или провайдерами интернет-услуг. Оно захватывало данные, перемещавшиеся по сети. Содержимое электронной почты. Логи чатов. История веб-просмотров. Всё это.

Скандал вызывало не только то, что делала система, но и то, как она это делала. Защитники конфиденциальности видели в ней лазейку в частные коммуникации. Технические эксперты указывали на уязвимости в её протоколах безопасности. Была ли она на самом деле защищенной? Или это был просто еще один слой уязвимости?

«Это инструмент. Как и любой другой инструмент, его влияние зависит от того, кто им владеет и как им пользуется».

В конечном итоге программа подверглась тщательному рассмотрению. Внутренние проверки. Общественное возмущение. Само ФБР признало необходимость изменений. К 2005 году название Carnivore было снято. Ему на смену пришло менее провокационное имя. Но базовая функциональность осталась прежней.

Как это работало на самом деле

Carnivore был разработан так, чтобы оставаться незамеченным. Он устанавливался на сервер провайдера, а не на машины самого ФБР. На инфраструктуре провайдера. Это затрудняло его обнаружение.

Он фильтровал данные на основе ключевых слов или IP-адресов. Если находилось совпадение, этот пакет копировался. Остальной трафик? Проходил мимо незамеченным. Для пользователя. Для интернет-провайдера. Для любого, кто наблюдал за поверхностной активностью.

Техническая архитектура была простой. Но последствия были масштабными. Она обходила традиционные законы о прослушивании телефонных переговоров. Которые были созданы для телефонных линий. А не для цифровых потоков.

Почему это важно сегодня

Технологии эволюционировали. Название изменилось. Но основная функция сохраняется. Государственным агентствам по-прежнему нужен доступ к цифровым коммуникациям. Методы стали более сложными. Более распределенными. Менее централизованными.

Но фундаментальный вопрос остается тем же. Кто наблюдает за наблюдателями? И что происходит, когда инструменты слежки опережают законы, призванные их контролировать?

Ответ кроется не в коде. Он в политике. А политика движется медленнее, чем программное обеспечение.