Вы когда-нибудь пользовались ChatGPT, продуктами OpenAI или KYC верификацей?
В расследовании нашли, что одна из самых известных компаний Persona, которая предоставляет услуги верификаций и проверки возраста по селфи,... связана с фбр сша?

А еще... ИИ анализирует ваше лицо и определяют насколько вы похожи на политически уязвимого человека вместе... с социальным рейтингом? ...SelfieSuspiciousEntityDetection?

Давайте разбираться

С чего все началось?..

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

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

Вся архитектура находилась буквально на виду.
53 мегабайта незащищённых source map-файлов в окружении FedRAMP. Там же — эндпоинт, подающий отчёты о подозрительной деятельности (SAR), модуль, который сравнивает ваше селфи с фотографиями через распознавание лиц, система, помечающая вас по 14 категориям «негативных медиа» — от терроризма до шпионажа — и механизм тегирования отчётов кодовыми названиями активных разведывательных программ.

2 456 исходных файлов — фактически вся кодовая база на TypeScript:
каждое разрешение доступа, каждый API-эндпоинт, каждое правило комплаенса, каждый алгоритм.

И все это сидя без аутентификации в общедоступном Интернете

Каждое обнаружение в этом документе поступает из общедоступных источников: шодан, журналы прозрачности сертификатов, разрешение DNS, заголовки ответов HTTP, опубликованная документация API.

Если будут обновления по расследованию, то СРАЗУ ЖЕ напишем об этом в телеграм

Странная инфраструктура персоны

У Persona обычная инфраструктура проходит через Cloudflare:

withpersona.com          -> 162.159.141.40, 172.66.1.36  (CF)
inquiry.withpersona.com  -> 162.159.141.40, 172.66.1.36  (CF)
app.withpersona.com      -> 162.159.141.40, 172.66.1.36  (CF)
api.withpersona.com      -> 162.159.141.40, 172.66.1.36  (CF)

Кроме того, у них настроена wildcard-запись DNS: *.withpersona.com указывает на Cloudflare (cloudflare.withpersona.com.cdn.cloudflare.net). Мы подтвердили это, разрешив полностью вымышленные поддомены:

totallynonexistent12345.withpersona.com -> 162.159.141.40  (CF)
asdflkjhasdf.withpersona.com            -> 162.159.141.40  (CF)

То есть по умолчанию всё доменное пространство withpersona.com проксируется через Cloudflare.

Но вот где становится действительно интересно. Сервис watchlist для OpenAI выбивается из этой схемы:

openai-watchlistdb.withpersona.com         -> 34.49.93.177  (GCP)
openai-watchlistdb-testing.withpersona.com -> 34.49.93.177  (GCP)

И что мы видим? Отдельный инстанс в Google Cloud, не находящийся ни за Cloudflare, ни внутри общей инфраструктуры Persona.

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

Не нужно быть Альбертом Эпштейном, чтобы понять что это за инфруструктура и зачем она нужна

Из официальной документации персонки

Документация API Persona (docs.withpersona.com).
Когда такой клиент, как OpenAI, выполняет проверку государственного идентификатора, API возвращает полное досье личности:

personal identity:  - full legal name (including native script)  - date of birth, place of birth  - nationality, sex, height
address:  - street, city, state, postal code, country
government document:  - document type and number  - issuing authority  - issue and expiration dates  - visa status  - vehicle class/endorsements/restrictions
media:  - FRONT PHOTO of ID document (URL)  - BACK PHOTO of ID document (URL)  - SELFIE PHOTO (URL + byte size)  - VIDEO of identity capture (URL)
metadata:  - entity confidence score  - all verification check results with pass/fail reasons  - capture method used  - timestamps (created, submitted, completed, redacted)

Сама Persona заявляет, что OpenAI проверяет миллионы пользователей ежемесячно и «автоматически проверяет более 99% пользователей в фоновом режиме за считанные секунды».

В фоновом режиме. За секунды. Миллионы.

Причём с настраиваемыми фильтрами от простых частичных совпадений по имени до продвинутых алгоритмов распознавания лиц.

Опять же, ничего из этого не является даже секретом

Государственная платформа

Исследуя инфраструктуру наблюдения, мы обнаружили параллельное развертывание.

IP:             34.27.15.233
ASN:            AS396982 (Google LLC)
provider:       Google Cloud, us-central1
city:           Council Bluffs, US (Google's Iowa datacenter)
open ports:     80 (redirect), 443
cert:           CN=*.withpersona-gov.com (wildcard)
tech:           Caddy web server, Go, Google Cloud CDN
live subdomains:  withpersona-gov.com           34.27.15.233   marketing  app.withpersona-gov.com       34.27.15.233   Persona dashboard  inquiry.withpersona-gov.com   34.27.15.233   verification flow  admin.withpersona-gov.com     34.27.15.233   admin panel  login-gov.withpersona-gov.com 3.15.167.135   Okta SSO (AWS!)  app.trust.withpersona-gov.com 104.21.47.3    Cloudflare Access  trust.withpersona-gov.com     104.21.47.3    Cloudflare Access

Persona получила статус FedRAMP Authorized (Low Impact) 7 октября 2025 года, а также статус FedRAMP Ready на уровне Moderate Impact. Речь идёт о развёртывании, предназначенном для обслуживания федеральных агентств.

На странице входа login-gov.withpersona-gov.com отображается пользовательская панель входа Okta. Исходный HTML-код страницы раскрывает арендатора Okta personaforgov-admin.okta.com

Правительственная ИИ платформа

4 февраля 2026 года в журналах прозрачности сертификатов (Certificate Transparency logs) появился новый поддомен:

onyx.withpersona-gov.com

Он развёрнут на собственном выделенном инстансе Google Cloud, имеет отдельный Kubernetes namespace, а его название совпадает с названием инструмента наблюдения ICE стоимостью $4,2 млн — Fivecast ONYX.

CT LOG TIMELINE:    2026-02-04  first cert issued for onyx.withpersona-gov.com    2026-02-05  second cert issued (rotation or reissue)    INFRASTRUCTURE:    onyx.withpersona-gov.com            34.10.180.174  (GCP)    app.onyx.withpersona-gov.com        34.10.180.174  (GCP)    admin.onyx.withpersona-gov.com      34.10.180.174  (GCP)    inquiry.onyx.withpersona-gov.com    34.10.180.174  (GCP)      cert: CN=onyx.withpersona-gov.com          SANs: onyx.withpersona-gov.com, *.onyx.withpersona-gov.com          issuer: Google Trust Services, WR3      server: istio-envoy (Istio service mesh)    k8s namespace: persona-onyx    k8s pods: web-5785f4b8f-jgm7m, web-5785f4b8f-qjg8f    k8s service: web.persona-onyx.svc.cluster.local:3000    git commit: 8d454ac0dc48b2f4ae7addefa22e746079c30089    admin login: Okta-only SSO (internal staff)    server-timing: Flipper feature flags leaked    CSP includes: api.openai.com    dashboard loads: faceapi.js (facial recognition)    security.txt: Bugcrowd program, EXPIRED 2025-11-01

Fivecast ONYX - это ИИ-платформа анализа и мониторинга, приобретённая ICE за 4,2 миллиона долларов; CBP дополните��ьно закупала лицензии. Согласно публичной документации Fivecast и отчётам EFF, платформа предназначена для сбора мультимедийных данных из социальных сетей и даркнета, поиска по более чем 300 платформам, присвоения риск-оценок, анализа свыше 28 миллиардов точек данных... отслеживания изменений в настроениях и эмоциональных сигналах

Вопрос здесь возникает сам собой: это просто совпадение названий или речь идёт о более глубокой интеграции? Формально корреляция наблюдается на уровне инфраструктуры и нейминга. Однако сам исходный код напрямую не подтверждает связь с Fivecast.

Тем не менее, даже без доказательства прямого соединения, функциональность, раскрытая в исходниках, сама по себе заслуживает внимания.

Исходный код данного развёртывания был получен полностью из общедоступных source map-файлов.

На странице входа в систему правительственной панели ONYX (app.onyx.withpersona-gov.com/dashboard/login), /vite-dev/Путь активов обслуживает карты источника JavaScript без аутентификации. не только минимизированные пакеты, но и полный, оригинальный исходный код TypeScript... И да, в них ВСЕ исходники, так что по законам это обычный осинт

Биометрические базы данных

исходные файлы:

  • dashboard/components-lib/AsyncSelfie/AsyncSelfie.tsx

  • dashboard/views/DashboardListsView/AddListModal.tsx

  • dashboard/lib/constants/list.ts

платформа поддерживает 13 типов списков отслеживания. list.ts:

const LIST_TYPE_TO_LIST_ITEM_TYPE = {  ListGovernmentIdNumber  // government ID numbers  ListIpAddress           // IP addresses  ListName                // names (with fuzzy matching option)  ListPhoneNumber         // phone numbers  ListEmailAddress        // email addresses  ListGeolocation         // geolocations  ListBrowserFingerprint  // browser fingerprints  ListDeviceFingerprint   // device fingerprints  ListFace                // FACES  ListCountry             // countries  ListField               // inquiry fields  ListString              // arbitrary strings  ListSelfieBackground    // selfie backgrounds
}
const ENHANCED_LIST_TYPES = [ListFace, ListSelfieBackground]

Face и SelfieBackground обозначены типами списков «Усовершенствованные». списки лиц требуют компонента BiometricBadge. Диалог создания списка лица от AddListModal.tsx:

const MAX_FACE_LIST_ITEMS_EXPIRE_AFTER_YEARS = 3
const MAX_FACE_LIST_ITEMS_EXPIRE_AFTER_DAYS = 1095
// subtitle text in the UI:
"Item state will change to Inactive and biometric data will be erased (max 3 years)"
"Item data will be erased"

от AsyncSelfie.tsx, операторы приборной панели могут добавлять селфи в списки лиц непосредственно из результатов проверки:

// "Add to Face List" dropdown
// creates ListItemFace via API with face-photo-upload
// duplicate detection: 409 "blob already exists as an active item in list"
// source tracking: sourceToken links face to original inquiry
// feature-flagged: featureListsFacesEnabled

Операторы создают базы данных лиц, добавляются селфи из верификаций, входящие проверки сопоставляются с ними, и это якобы 3-летнее максимальное удержание с автоматическим удалением.

PEP распознавание лиц... со сравнением селфи с базой политиков

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

ИИ посмотрело на ваше лицо и спросило: «Этот человек похож на заместителя министра финансов молдовы?» и он ответил. и он записал ответ вниз.

исходные файлы (из исходной карты извлечения):

  • PoliticallyExposedPersonV2EntityMatchDetails.tsx(932 линии)

  • PoliticallyExposedPersonPhotoComparison.tsx(372 линии)

Вид матча PEP V2 показывает полное досье для каждого матча:

  • Профиль : полное имя с псевдонимами, подсветка матча (точный против нечеткого), даты рождения, пол, национальность с иконками флага

  • Сходство портрета: бок о бок сравнение ваших селфи и эталонных фотографий. уровень сходства: Низкий | Средний. справочные изображения, полученные из Wikidata. миниатюрная карусель для нескольких фотографий. подсказка: «Портретное сходство показывает, похож ли портрет конечного пользователя на общедоступные фотографии».

  • Позиции: политические позиции с продолжительностью и классом PEP, сортируемые

  • Кандидатуры: предвыборные кандидатуры с периодом выборов

  • Отношения: связи с именем, типом отношения, классом PEP - могут вызвать соответствующие отчеты PEP

  • IgnoreHitsModal за ложные срабатывания

интерфейс сравнения фотографий:

interface PoliticallyExposedPersonImage {  'external-url'?: string      // reference photo from database  'internal-url'?: string      // YOUR photo  'similarity-level'?: 'low' | 'medium' | 'high'
}

Есть три уровня риска: низкий, средний и высокий.
Ваше лицо сравнивается с каждой политически значимой персоной (PEP) в их базе данных. Речь идёт не о совпадении имени — это именно сопоставление лица с лицом, с вычислением коэффициента сходства для каждого сравнения.

И, конечно… в каком-то смысле это звучит логично. Ведь крупные политические деятели редко используют поддельные личности, верно?

При этом у версии системы V2 есть известная проблема. В исходном коде пр��мо указано:
TODO: "Clean up this type. There is no parity between 2.0 and 1.0"

То есть между версиями 1.0 и 2.0 нет функционального паритета. Тем не менее, на платформе одновременно работают две параллельные системы PEP-скрининга с известными несовместимостями - в среде, которая, по сути, определяет, будет ли человек эскалирован в отчётность FinCEN.

Криптонадзор за адресом

исходные файлы:

  • dashboard/components/ReportResult/ChainalysisAddressScreening.tsx(217 линий)

risk assessment:  risk level: severe | high | medium | low  risk reason: text explanation  (severe/high = red alert icon)
cluster analysis:  cluster name (which entity controls the address)  cluster category
exposures:  per-category dollar amounts  displayed as "$" + rounded value
address identifications:  category and description per identification  expandable accordion for each

Мы также обнаружили нативную систему мониторинга криптовалютных адресов. Операторы могут добавлять адреса в список наблюдения, задавать параметр interval-seconds, после чего платформа автоматически проверяет их по крону

Кошелёк попадает в список один раз, а затем отслеживается на неопределённый срок в привязке к кластерному графу блокчейн-аналитики. Каждый раз, когда профиль риска кластера «выше по цепочке» изменяется (например, если миксер получает флаг или биржа попадает под санкции), все адреса ниже по потоку автоматически переоцениваются.

Эта рекурсия происходит незаметно, а пользователь никогда ничего не узнаёт. В шаблоне отчёта присутствует параметр recurring-enabled: true деталь, которую никто за пределами этой кодовой базы вообще не должен был видеть...

269?! проверок

исходный файл: lib/verificationCheck.ts

В пункте CheckName enum содержится 269 индивидуальных проверок по 14 типам проверок. некоторые основные моменты:

Проверка селфи (23):

SelfieIdComparison              - сравнение лица с фотографией в документе
SelfieAccountComparison         - сравнение лица с уже существующим аккаунтом
SelfieLivenessDetection         - проверка на подделку (определение «живости»)
SelfiePublicFigureDetection     - проверка: похожи ли вы на известную персону
SelfieSuspiciousEntityDetection - вы выглядите «подозрительно» (буквально)
SelfieExperimentalModelDetection - ЭКСПЕРИМЕНТАЛЬНЫЕ ML-модели, анализирующие ваше лицо
SelfieRepeatDetection           - обнаружение повторно использованного селфи
SelfieSimilarBackgroundDetection - совпадение фона с другим пользователем
SelfieAgeComparison             - оценка возраста по лицу
SelfieAgeInconsistencyDetection - возраст не совпадает с данными в документе
SelfieFaceCoveringDetection     - наличие маски/закрытого лица (помечается)
SelfieGlassesDetection          - наличие очков (фиксируется)
SelfiePoseRepeatDetection       - та же поза, что и в прошлый раз?

SelfieSuspiciousEntityDetectionЧто делает лицо «подозрительным»? Код не говорит, что пользователям не говорят.

Правительственные проверки идентификаторов (43): включая поиск базы данных AAMVA (база данных водительских прав США), обнаружение физических взломов, обнаружение MRZ, электронное обнаружение реплики, считывание чипа NFC с валидацией PKI, обнаружение общественных фигур, обнаружение реальных идентификаторов.

Проверки базы данных (27): включая обнаружение умерших (машифин смерти SSA), сравнение номеров социального страхования, проверку оператора связи телефона, сравнение лиц симулятора SERPRO (Бразилия), проверку баз данных Aadhaar (India), проверку данных TIN.

Проверкам документов (29): включая обнаружение оригинальных изображений JPEG, обнаружение редактора PDF, обнаружение аннотаций PDF, обнаружение синтетического контента, обнаружение цифровой модификации текста.

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

269 чеков. за желание использовать чат-бота в 2026 году.

Архитектура


┌─────────────────────────────────────────────────────────┐
│                    пользователь                         │
│  (регистрируется в OpenAI, хочет использовать GPT-5)    │
└─────────────────┬───────────────────────────────────────┘                  │                  │ «подтвердите свою личность»                  │
┌─────────────────▼───────────────────────────────────────┐
│  inquiry.withpersona.com                                │
│  Процесс верификации Persona                            │
│  - сканирование государственного ID (Microblink)        │
│  - селфи + ПРОВЕРКА LIVENESS (что это живой человек)    │
│  - видеозапись                                          │
│  - СОПОСТАВЛЕНИЕ ЛИЦ С ПУБЛИЧНЫМИ ПЕРСОНАМИ             │
│  - цифровой отпечаток устройства (FingerprintJS)        │
│  - сигналы браузера и сети                              │
└─────────────────┬───────────────────────────────────────┘                  │                  │ полный досье личности                  │ (фото ID, селфи, видео, ПДн, скоринги)                  │
┌───────���─────────▼───────────────────────────────────────┐
│  openai-watchlistdb.withpersona.com                     │
│  34.49.93.177 (выделенный GCP-инстанс)                  │
│  Envoy proxy + внутренняя service mesh                  │
│                                                         │
│  проверка по спискам:                                   │
│  - список OFAC SDN (санкции США)                        │
│  - 200+ глобальных санкционных/предупредительных списков│
│  - PEP классы 1–4 (со скорингом схожести лица)          │
│  - негативные упоминания в СМИ (от терроризма до        │
│    киберпреступности)                                   │
│  - крипто-watchlists (Chainalysis, TRM Labs)            │
│  - кастомные списки скрининга FinCEN                    │
│  - списки «fitness & probity»                           │
└─────────────────┬───────────────────────────────────────┘                  │                  │ результат: одобрено / помечено / отказ                  │
┌─────────────────▼───────────────────────────────────────┐
│  OpenAI                                                 │
│  - предоставляет или отказывает в доступе               │
│  - объяснение не предоставляется                        │
│  - механизм обжалования отсутствует                     │
│  - данные хранятся (1 год? 3 года? бессрочно?)          │
└─────────────────────────────────────────────────────────┘
тем временем, со стороны государственных структур:
┌─────────────────────────────────────────────────────────┐
│  withpersona-gov.com (авторизация FedRAMP)              │
│  34.27.15.233 (выделенный GCP, us-central1)             │
│                                                         │
│  ТА ЖЕ КОДОВАЯ БАЗА. та же компания. та же модель данных│
│                                                         │
│  подтверждено в исходном коде:                          │
│  - подача SAR напрямую в FinCEN                         │
│  - подача STR напрямую в FINTRAC (Канада)               │
│  - STR с тегами кодовых названий программ разведки      │
│  - биометрические базы лиц (хранение 3 года)            │
│  - 13 типов отслеживающих списков                       │
│  - PEP-распознавание лиц со скорингом схожести          │
│  - 269 типов проверок верификации                       │
│  - крипто-скрининг через Chainalysis                    │
│  - загрузка кастомных списков FinCEN                    │
│  - AI-копилот для операторов на базе OpenAI             │
└─────────────────────────────────────────────────────────┘

Та же компания, которая делает вашу фотографию паспорта, когда вы подписываетесь на ChatGPT, также управляет правительственной платформой, которая подает отчеты о подозрительной активности с FinCEN и помечает их кодовыми именами программ разведки. та же кодовая база. подтверждена, сопоставляя хэши git commit через развертывания.

Подписывайтесь на наш телеграм. Мы пишем про блокировки и публикуем расследования. Не спамим постами