10 шокирующих фактов о том, как TryHackMe использует ваши данные для ИИ‑пентеста и почему вам стоит задуматься об удалении аккаунта
22 марта 2026 г.Вступление
В последние годы обучение кибербезопасности всё чаще переходит в онлайн‑формат. Платформы вроде TryHackMe обещают безопасную «песочницу», где любой желающий может оттачивать навыки взлома, проходя интерактивные задания. Но за яркими лабиринтами виртуальных машин может скрываться менее приятная реальность: сбор и использование пользовательских данных без явного согласия. Недавний скандал, разгоревшийся в Reddit, заставил многих задуматься, стоит ли продолжать пользоваться сервисом, а может, лучше сразу удалить аккаунт.
Ситуация обострилась после того, как известный специалист по кибербезопасности Тайлер Рэмсби (Tyler Ramsbey) опубликовал в LinkedIn и на YouTube материал, в котором он указывает, что TryHackMe, отрицавшая подобные практики месяцами, всё же запустила компанию Noscope, предлагающую услуги ИИ‑пентеста, используя данные своих пользователей. Это открытие вызвало бурную реакцию сообщества, а в комментариях появились самые разные мнения – от технических до политических.
В этом материале я, как технический блогер, разберу всё по полочкам: от самого поста в Reddit до юридических и этических аспектов, от мнений экспертов до практических рекомендаций, как защитить свои данные. В конце – небольшой Python‑скрипт, показывающий, как можно автоматически проверять, какие данные о вас находятся в открытом доступе.
Тени данных Тихо шепчут серверы — Сон без согласия
Пересказ Reddit‑поста своими словами
Автор оригинального Reddit‑сообщения (пользователь anonymous) написал, что наткнулся на пост Тайлерa Рэмсби в LinkedIn и на его видеоролик на YouTube. По словам автора, TryHackMe долго отрицала, что использует пользовательские данные для обучения искусственного интеллекта, но теперь компания открыто запустила новый сервис под названием Noscope, который предлагает ИИ‑пентестинг. Автор подчёркивает, что лишь месяц‑два назад владелец TryHackMe (по имени Бен) категорически отрицает такие практики, а теперь всё выглядит подозрительно.
В посте задаётся вопрос: «Стоит ли полностью отказаться от TryHackMe и удалить аккаунт?» – то есть, насколько серьёзна угроза конфиденциальности и какие последствия могут быть у дальнейшего использования платформы.
Суть проблемы, хакерский подход и основные тенденции
Ключевая проблема – непрозрачность сбора и использования данных. Пользователь, регистрируясь на TryHackMe, соглашается с Terms of Service, но в большинстве подобных соглашений пункты о «анонимизации данных для исследований» написаны мелким шрифтом. Хакерский подход к такой проблеме подразумевает:
- Анализ сетевого трафика и запросов к API платформы;
- Обратный инжиниринг клиентского кода (JavaScript, мобильные приложения) для выявления скрытых эндпоинтов;
- Проверку публичных репозиториев и блогов разработчиков на предмет упоминаний о сборе данных.
Текущие тенденции в индустрии кибербезопасности включают:
- Рост использования ИИ для автоматизации пентеста (что и делает Noscope);
- Ужесточение регуляций по защите персональных данных (GDPR, закон о персональных данных РФ);
- Повышенный интерес к «этичному» использованию данных, когда пользователи могут контролировать, какие их действия становятся частью обучающих наборов.
Детальный разбор проблемы с разных сторон
Техническая сторона. Для обучения ИИ‑модели нужны «богатые» данные: скрипты, конфигурации, результаты эксплойтов, логи. TryHackMe собирает их автоматически, когда пользователь решает задание. Если такие данные сохраняются в открытом виде, они могут стать «золотой жилой» для злоумышленников, желающих изучить новые уязвимости.
Юридическая сторона. В России закон «О персональных данных» требует явного согласия на обработку данных, а также информирования о целях их использования. Если TryHackMe использует данные без согласия, это может рассматриваться как нарушение. В ЕС аналогично – GDPR требует «право на забвение», которое в данном случае может быть нарушено, если пользователь не может полностью удалить свои записи.
Этическая сторона. Сообщество кибербезопасности традиционно ценит открытость и добровольность. Когда платформа «тайно» использует пользовательские данные, это подрывает доверие. Кроме того, некоторые из «write‑ups» (отчётов о решённых заданиях) могут содержать уязвимости, которые в открытом виде могут стать угрозой для реальных систем.
Бизнес‑сторона. Запуск Noscope – попытка монетизировать уже собранные данные, предлагая платные услуги ИИ‑пентеста. Это логичный шаг с точки зрения роста доходов, но он ставит под вопрос репутацию бренда, особенно если пользователи считают, что их данные использовались без согласия.
Практические примеры и кейсы
Рассмотрим два типовых сценария, которые могут произойти в результате такой практики.
Кейс 1. Утечка скриптов эксплойтов
Пользователь решает задание, в котором использует скрипт для эксплуатации уязвимости CVE‑2022‑22965 (Spring4Shell). Скрипт сохраняется в базе данных TryHackMe. Если эти данные становятся публичными, любой желающий может скопировать скрипт и применить к уязвимым серверам, что повышает риск массовых атак.
Кейс 2. Обучение ИИ на реальных логах
Noscope собирает логи попыток взлома, обучая модель определять «подозрительные» паттерны. Если модель обучена на данных без анонимизации, в ней могут сохраняться IP‑адреса, имена пользователей и даже пароли, которые могут быть использованы в дальнейшем для целевых атак.
Экспертные мнения из комментариев
Some of the tryhackme write ups are security issues in themselves. Let's pass untrusted data into eval
— coomzee. Пользователь указывает, что сами отчёты могут стать уязвимостями, если их использовать без проверки.
it’s over man. capitalism and the oligarchs consumed us all. thought the dem…
— darth_skipicious. Комментарий более политизированный, но отражает общее чувство безнадёжности и недоверия к крупным игрокам, которые «продают» наши данные.
I literally quoted you directly. Every claim I made in the video is backed up directly from YOUR public communication.
— Tyler_Ramsbey. Подтверждает, что его обвинения основаны на публичных заявлениях представителей TryHackMe.
Noscope sponsored by Mountain Dew Code Red
— jay-dot-dot-dot. Ироничный намёк на то, что даже рекламные спонсоры могут быть замешаны в подобных проектах.
Эти комментарии показывают, что сообщество воспринимает проблему как сочетание технической уязвимости, этического провала и политической конъюнктуры.
Возможные решения и рекомендации
Для пользователей и самой платформы существуют несколько путей решения.
Для пользователей
- Проверить политику конфиденциальности. Внимательно прочитать разделы о сборе и использовании данных.
- Экспортировать и удалить свои данные. Если платформа предоставляет такую возможность, воспользоваться ею.
- Перейти на альтернативные сервисы. Существуют открытые платформы (Hack The Box, OverTheWire), где политика сбора данных более прозрачна.
- Использовать VPN и анонимайзеры. Чтобы скрыть реальный IP и затруднить привязку действий к конкретному пользователю.
Для TryHackMe и Noscope
- Внедрить явное согласие (opt‑in). Пользователь должен явно согласиться на использование своих данных для обучения ИИ.
- Анонимизировать данные. Удалять IP‑адреса, имена пользователей и любые персональные идентификаторы перед передачей в модель.
- Публиковать отчёты о сборе данных. Регулярные «прозрачные» отчёты помогут восстановить доверие.
- Сертифицировать ИИ‑модели. Пройти независимый аудит на предмет этичности и безопасности.
Заключение с прогнозом развития
Скандал вокруг TryHackMe – лишь верхушка айсберга. По мере того как ИИ будет всё глубже интегрироваться в процессы кибербезопасности, вопросы о том, чьи данные и как используются, станут центральными. Ожидается, что регуляторы усилят контроль за «обучающими» данными, а крупные платформы будут вынуждены открыто публиковать свои практики.
Если TryHackMe действительно продолжит использовать данные без согласия, вероятно, часть сообщества перейдёт к более «чистым» сервисам, а репутация компании пострадает. С другой стороны, если компания быстро адаптируется, внедрит прозрачные механизмы согласия и анонимизации, она может превратить текущий кризис в конкурентное преимущество.
Для специалистов по кибербезопасности важно помнить, что каждый клик в онлайн‑песочнице оставляет след. Управление этими следами – новая часть профессионального арсенала, наряду с традиционными навыками эксплуатации.
Практический пример на Python
Ниже представлен скрипт, который автоматически собирает публичные данные о вашем профиле на TryHackMe (если они доступны через открытый API) и сохраняет их в зашифрованном виде. Это позволяет вам понять, какие сведения уже находятся в открытом доступе, и при необходимости запросить их удаление.
import requests
import json
import hashlib
import base64
from cryptography.fernet import Fernet
# Генерируем ключ шифрования (можно сохранить в файл для последующего использования)
def generate_key() -> bytes:
"""Создаёт и возвращает ключ для симметричного шифрования."""
return Fernet.generate_key()
# Инициализируем объект шифрования
def get_cipher(key: bytes) -> Fernet:
"""Возвращает объект Fernet для шифрования/дешифрования."""
return Fernet(key)
# Хешируем строку (например, email) для сравнения без раскрытия оригинала
def hash_string(value: str) -> str:
"""Возвращает SHA‑256 хеш строки."""
return hashlib.sha256(value.encode('utf-8')).hexdigest()
# Запрашиваем публичный профиль пользователя по username
def fetch_public_profile(username: str) -> dict:
"""Получает публичные данные профиля через открытый API TryHackMe."""
url = f"https://tryhackme.com/api/v1/users/{username}"
response = requests.get(url, timeout=10)
if response.status_code == 200:
return response.json()
else:
raise ValueError(f"Не удалось получить данные: HTTP {response.status_code}")
# Шифруем полученные данные и сохраняем в файл
def encrypt_and_save(data: dict, cipher: Fernet, filepath: str) -> None:
"""Шифрует словарь данных и записывает в файл."""
json_data = json.dumps(data, ensure_ascii=False).encode('utf-8')
encrypted = cipher.encrypt(json_data)
with open(filepath, 'wb') as f:
f.write(encrypted)
# Дешифруем данные из файла (для проверки)
def decrypt_file(filepath: str, cipher: Fernet) -> dict:
"""Читает зашифрованный файл и возвращает оригинальный словарь."""
with open(filepath, 'rb') as f:
encrypted = f.read()
decrypted = cipher.decrypt(encrypted)
return json.loads(decrypted.decode('utf-8'))
# ------------------- Основная логика -------------------
if __name__ == "__main__":
# Указываем ваш ник на TryHackMe
user_name = "example_user"
# Получаем публичные данные
try:
profile = fetch_public_profile(user_name)
except Exception as e:
print(f"Ошибка получения профиля: {e}")
exit(1)
# Генерируем ключ и объект шифрования
key = generate_key()
cipher = get_cipher(key)
# Хешируем email (если он присутствует) для безопасного сравнения
if "email" in profile:
profile["email_hash"] = hash_string(profile["email"])
del profile["email"] # Удаляем оригинальный email
# Сохраняем зашифрованные данные
save_path = f"{user_name}_profile.enc"
encrypt_and_save(profile, cipher, save_path)
print(f"Зашифрованный профиль сохранён в {save_path}")
# Пример расшифровки (можно закомментировать в реальном использовании)
recovered = decrypt_file(save_path, cipher)
print("Данные после расшифровки:", recovered)
Скрипт демонстрирует, как собрать публичные сведения о своём аккаунте, удалить чувствительные поля (например, email), зашифровать оставшиеся данные и сохранить их локально. Такой подход позволяет пользователю иметь «резервную копию» своих данных и контролировать, какие сведения находятся в открытом доступе.
Оригинал