Узнать, как строится безопасность в большой компании: что такое ШкИБ словами выпускника
Будущего безопасника можно распознать с детства. Сужу по себе — ещё тогда я вывел для себя формулу: «Ломать, чтобы понять». Было интересно разбирать всё до мельчайших деталей, узнавать, для чего эти детали нужны и как они работают вместе. Сейчас я специалист по информационной безопасности, и, в целом, ничего не изменилось. Продолжаю детские увлечения: изучаю системы, нахожу их слабости, понимаю, что можно улучшить.
Я окончил кафедру информационной безопасности на факультете ВМК МГУ, а потом совмещал магистратуру с работой в компании, которая занималась аудитом безопасности информационных систем. Суть такого аудита в имитации действий злоумышленника — мы буквально атакуем системы заказчика. Получив результаты, оцениваем, насколько инфраструктура зрелая, готова ли она противостоять атакам, обучены ли сотрудники поддерживать защиту.
Называется это offensive security. Поначалу мне всё нравилось: проектов много, они принадлежат разным индустриям, отличаются типами инфраструктур и информационных систем. Разнообразие — не заскучаешь! Но со временем картинка стала менее радужной.
У большинства заказчиков типовые проблемы, и, даже получив подробный отчёт, они не торопятся их решать.
Кроме того, времени, отведённого на конкретный проект, недостаточно, чтобы изучить систему в необходимых для создания действительно рабочих рекомендаций подробностях. Порой приходилось ограничиваться формальными «лучшими практиками».
Всё это подтолкнуло меня к мысли о переходе в defensive security (это когда строишь систему безопасности внутри компании, продумывая сценарии рисков). Примерно в тот же момент Яндекс запустил первый ШкИБ. «Удачное совпадение», — подумал я и воспользовался возможностью, чтобы изменить карьерный трек.
Университетских знаний и практического опыта хватило, чтобы выполнить тестовые задания. Настал апрель, и месячный марафон информационной безопасности начался.
Сразу понравилась ставка на решение прикладных задач. В придачу к теории всегда шла практика. Например, рассказ про length extension attack сопровождали «боевые» примеры эксплуатации и ставился акцент на важности использования HMAC вместо хеша от конкатенации строк.
За месяц ШкИБа я упорядочил имеющиеся знания, а также узнал много нового, например технологии изоляции Linux или Network Security. Но самое интересное происходило на кофе-брейках между лекциями — это была возможность свободно пообщаться с командой безопасности Яндекса. Ребята делились результатами исследований, рассказывали про state of the art в своих направлениях и, в целом, о специфике работы в продуктовой компании.
Меня тогда поразило, что пресловутых «лучших практик» недостаточно, чтобы обеспечить безопасность крупной технологической компании. Ведь каждое предложение команды безопасности влияет на выполнимость функциональных требований, которые закладывает бизнес. Приходится находить нестандартные решения, чтобы одновременно поддержать требуемый уровень безопасности и удовлетворить потребности бизнеса.
Оказалось, что готовые решения существуют только на страницах учебников, а в реальности ты постоянно ищешь и адаптируешь новые подходы.
После ШкИБа мне предложили пройти серию собеседований в Яндексе. Что приятно: выполненные домашние задания засчитали как одну из секций. Так я стал частью команды безопасности Яндекса. Первое, что мне поручили на новом месте, — заняться безопасностью Яндекс Маркета.
Поначалу я ходил слегка потрясённый. Я и представить не мог, насколько Маркет большой и сложный. Как много разной инфраструктуры нужно для поддержания простых на первый взгляд процессов. Но я быстро освоился и начал внедрять базовые процессы, поддерживающие безопасность всех сервисов Яндекса. Если возникали трудности, выручали команда и руководитель. Вместе мы построили жизненный цикл безопасной разработки. Стали участвовать в дизайне архитектуры, ведь проще обеспечить безопасность на этапе проектирования, чем чинить уже готовый продукт.
Все крупные изменения сервиса стали обязательно проходить через ручной аудит безопасности. Остальные изменения мы покрыли статическим и динамическим анализом кода. А ещё мы организовали регулярные курсы по безопасной разработке, основываясь на обнаруженных проблемах. Параллельно с тем, что наши процессы становились более зрелыми, рос и сам Маркет. К интернет-площадке добавились своя сеть постаматов, курьерская платформа, склады и логистика товаров.
Каждое такое изменение — новый вызов для команды безопасности, повод нарастить экспертизу и изобрести нечто принципиально новое.
Чтобы поддерживать должный уровень безопасности для всех сервисов Яндекса, мы делаем ставку на автоматизацию и развиваем свои инструменты для этих целей. Среди них хорошо известные статический анализатор конфигов Nginx Gixy и сканер Молли. Из новенького: на последней конференции ZeroNights рассказывали про оркестратор статических анализаторов кода imPulse.
За время моей работы служба информационной безопасности разрослась до нескольких больших команд со своими тимлидами, и сейчас я возглавляю одну из этих команд.
Мы занимаемся безопасностью многих бизнесов Яндекса, в каждом — свои специфика и риски, а значит, и особенности безопасности. Например, в Облаке это мультитенантность ресурсов и важность изоляции, а в Беспилотных автомобилях — маленький дата-центр, способный разогнаться до 200 км/ч.
Вот так прошли последние три года моей жизни. Возможно, моя история вдохновит вас проложить собственный путь в информационной безопасности, начать который я предлагаю со ШкИБа. Надеюсь, увидимся на занятиях. До встречи!