Боб — независимый исследователь безопасности. В начале марта 2026 года он обнаружил серьёзные уязвимости в программном интерфейсе (API) и на сайте Frontier Airlines, которые позволяли любому, у кого есть код бронирования, вытащить всю личную информацию пассажиров рейса. Среди раскрываемых сведений оказались домашние адреса, почти полные реквизиты платёжных карт, полные паспортные данные и даже номера TSA PreCheck — программы ускоренного досмотра в аэропортах США. Код бронирования (PNR, он же record locator) напечатан на самом талоне и продублирован в штрихкоде, а состоит всего из шести символов — то есть поддаётся и обычному перебору.

Посадочный талон авиакомпании со штрихкодом — источник утечки персональных данных пассажировИсточник изображения — оригинальный источник

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

Как устроена атака

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

Ключевая деталь, о которой почти никто не задумывается: штрихкод на талоне — это не служебная метка для сканера на выходе к самолёту, а стандартизированный отраслевой формат BCBP (Bar Coded Boarding Pass), утверждённый ИАТА. Внутри него открытым текстом лежат имя пассажира, код бронирования и данные рейса. Именно поэтому попытки замазать буквы на фотографии талона перед публикацией в социальных сетях ничего не дают — всё то же самое считывается из кода любым бесплатным приложением-сканером.

Дальше эти два значения подставляются в один из адресов мобильного API Frontier, и сервер возвращает целиком внутреннюю запись о бронировании — по каждому пассажиру, вписанному в него.

реклама кормит Уточку 🦆

Что именно раскрывалось

Ответ сервера содержал набор данных, который принято относить к категории строго защищаемых:

  • полный домашний адрес — улица, город, штат, почтовый индекс;
  • адрес электронной почты и номер телефона;
  • полная дата рождения — в том числе для несовершеннолетних;
  • незамаскированные паспортные данные: номер, страна выдачи, срок действия;
  • номер участника программы TSA PreCheck (Known Traveler Number);
  • номер в бонусной программе Frontier Miles;
  • реквизиты платёжной карты: первые шесть цифр (BIN), последние четыре, срок действия, имя держателя и полный адрес выставления счёта;
  • история платежей с кодами авторизации.

Всё это пригодно для кражи личности, преследования и других противоправных действий. Номер TSA PreCheck особенно неприятен для самой авиационной отрасли: он привязан к личности и при подмене документов упрощает злоумышленнику прохождение упрощённого досмотра.

реклама кормит Уточку 🦆

Почему «частичные» данные карты — это полные данные карты

Утечка платёжных реквизитов выглядит безобиднее, чем есть на самом деле. Скрытыми остаются лишь пять средних цифр и код CVV. Но первые шесть цифр — это BIN, банковский идентификатор, который определяется самим эмитентом и не является тайной. Последняя цифра номера — контрольная, она вычисляется по алгоритму Луна. В сухом остатке на перебор приходится сравнительно небольшое пространство вариантов, а имя держателя, срок действия и адрес выставления счёта уже известны. Единственной реальной преградой остаётся трёхзначный код на обороте карты.

Сайт раскрывал данные не хуже мобильного интерфейса

На этом проблемы не заканчивались. Разделы управления бронированием на сайте перевозчика — доступные по той же паре «код плюс фамилия» — точно так же отдавали личные сведения в исходном коде страницы и в фоновых запросах.

Общепринятая практика требует на таких легкодоступных страницах соблюдать принцип минимальной достаточности данных: запрашивать и показывать только то, что действительно нужно прямо сейчас. Здесь всё было наоборот. На странице «Управление бронированием» в исходном коде открыто видны имя, почта и телефон, хотя визуально они замаскированы звёздочками. А страница «Пассажиры / Редактирование» просто выводит в поля формы полные имена, страну, почтовый индекс, дату рождения, пол, паспортные данные и всё тот же номер TSA PreCheck — без какой-либо маскировки.

Отдельная ирония в том, что Frontier попыталась закрыть первую проблему, но исправленная версия страницы стала раскрывать больше данных, чем исходная.

реклама кормит Уточку 🦆

Хронология: 105 дней без реакции

Дата
Событие
3 марта 2026
Первое уведомление Frontier Airlines об уязвимостях
9 марта 2026
Повторное обращение в рамках стандартной 90-дневной процедуры раскрытия
Март — апрель 2026
Компания закрывает единственную, наименее значимую уязвимость и присылает исследователю модель самолёта в знак благодарности
16 июня 2026
Публикация разбора в блоге: критические уязвимости всё ещё доступны, 105 дней спустя
19 июня 2026
Frontier заявляет отраслевым изданиям, что «знала о потенциальных уязвимостях» и что они «устранены»
Июль 2026
Против перевозчика подано два иска в федеральный суд США из-за утечки персональных данных

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

реклама кормит Уточку 🦆

Что это значит для пассажиров

Случай Frontier — не уникальный сбой одного перевозчика, а иллюстрация системной проблемы отрасли. Пара «код бронирования плюс фамилия» десятилетиями используется как фактический пароль к записи о поездке, хотя обе её части печатаются на бумаге, которую пассажир носит в руках, оставляет в кармане кресла и выбрасывает в урну у выхода. Похожие изъяны находили и в глобальных системах бронирования, которыми пользуются сотни авиакомпаний по всему миру.

Несколько практических выводов, которые стоит сделать любому путешественнику:

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

Сам исследователь резюмировал историю коротко: пассажиры авиакомпании заслуживают лучшего.