forumСоздать тему

Как своими силами внедрить проверку безопасности кода перед релизом?

CCansu K***Участник
Должность
Логистическое планирование
Отрасль
Право
Тип организации
компания в составе холдинга
Дата регистрации
дек. 2022 г.
Сообщение
191
#1

У нас кор-команда из 4 разработчиков в Остине. Делаем панель управления операционкой для B2B-логистики проект приносит 18.000 долларов подписочной выручки в месяц. До сих пор наш код-ревью крутился вокруг чистоты архитектуры, бизнес-логики и производительности. Безопасность, честно говоря, всегда была на задворках — следили разве что за тем, чтобы пароли в открытом виде не светились.

На прошлой неделе крупный клиент перед продлением договора запросил внешний пентест и в отчете вылезли стыдные уязвимости вроде обхода авторизации и отсутствия валидации входящих данных. Дыры мы заштопали, но теперь хотим на постоянке проверять код на безопасность перед каждым релизом. Выделенного безопасника в штате нет.

Бюджет у нас скромный отдавать по 10.000 долларов каждый месяц внешним аудиторам мы не потянем. Как маленькой команде разработчиков выстроить процесс безопасного код-ревью с нуля и не заблокировать текущую работу? С каких шагов лучше начать?

BBurak O***Участник
Должность
Операционный директор
Отрасль
Ювелирные изделия
Тип организации
стартап на ранней стадии
Дата регистрации
февр. 2023 г.
Сообщение
192
Самый полезный#2

Если коротко: внедрить практику безопасного код-ревью можно и без отдельного безопасника — достаточно прикрутить к CI-пайплайну автоматические инструменты статического анализа и завести для пулреквестов чек-лист по самым рискованным местам. Задача не в том, чтобы сразу ловить вообще все баги, а в том, чтобы отсекать самые распространенные и опасные косяки прямо в процессе разработки.

Первым делом добавьте опенсорсные утилиты статического анализа кода (SAST) в свой CI/CD-пайплайн. Они должны автоматически прогоняться на каждом пулреквесте и подсвечивать разработчику использование небезопасных функций, известные уязвимости в зависимостях и случайно захардкоженные секреты. Такая автоматизация отлавливает базовые ошибки, которые замыленный глаз просто пропустит, и не стоит ни копейки за лицензии.

Второй шаг — добавьте в шаблон код-ревью команды чек-лист из 5 пунктов по безопасности: 1) Проходят ли внешние пользовательские данные строгую валидацию и очистку, 2) Настроена ли проверка прав доступа на уровне объектов, 3) Не утекают ли чувствительные данные в логи или ответы сервера, 4) Используются ли параметризованные запросы к базе данных, 5) Не раскрывают ли сообщения об ошибках внутренности инфраструктуры. Пока ревьюер не отметит эти пять пунктов, мерджить код в основную ветку нельзя.

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

TTolga Y***УчастникУчастник сообщества
Дата регистрации
дек. 2023 г.
Сообщение
2
#3

По части автоматизации сканирование зависимостей не менее критично, чем статический анализ. Поставьте опенсорсные чекеры зависимостей, которые еще на этапе сборки проверяют используемые сторонние библиотеки на известные уязвимости. Кроме того, чтобы закрыть дыры в авторизации, сделайте обязательными юнит- и интеграционные тесты для проверки бизнес-логики в коде: пока соответствие ID пользователя и объекта данных не протестировано, код не должен проходить дальше.

RRecep D***Участник
Должность
Редактор контента
Отрасль
Энергетика
Тип организации
компания с двумя филиалами
Дата регистрации
февр. 2025 г.
Сообщение
4

Doki · Настройка управления логами · 2026

#4

Если в команде из четырех человек повесить безопасность на кого-то одного, он моментально станет бутылочным горлышком. Ревью должно быть не наказанием или просто печатью согласования, а общей ответственностью. Внедрите правило двух пар глаз на каждом пулл-реквесте: пусть не автор кода, а именно ревьюер построчно проходится по чек-листу безопасности. Даже простой чек-лист отлавливает большинство косяков еще в среде разработки.

P.S.: вопрос уже задавали ниже, ответ во втором сообщении.

HHakan B***Эксперт
Должность
HR-специалист
Отрасль
Пластик
Тип организации
стартап на ранней стадии
Дата регистрации
янв. 2026 г.
Сообщение
409
#5

Самый практичный шаг, который можно внедрить буквально завтра утром — добавить блок по безопасности прямо в шаблон пулл-реквеста. Чтобы разработчик перед отправкой кода обязан был проставить галочки: «Входные данные валидировал» и «Проверку прав добавил». Даже эти два простых вопроса заставят лишний раз остановиться и подумать перед коммитом.

HHakan G***Участник
Должность
Руководитель отдела закупок
Отрасль
Морепродукты
Тип организации
Компания на 300 человек
Дата регистрации
окт. 2024 г.
Сообщение
185
#6

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

GGizem M***Участник
Должность
Инженер-технолог
Тип организации
сеть магазинов
Дата регистрации
июнь 2024 г.
Сообщение
96
#7

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

FFiliz S***Участник
Должность
Разработчик ПО
Отрасль
Типография
Тип организации
стартап на ранней стадии
Дата регистрации
апр. 2026 г.
Сообщение
129
#8

Обход авторизации из отчета по пентесту вашего клиента — он произошел на уровне API или прямо в запросах к базе данных? Если на эндпоинтах API нет централизованного слоя авторизации, ручные проверки внутри каждой функции рано или поздно снова приведут к дырам. У вас в архитектуре вообще предусмотрен централизованный контроль идентификации и доступа?

FFerhat E***УчастникУчастник сообщества
Дата регистрации
июнь 2024 г.
Сообщение
181
#9

Не полагайтесь слишком сильно на автоматические сканеры. SAST-тулы отлично находят уязвимости в либах или банальные SQL-инъекции, но ошибки бизнес-логики вроде вашего обхода авторизации они не увидят никогда. Пока живой человек глазами не проверит логику по коду в духе «может ли пользователь А увидеть счет пользователя Б», ни один автоматический софт вас от таких факапов не спасет.

BBeyza K***Эксперт
Должность
Специалист по социальным сетям
Отрасль
ПО
Тип организации
стартап на ранней стадии
Дата регистрации
июль 2025 г.
Сообщение
2
#10

Подытоживая, дорожная карта предельно ясна: 1) Подключить к репозиторию бесплатные авто-тулы для сканирования зависимостей и базовых уязвимостей, 2) Ввести в пулл-реквестах обязательный чек-лист из 5 пунктов с фокусом на авторизацию и валидацию данных, 3) Проверку бизнес-логики отдать разработчикам на ручное ревью. Огромные бюджеты тут не нужны, достаточно дисциплины.

AAycan K***Участник
Должность
Директор магазина
Отрасль
Кейтеринг
Тип организации
компания из 20 человек
Дата регистрации
март 2024 г.
Сообщение
132
#11

Я сталкивался с тем же.

TTayfunВетеран
Должность
Владелец IT-компании
Дата регистрации
май 2023 г.
Сообщение
228

Doki · Инфраструктура электронной коммерции · 2024

#12

Мы тоже какое-то время назад застряли на том же месте. При принятии решений записывайте и худший сценарий а не только лучший.

Интересно есть ли те, кто делает иначе.

EEbru K***Участник
Должность
Системный администратор
Отрасль
Медицинские услуги
Тип организации
стартап на ранней стадии
Дата регистрации
июнь 2024 г.
Сообщение
28
#13

Большое спасибо сегодня попробую.

GGamze G***Эксперт
Должность
HR-директор
Отрасль
Охранные услуги
Тип организации
среднее предприятие
Дата регистрации
апр. 2022 г.
Сообщение
218

Doki · Обучение по распознаванию фишинга · 2025

#14

Сохранил.

MMeryem S***Участник
Должность
Системный администратор
Отрасль
Электротехника и электроника
Тип организации
компания с двумя филиалами
Дата регистрации
март 2026 г.
Сообщение
398
#15

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

Больше всего времени у нас уходило на то, что было непонятно, кто принимает решения.

MMurat T***Участник
Должность
Сетевой администратор
Отрасль
Страхование
Тип организации
бутиковое агентство
Дата регистрации
янв. 2025 г.
Сообщение
80
#16

Пишу это, чтобы вы не совершили ту же ошибку. Непроверенная резервная копия — не резервная копия.

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

ZZehra K***УчастникУчастник сообщества
Дата регистрации
март 2025 г.
Сообщение
86
#17

При выполнении этого часто совершают одну ошибку. Большая часть потерь времени копится на задачах, ожидающих согласования.

Это мое мнение, не утверждаю, что оно единственно верное.

HHakan Y***Новый участник
Должность
HR-специалист
Отрасль
Реклама и продвижение
Тип организации
стартап на ранней стадии
Дата регистрации
сент. 2026 г.
Сообщение
4
#18

Я маленький бизнес, расскажу со своей стороны. То, что делают все, не значит, что это правильно.

Не стесняйтесь спрашивать, молчание всегда обходится дороже.

FFatma E***УчастникУчастник сообщества
Дата регистрации
окт. 2025 г.
Сообщение
89
#19

мои сомнения развеялись спасибо.

ŞŞerife U***Участник
Должность
Логистическое планирование
Отрасль
Медиа и издательское дело
Тип организации
стартап на ранней стадии
Дата регистрации
авг. 2022 г.
Сообщение
11
#20

Есть момент, который я не понял. Если делаете впервые начните с малого масштабирование потом.

Непроверенная резервная копия — не резервная копия. Я бы пошел этим путем.

Тема закрыта.Дежурный модератор отметил тему как решённую. Если у вас похожая ситуация, создайте новую тему.
Создать тему