Безопасность и приватность by design: как мы вас защищаем
Доверие зарабатывают, а не декларируют. Этот пост — прозрачный разбор архитектуры безопасности и принципов приватности, лежащих в основе AINudeGirls. Мы построили платформу с одним ключевым убеждением: ваша личность принадлежит вам, и ваши данные должны оставаться вашими.
Никаких расплывчатых обещаний. Никакого маркетингового языка. Только то, что мы действительно построили, и почему.
---
Наша философия: приватность прежде всего, всегда
Большинство платформ требуют ваш email, имя, номер телефона и дату рождения ещё до того, как вы сможете просто осмотреться. Мы пошли противоположным путём.
Для создания аккаунта email не нужен. Наша система входа основана на кодах: вы получаете 16-символьный код входа (в формате XXXX-XXXX-XXXX-XXXX), который и служит вашим учётным данным. Ни адреса электронной почты, ни имени пользователя, ни персональной информации.
Вот что мы собираем — и что нет:
- Email не требуется для регистрации и использования платформы
- Персональные данные не собираются сверх строго необходимого для работы сервиса
- Никаких трекинговых пикселей, аналитических профилей и поведенческого фингерпринтинга
- Данные не продаются третьим сторонам — никогда
- Соответствие GDPR заложено в архитектуру, а не прикручено задним числом
Мы не собираем данные, потому что они нам не нужны. Чем меньше данных мы храним, тем меньше можно скомпрометировать.
---
Безопасность by design: встроена в каждый слой
Безопасность — не функция, добавленная в конце. Она вплетена в каждую конечную точку API, каждую операцию с базой данных и каждый поток аутентификации.
Архитектура аутентификации
- Хеширование паролей Argon2id — тот же алгоритм, который используют государственные структуры и финансовые организации. Победитель конкурса Password Hashing Competition, устойчивый к атакам на GPU, атакам по сторонним каналам и компромиссам «время-память».
- Коды входа хешируются перед сохранением — даже администраторы нашей базы данных не могут увидеть ваш код входа. Если бы наша база данных когда-либо была скомпрометирована, коды криптографически бесполезны без оригинала.
- JWT-токены с коротким сроком жизни — access-токены истекают через 5 минут. Refresh-токены ротируются при каждом использовании, поэтому у украденного токена крайне короткое окно применимости.
- Токены восстановления хешируются SHA-256 перед записью в базу данных. Открытый текст показывается вам один раз и никогда не сохраняется.
Защита на уровне запросов
- CSRF-защита каждого запроса, меняющего состояние, по схеме double-submit cookie. Каждый запрос POST, PUT, PATCH и DELETE проверяется.
- Ограничение частоты запросов на всех конечных точках — настраиваемые лимиты по маршрутам предотвращают перебор паролей, credential stuffing и злоупотребление API. Ограничитель опирается на постоянное хранилище, поэтому лимиты переживают перезапуски сервера.
- Каждая конечная точка API требует аутентификации — незащищённых конечных точек с данными нет. Публичный контент (например, этот блог) — единственное исключение, и он не содержит пользовательских данных.
---
Безопасность платежей: ваши деньги, ваша приватность
Мы намеренно выбрали способы оплаты, защищающие вашу анонимность.
Криптовалютные платежи
- Bitcoin и Ethereum принимаются для максимальной финансовой приватности
- Транзакции обрабатываются через NOWPayments с верификацией вебхуков
- Платёжные вебхуки проверяются HMAC-подписями — мы криптографически удостоверяемся, что каждое платёжное уведомление действительно пришло от платёжного процессора, а не от злоумышленника
Paysafecard
- Банковские реквизиты не нужны — купите ваучер в ближайшем магазине и введите код
- Никакой связи между вашим банковским счётом и вашей активностью на платформе
Чего мы не делаем
- Данные банковских карт не хранятся на наших серверах — мы не обрабатываем и не храним номера карт
- Кредитные коды и коды погашения хешируются перед сохранением по тому же принципу, что и коды входа
- Платёжные записи содержат только идентификаторы транзакций — достаточно для обработки возвратов, и не более того
---
Безопасность контента
Весь генерируемый на платформе контент защищён многоуровневым контролем доступа.
- Нет публичной раздачи файлов — каждый запрос файла проходит проверки аутентификации и авторизации. Открытого каталога контента не существует.
- Контроль доступа к каждому ресурсу — сгенерированные изображения и видео привязаны к аккаунтам пользователей. Вы можете получить доступ только к контенту, который создали или купили.
- NSFW-контент закрыт проверкой возраста и активной аутентификацией
- Истечение срока и автоматическая очистка контента — временные файлы удаляются по расписанию, сокращая поверхность атаки
---
Безопасность инфраструктуры
Платформа работает за несколькими уровнями инфраструктурной защиты.
Транспортная безопасность
- HTTPS принудительно везде с заголовками HSTS (HTTP Strict Transport Security) preload. Вашему браузеру предписано никогда не подключаться по незашифрованному HTTP.
- Только TLS 1.2+ — устаревшие уязвимые версии протокола отклоняются.
HTTP-заголовки безопасности
Каждый ответ нашего сервера включает усиленный набор заголовков безопасности:
- Content-Security-Policy (CSP) — предотвращает XSS-атаки, разрешая только доверенные источники скриптов и ресурсов
- X-Frame-Options: DENY — предотвращает кликджекинг, блокируя встраивание в iframe
- X-Content-Type-Options: nosniff — предотвращает атаки с подменой MIME-типа
- Referrer-Policy: strict-origin-when-cross-origin — ограничивает утечку данных referrer сторонним сайтам
- Permissions-Policy — отключает ненужные API браузера (камера, микрофон, геолокация), которые платформа не использует
Усиление бэкенда
- Строгая конфигурация CORS — кросс-доменные запросы разрешены только нашим собственным доменам. Никаких wildcard-источников.
- Ограничение частоты запросов на базе Redis, переживающее перезапуски сервера и горизонтальное масштабирование
- Все секреты загружаются из переменных окружения с проверкой при старте — сервер отказывается запускаться, если критические секреты (JWT-ключи, ключи платёжных API, учётные данные базы) отсутствуют. Ни один секрет никогда не был захардкожен в исходном коде.
- Валидация ввода каждого пользовательского поля — все данные, попадающие в систему, проверяются по строгим схемам до обработки. Некорректный ввод отклоняется на границе, а не глубоко в бизнес-логике.
- Сообщения об ошибках никогда не раскрывают внутренности — все ответы об ошибках для пользователей используют обобщённые формулировки. Трассировки стека, детали базы данных и внутреннее состояние логируются только на сервере.
---
Прозрачность: что мы собираем и зачем
Вот честная опись того, какие данные существуют на наших серверах и зачем.
Что мы храним
Данные Назначение Ваш контроль
------ --------- --------------
Хешированный код входа Аутентификация Удаляется по запросу
Email для восстановления (опционально, зашифрован) Только восстановление аккаунта Вы сами решаете, добавлять ли его
Баланс кредитов Работа сервиса Виден в вашем аккаунте
История генераций Для вашего удобства — просмотр прошлых работ Удаляется по запросу
Идентификаторы транзакций Обработка возвратов Хранятся согласно требованиям закона
Что мы НЕ собираем
- IP-адреса для трекинга — мы не строим профили местоположения
- Историю браузинга — мы не отслеживаем, какие страницы вы посещаете и сколько на них проводите
- Личные предпочтения на продажу — мы не строим рекламные профили
- Отпечатки устройств — мы не отслеживаем конфигурацию вашего оборудования или браузера
Ваше право на удаление
Вы можете в любой момент запросить полное удаление аккаунта и всех связанных данных. При запросе на удаление:
1. Запись вашего аккаунта удаляется безвозвратно
2. История генераций стирается
3. Платёжные ссылки анонимизируются
4. Связанные файлы контента удаляются из хранилища
Мы не усложняем процесс. Свяжитесь с нами — и это будет сделано.
---
Непрерывная безопасность: она не останавливается
Безопасность — это не веха, а непрерывный процесс. Вот что мы делаем на постоянной основе:
- Регулярные аудиты безопасности — как автоматизированное сканирование, так и ручной обзор кода в чувствительных к безопасности местах (аутентификация, платежи, доступ к файлам)
- Сканирование зависимостей — автоматический мониторинг известных уязвимостей в каждом используемом пакете с быстрыми циклами исправлений
- Валидация ввода каждого пользовательского поля — проверка по схемам на каждой границе API
- Аудит сообщений об ошибках, чтобы внутренние детали (запросы к базе, трассировки стека, пути файлов) не утекали пользователям
- Все административные конечные точки защищены отдельно повышенными требованиями авторизации — админ-функции требуют отдельного уровня прав сверх обычной аутентификации
---
Политика открытых дверей
Мы серьёзно относимся к сообщениям об уязвимостях.
Нашли проблему безопасности? Напишите нам на [email protected].
Вот как мы обрабатываем сообщения:
- Каждое сообщение подтверждается в течение 24 часов
- Критические уязвимости приоритизируются и исправляются в течение 24 часов после подтверждения
- Мы никогда не будем преследовать по закону добросовестных исследователей безопасности
- Мы указываем авторов сообщений (по желанию) после устранения проблемы
Безопасность — это общая ответственность. Если что-то заметили — скажите нам. Мы предпочтём услышать об этом от вас, чем узнать тяжёлым путём.
---
Итог
Мы построили AINudeGirls на простом принципе: собирать меньше, защищать больше. Каждое архитектурное решение — от входа по коду до крипто-платежей и хешированных учётных данных — принималось с вашей приватностью как главным ограничением, а не задним числом.
Мы не идеальны, и безопасность никогда не бывает «готовой». Но мы прозрачны в том, что делаем, честны в своих ограничениях и привержены постоянному совершенствованию.
Ваше доверие — не то, что мы принимаем как должное. Это то, что мы зарабатываем каждый день решениями, которые принимаем в нашем коде.