Уборка секретов и токенов из кода
Находим пароли, ключи и токены в рабочем коде, конфигурациях и доступной истории репозитория, затем переносим их в защищённое окружение и помогаем заменить скомпрометированные значения. В отчёте остаются только маски, путь к файлу и статус исправления.
Когда стоит обратиться
Обычно к нам обращаются в таких ситуациях:
- Пароли, ключи или токены могли попасть в код и конфигурационные файлы проекта.
- Нужно найти и убрать до двадцати секретов с согласованной заменой ключей.
- Ключ уже публиковали в репозитории или журнале сборки, поэтому одного удаления строки недостаточно: значение нужно заменить и отозвать.
Что именно мы сделаем
Проверяем код, конфигурации, файлы развёртывания и доступную историю репозитория, не выводя полные значения в отчёт.
Подтверждаем владельца каждой находки и согласуем, какой ключ нужно заменить, перенести или отозвать.
Переводим приложение на новое значение из защищённого окружения и проверяем обычную рабочую операцию.
Отзываем прежний ключ, повторяем сканирование и включаем локальную проверку или автоматический контроль новых изменений при сборке проекта.
Что входит в стоимость
24 900 ₽ за всю работу
Проверяем текущий код, конфигурации и доступную историю на наличие до двадцати секретов, переносим рабочие значения во внешнее хранилище и проводим согласованную ротацию. Включаем одну локальную или автоматическую проверку при сборке, повторно сканируем проект, а исторические находки закрываем в реестре после замены или отзыва ключа.
Что будет готово
Передадим вам
- Закрытый реестр до двадцати находок с маской, расположением, владельцем и статусом исправления.
- Изменённые конфигурации, перенос значений во внешнее хранилище и сведения о выполненной ротации.
- Настройка локальной проверки или автоматического контроля секретов при сборке проекта и протокол повторного сканирования.
Перед сдачей проверим
- В общем отчёте и журналах нет полных значений обнаруженных секретов.
- Приложение выполняет согласованную операцию с новым значением из хранилища, а прежний утверждённый ключ больше не принимается внешней системой.
- В текущем дереве кода обработанные значения отсутствуют, а исторические находки отмечены как закрытые после замены или отзыва прежних ключей.
- Локальная проверка или автоматический контроль при сборке запускается на согласованном изменении и показывает находку только в маскированном виде.
Как это выглядит на практике
Ключ доступа попал в историю репозитория
Разработчик заметил в истории репозитория действующий ключ к службе доставки. Удаление строки из текущей конфигурации не закрывает риск, потому что старый коммит остаётся доступным. Для приёмки нужны маскированная запись о находке, отсутствие секрета в текущем дереве, успешный запрос с новым ключом и отказ по прежнему; историческая находка сохраняется в реестре как закрытая.
- 01
Подтверждаем владельца ключа и места его использования, не печатая полное значение.
- 02
Владелец выпускает замену, а приложение получает её из согласованного защищённого хранилища.
- 03
После контрольной операции прежний ключ отзывается во внешнем сервисе.
- 04
Проверяем текущее дерево, закрываем историческую находку после отзыва ключа и включаем контроль новых изменений.
Что понадобится для работы
От вас
- Репозиторий или выгрузка состава приложения, перечень сред и примеры текущих журналов или конфигураций.
- Правила ротации и хранения чувствительных данных, а также контакт разработчика и администратора.
- Пример операции до изменений и ожидаемый результат после них, чтобы проверить, что обработанные значения отсутствуют при повторном сканировании кода.
Если у вас немного другая ситуация
Небольшие уточнения, которые помогают довести согласованный результат до рабочего состояния, уже учитываем в цене. Если по ходу работы появится отдельный крупный блок или понадобится платная лицензия, сначала обсудим варианты и стоимость. Расскажите о своей ситуации — подстроим план под неё.
- 3 000 ₽после подписания договора через Диадок
- 21 900 ₽после выполнения, демонстрации и приёмки результата
Предоплата входит в общую стоимость. Оставшуюся сумму оплачиваете после демонстрации и приёмки готовой работы.
Часто спрашивают
Об этой услуге
Достаточно удалить токен из текущего файла?
Для опубликованного или попавшего в историю значения безопаснее выпустить новый ключ, заменить его в приложении и отозвать прежний после проверки.
Будут ли секреты напечатаны в отчёте?
Нет. Показываем маску, тип, расположение и владельца. Полное значение передаётся только приложению через согласованное защищённое хранилище.
Можно предотвратить повторное попадание ключей в код?
Да. Добавим локальную проверку или автоматический контроль при сборке проекта — CI. Он проверяет новые изменения и выводит найденные значения только в маскированном виде; исключения оставляем лишь для подтверждённых ложных срабатываний.
Цена и изменения по ходу работы
Цена на странице окончательная?
Да. Перед началом мы сверяем исходные данные и фиксируем результат в договоре. Указанная на странице сумма покрывает согласованную работу целиком, даже если её техническая реализация потребует больше времени, чем ожидалось при оценке.
Что означает резерв незапланированных работ?
Это уже включённый в цену запас времени на небольшие связанные уточнения заказчика, которые появляются после старта: например, добавить поле, изменить формат уведомления или учесть ещё одно условие обработки.
Резерв рассчитывается по формуле: стоимость услуги × 30% ÷ 1 500 ₽. Для услуги за 30 000 ₽ это 6 часов. Эти часы относятся только к дополнительным, заранее незапланированным уточнениям. Они не являются сроком проекта и не ограничивают время на основную работу: согласованный результат мы выполняем полностью.
Можно уточнять детали уже во время работы?
Да. Небольшие связанные изменения обычно помещаются во включённый резерв и не требуют доплаты. Если новая идея заметно меняет результат или превращается в самостоятельную задачу, сначала обсудим подход и стоимость. Любое решение согласуем до выполнения.
Начало работы и оплата
Как оформляются договор и оплата?
Подписываем договор через Диадок. Предоплата составляет 3 000 ₽ и входит в общую стоимость услуги. Остаток оплачивается после демонстрации и приёмки готового результата.
Когда начинается срок выполнения?
Срок отсчитывается после согласования задачи, получения необходимых доступов и материалов, подписания договора и поступления предоплаты. Конкретную дату старта и плановый день готовности подтверждаем перед началом.
Как учитываются платные лицензии и внешние сервисы?
До старта проверяем, нужны ли тарифы, лицензии, сертификаты или дополнительные ресурсы внешних систем. Если они потребуются, заранее покажем варианты и стоимость. По возможности аккаунты и лицензии оформляются сразу на заказчика.
Проверка результата и гарантия
Как принимается готовая работа?
Вместе проверяем согласованные сценарии на контрольных данных или тестовой копии, а затем демонстрируем результат. Для интеграций сверяем передачу данных и обработку ошибок, для сайта — работу нужных страниц и действий пользователя, для отчёта — расчёты и обновление данных.
Какая гарантия действует после сдачи?
На выполненные изменения действует гарантия 3 месяца. Если в изменённой нами части обнаружится ошибка нашей реализации, проверим и исправим её без дополнительной оплаты. Переданные материалы, настройки и код остаются у заказчика.