Что «Отправленные», резервные копии и администратор почты всё ещё хранят после письма с одноразовым паролем

Передать пароль от базы, код восстановления или фразу VPN чаще всего пытаются так: вставить открытый текст в тело и нажать «Отправить». Это не уведомление. Это как минимум две читаемые копии — ваши «Отправленные» и «Входящие» у получателя. STARTTLS закрывает один прыжок. После удаления корзина Gmail может держать письмо около 30 дней, Recoverable Items в Exchange — ещё 14 по умолчанию. Корпоративный архив и поиск администратора — отдельные копии. Ниже остатки ограничены тем, что написано в протоколе и в справке вендоров, чтобы это можно было сверить на странице.

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

«Отправить» — не короткая записка. Это передача открытого текста в почтовое хранилище

Рабочую почту легко принять за локальный чат: слова ещё на экране, значит коллега «просто смотрит». После отправки абзац уже покинул эту вкладку. Провайдер обязан доставить, проиндексировать и сохранить сообщение. Пароли баз, ключи облака, персональные токены GitHub, общие фразы Wi-Fi и коды восстановления аккаунта попадают в ту же корзину, которую шпаргалка OWASP по журналам обычно не пускает в общие записи открытым текстом. «Отправленные», «Входящие», черновики и IMAP-копия на телефоне часто становятся неформальным сейфом: искать удобно, права слабее, чем у менеджера паролей, срок хранения длиннее.

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

Дальше опираемся на Gmail, Exchange Online, Google Vault и Microsoft Purview: сроки хранения и область поиска администратора там написаны в открытой справке. Свой Postfix, журналирование Microsoft 365, Яндекс 360 и другие хостинги почты — всё равно store-and-forward. Сменив продукт, снова откройте страницы удаления и архива именно этого вендора. Окно корзины в 30 дней и 14 дней Recoverable Items на другой сервис не переносите.

Замок и STARTTLS закрывают один прыжок, а не весь путь

Замок в адресной строке или в клиенте часто читают как «зашифровано до самого получателя». Транспортное шифрование SMTP так не работает. RFC 3207, раздел 6 говорит прямо: SMTP — не сквозной механизм. Решение одной пары «клиент SMTP — сервер» включить TLS не защищает сообщение от почтового агента отправителя до получателя. Письмо может пройти через два и больше SMTP-серверов. TLS на одной паре не делает весь путь доставки закрытым.

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

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

«Отправленные» и «Входящие»: две читаемые копии в момент отправки пароля

После «Отправить» сначала посчитайте копии, потом говорите про удаление. Первая — ваша: «Отправленные» в Gmail, «Отправленные» в Outlook, Sent на большинстве IMAP-ящиков, в том числе в Яндекс Почте и Почте Mail. Это не буфер отмены в браузере. Это сохранённый объект. Через два месяца вы сами найдёте эту строку поиском. Администратор, у которого есть поиск по ящику, — тоже. Вторая — у получателя: «Входящие» плюс ярлык «Вся почта» или архив, куда письмо убрали. Обе копии — тело, а не «только тема».

Копия и скрытая копия добавляют ещё. Копия проектной рассылке оставляет экземпляр в каждом «Входящем». Скрытая копия прячет адреса от остальных получателей. Она не уменьшает хранение. Автопересылка, журналирование и шлюзы «ещё и в Telegram / Mattermost / Slack» кладут ещё одну копию уже вне почтового продукта. У этих копий нет общей кнопки «Удалить». Очистка ваших «Отправленных» не трогает чужие «Входящие» и не трогает запись, которую шлюз уже записал.

Поисковая строка — доказательство. Gmail, Outlook, Яндекс Почта и большинство веб-почт индексируют тело. Вставьте канареечный пароль в поиск. Попадание значит: любой, у кого есть этот ящик, читает его. Это тот же класс остатка, что хеш мгновенной загрузки в облаке или история буфера обмена: продукт хранит открытый текст, потому что поиск удобен, а не потому что хочет помочь вам забыть секрет.

Где Что обычно остаётся Кто ещё может прочитать
«Отправленные» отправителя Полное тело и вложения Отправитель; любой с доступом к этому ящику
«Входящие» / «Вся почта» получателя То же полное тело Получатель; его синхронизированные устройства
Промежуточные SMTP-серверы Читаемое сообщение во время доставки Операторы и фильтры этого прыжка
Корзина / Recoverable Items / «Удалённые» Тело, которое ещё можно вернуть Пользователь; интерфейс восстановления до конца срока
Корпоративный архив / Vault / eDiscovery Искомая копия по политике Администраторы архива или комплаенса

Оба нажали «Удалить». Часы обычно ещё идут

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

То же окно есть у привычных российских ящиков, но это их собственные часы, не «как у Gmail». Справка Яндекс Почты пишет: письма из папки «Удалённые» автоматически удаляются через 30 дней, из «Спама» — через 10; после этого восстановить нельзя. Справка Почты Mail пишет: удалённые письма лежат в корзине и через 30 дней удаляются навсегда; архив хранит письма бессрочно. Эти 30 дней не переносите на корпоративный архив Яндекс 360 или Exchange: у архива другие страницы и другие права.

У Google Workspace после пользовательских часов есть окно администратора. Справка Workspace про восстановление пишет: после 30 дней в корзине у администраторов есть ещё около 25 дней, чтобы вернуть письма. Это окно начинается через 30 дней после удаления, а не в день отправки. Когда оно кончается, письма безвозвратно удаляют из аккаунта Workspace: ни администратор, ни Google их уже не восстановят. Правила хранения Vault и удержания сидят вне этой кнопки. Это другая копия.

У Exchange Online после «уже нет» есть скрытая папка. Страница Microsoft про срок хранения удалённых элементов пишет: после удаления из «Удалённых», очистки «Удалённых» или Shift+Delete объект переходит в Recoverable Items → Deletions. По умолчанию его держат 14 дней. Администратор может поднять срок до 30. В Outlook пользователь всё ещё может «Восстановить удалённые элементы». Если на ящик повесили удержание для судебного разбирательства (Litigation Hold), эту шкалу игнорируют и удаления не чистят по расписанию в 14 дней.

«Отменить отправку» не возвращает секрет, который уже ушёл. Отмена отправки в Gmail даёт окно 5, 10, 20 или 30 секунд. Это задержка настоящей доставки. Это не вытаскивание тела с чужого сервера. После окна письмо — обычные «Отправленные». Отзыв в Outlook работает только в части организаций Exchange и только если получатель ещё не прочитал. Это не универсальная кнопка «забрать назад».

Корпоративный архив и поиск администратора — отдельные копии, которые пользователь не удалит

Часы личной корзины и корпоративное хранилище комплаенса — не один переключатель. Поиск Vault по Gmail умеет находить письма по ключевому слову в теле и вложениях (Google пишет про первые примерно 1 МБ текста и вложений). Администратор может просмотреть, напечатать и скачать вложения. Черновики и автосохранения входят в область. Правило хранения Vault по умолчанию может оставлять почту искомой после того, как сотрудник опустошил корзину. Это работа продукта: найти то, что сотрудник уже удалил.

Microsoft Purview eDiscovery смотрит на ящики так же. Поиск содержимого в почтовых ящиках пишет: поиск по ключевому слову покрывает тему, тело и много свойств участников. В индекс входят даты отправки и получения, отправитель и получатель, имена вложений и текст тела. Цель конструкции — «мы всё ещё найдём это после „Удалить“», а не «уважить запоздалое раскаяние отправителя».

Поэтому «только мы двое знаем» на корпоративном ящике обычно не работает. Тот, кто открывает Vault, запускает eDiscovery или выгружает ящик, читает этот пароль по должности. Это не обвинение вендора в подглядывании. Это право, которое описывает справка. У личного Gmail нет администратора Workspace. Это не делает открытый текст в «Отправленных» нечитаемым для того, кто сел за уже вошедший компьютер.

Конфиденциальный режим режет случайную пересылку, но не архив и не скриншот

Конфиденциальный режим Gmail часто принимают за «почту с самоуничтожением». Официальная область уже. Справка Gmail про конфиденциальный режим пишет: можно задать срок, потом закрыть доступ, отключить пересылку / копирование / печать / скачивание и потребовать код из SMS. На той же странице предупреждение: получатель всё равно может сделать скриншот или фото, а получатель с вредоносной программой всё ещё может скопировать или скачать. Документация Workspace отдельно описывает реализацию: Gmail вынимает тело и вложения из копии получателя и ставит вместо них ссылку на содержимое. По SMTP уходит в основном тема и эта ссылка.

Срок или отзыв могут закрыть тело для получателя. Они не стирают копию внутри организации отправителя. Заметки Vault про конфиденциальный режим пишут: если организация включила режим, Vault может хранить, искать и выгружать такие письма, которые пользователи организации отправили после 30 ноября 2018 года. Эти письма остаются доступны Vault, даже если пользователь задал дату окончания или закрыл доступ получателю. Ищите по label:confidentialmode. В предпросмотре содержимое по умолчанию скрыто; оператор может выбрать «показать». Это не сожжение. Это затвор для получателя и открытая дверь для ящика комплаенса.

Админская документация Workspace добавляет ещё одну внутреннюю копию. Чтобы Vault читал письма конфиденциального режима, Gmail может прикрепить копию содержимого к сообщению получателя, когда отправитель и получатель в одной организации. Справка пишет: эта копия только для Vault. Отправитель и получатель не откроют её из Gmail, сторонние архивы её не видят. Удалить все копии всё равно значит удалить письмо из аккаунта отправителя и из каждого аккаунта получателя. Конфиденциальный режим — контроль осечки. Это не канал для одноразового ключа. Тот же провайдер по-прежнему хранит тело. Тема едет обычным SMTP. Скриншоты на странице Google названы вне зоны. Если цель — «сервер держит только шифротекст, чтения сгорают по счётчику, ключ не входит в HTTP», это другое разделение, а не то же письмо с пометкой «конфиденциально».

Не проверяйте живым паролем, производственным API-ключом или немаскированной строкой подключения. Возьмите одноразовую канарейку, например canary-mail-2026-do-not-reuse. Вы сверяете «Отправленные» и попадания поиска, а не размазываете настоящий секрет ещё раз. Если настоящий ключ уже ушёл письмом, сначала отзовите его у издателя, потом меняйте способ передачи следующего.

Проверьте здесь: канарейка в двух тестовых ящиках, затем поиск по «Отправленным»

Слоган «это письмо зашифровано» сам себя не доказывает. За один присест видно четыре вещи: остался ли исходный текст в «Отправленных», есть ли он в тестовом ящике получателя, лежит ли он в корзине, «Удалённых» или Recoverable Items после удаления, и не приняли ли замок за «сервер это не читает». Этот шаг доказывает только то, какие читаемые копии оставило тестовое письмо. Политику архива вендора он не доказывает. Ту сторону сверяют только со справкой. Network её не заменяет.

Возьмите два ящика, которыми управляете вы. Производственную адресную книгу не трогайте. Напишите канарейку, которую сразу узнаете и которая не совпадёт с настоящим паролем, например canary-mail-2026-do-not-reuse. Тема — обычное уведомление. В теле — только канарейка. Номер паспорта и настоящее имя хоста не добавляйте. После отправки поищите эту строку в аккаунте отправителя. «Отправленные» должны попасть. Войдите в тестовый ящик получателя и поищите снова. «Входящие» тоже должны попасть. Два попадания — как минимум две копии открытого текста. Удалите копию отправителя в корзину или «Удалённые». Откройте её внутри окна в 30 дней. В Gmail, Яндекс Почте и Почте Mail она ещё должна быть. Это доказательство, что «Удалить» — не возврат.

Если нужно проверить, ушёл ли ключ в HTTP, ключ в письмо не кладите. Откройте одноразовую ссылку. После создания адресная строка должна выглядеть как s.html?id= плюс ключ после #. Откройте Network в инструментах разработчика. В строке запроса должен быть только идентификатор. Сегмент после решётки появляться не должен. Эта проверка доказывает форму ссылки. Про тело письма она ничего не говорит. Когда тело уже ушло, Network не вытащит хранилище, которое уже легло на диск.

  1. Из двух тестовых ящиков отправьте тело только с канарейкой, например canary-mail-2026-do-not-reuse. Настоящий ключ не используйте.
  2. Найдите эту строку в «Отправленных» отправителя и во «Входящих» получателя. Оба поиска должны попасть.
  3. Удалите копию отправителя, откройте корзину, «Удалённые» или «Восстановить удалённые элементы» и убедитесь, что внутри окна письмо ещё там.
  4. Когда настоящий ключ должен дойти до человека, переключитесь на одноразовую ссылку. Почтой отправьте только уведомление без ключа или уже зашифрованное вложение.

Доказательство узкое. В этом прогоне открытый текст лёг телом письма как минимум в два хранилища, а «Удалить» сразу не стёрло копию отправителя. Это не доказывает, что расширение не сохранило третью копию. Это не доказывает, что у другой компании включён Vault. Сменив почтовый продукт, снова прогоните канарейку по страницам удаления и архива этого вендора.

Разделите уведомление и секрет одноразовой ссылкой, которая открывается без аккаунта

Если «тело не должно становиться почтовым хранилищем» нужно превратить в повторяемое действие, начните с одноразовой ссылки MakePwd. Она открывается без аккаунта и без входа. Открытый текст появляется только во вкладке создателя. Браузер шифрует через Web Crypto алгоритмом AES-256-GCM. На выход уходят шифротекст, срок и число чтений. Сервер хранит только шифротекст и возвращает идентификатор. Страница дописывает ключ фрагментом: s.html?id={id}#{ключ}. По RFC 9110 целевой URI фрагмент не включает, поэтому в строке запроса сегмента после решётки быть не должно.

Тренируйтесь только на канарейках. Создайте одноразовую фразу, отправьте полную ссылку тестовому получателю и в теле письма напишите только «откройте ссылку; строку с решёткой не пересылайте». После подтверждения и получения то же id должен показать сожжённое состояние, а не ещё одно читаемое тело. Синяя ссылка может остаться в чате или почте. Это указатель. Когда шифротекст удалили по заданному счётчику, эти символы уже ничего не открывают. Подробности — в Что остаётся на сервере, когда одноразовую ссылку прочитали один раз и в Почему ключ после решётки в URL удобно класть и когда эта защита ломается.

Не возвращайтесь к «ZIP с паролем во вложении» для целого файла с ключами. Шифрование файлов в этой вкладке делает .lock / .enc алгоритмом AES-256-GCM (один файл, не больше 5 ГБ). Шифротекст можно отправить почтой или положить на диск. Фразу передайте другим каналом. Если пароль входа уже ушёл письмом, сначала отзовите его у издателя, затем сгенерируйте на этом устройстве новую строку из 6–128 символов (по умолчанию 16; короче 8 помечается как слабее). Ни один из этих шагов не требует входа.

Частые вопросы

Если письмо ушло по HTTPS, пароль видит только получатель?

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

Если оба удалили письмо, пароль уже исчез?

Может остаться. Gmail кладёт удаление в корзину примерно на 30 дней. В Яндекс Почте папка «Удалённые» тоже держит письма 30 дней, в Почте Mail — корзина 30 дней. Exchange Online после окончательного удаления держит объект в Recoverable Items 14 дней по умолчанию, максимум 30. Администратор Workspace после очистки корзины получает ещё около 25 дней. Удержание для судебного разбирательства эту шкалу игнорирует. Если в организации включён архив, администратор всё ещё может найти и выгрузить тело.

Когда у конфиденциального режима Gmail истекает срок, текст пропадает из системы?

Для получателя — да: после срока или отзыва доступа тело не открыть. Для Vault в организации отправителя Google пишет иначе: Vault может хранить, искать и выгружать письма конфиденциального режима, отправленные внутри организации, даже если пользователь задал срок или закрыл доступ. Скриншоты и фото на той же странице справки прямо названы вне зоны действия.

Если пароль всё же нужно передать коллеге, чем ещё может помочь почта?

Почтой отправьте уведомление без ключа или уже зашифрованное вложение. Сам пароль — один раз одноразовой ссылкой, ключ оставьте во фрагменте URL после #. Создать и прочитать можно без аккаунта. Сервер хранит только шифротекст. Тот же открытый текст в тело письма не вставляйте.

Три вещи, которые стоит помнить перед следующим письмом

Первое: «Отправить» пишет на диск. «Отправленные», «Входящие», синхронизированные устройства и релеи могут каждый держать читаемое тело. Правка текущей страницы не возвращает копию, которая уже легла. Второе: «Удалить» только запускает часы. Корзина Gmail — около 30 дней. «Удалённые» в Яндекс Почте и корзина Почты Mail — тоже 30. Recoverable Items в Exchange по умолчанию — 14. Администраторы Workspace после корзины получают ещё около 25 дней. Корпоративный архив и Vault — другой набор, пользователь его не удалит. Третье: конфиденциальный режим и отмена отправки ловят ошибки. Это не сквозное шифрование. Настоящий ключ, который должен дойти, идёт одноразовой ссылкой. Утёкший пароль сначала отзывают, потом меняют.

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