Кто такой Application Security Engineer?

Application Security engineer

В этой заметке я постараюсь объяснить простыми словами кто такой Application Security Engineer, чем он занимается, какие требования и обязанности у специалиста на данной должности, а также чем отличается от других cybersecurity-ролей.

Из каких сотрудников состоит классический отдел IT безопасности?

Чтобы лучше разобраться в теме, начнем с описания стека должностей отдела IT безопасности любой крупной компании:

  • Chief Information Security Officer (CISO, InfoSec)  — руководитель IT отдела кибербезопасности, раньше эта должность называлась «Офицер Информационной Безопасности»;
  • IT Security Project Manager  — менеджер проектов по кибербезопасности, он же часто Team Lead;
  • Cybersecurity Consultant  — консультант по кибербезопасности;
  • Cybersecurity Analyst / Specialist  — аналитик, аудитор, специалист по кибербезопасности;
  • Cyber Threat Intelligence Specialist (CTI)  — специалист по поиску киберугроз, он же Threat Hunter;
  • Open Source Intelligence Specialist (OSINT)  — специалист по разведке данных из открытых источников, когда-то называли просто «Бизнес-разведка»;
  • Security Operation Center Specialist (SOC)  — специалист-оператор центра мониторинга и защиты от киберугроз;
  • Computer Security Incident Response Team (CSIRT)  — команда реагирования на киберинциденты, другими словами «Оперативная группа»;
  • Malware Analysis Specialist  — аналитик уязвимостей программ и веб-приложений;
  • Digital Forensics / Reverse Engineer  — компьютерный криминалист, специалист по реверс-инжирингу;
  • Penetration Tester (Ethical Hacker)  — тестировщик приложений на проникновение, он же «Белый» Хакер. Часто сюда попадают и QA Testers;
  • Network Security Specialist  — специалист по сетевой безопасности, администратор интернет-сетей;
  • Application Security Architect  — проектировщик систем IT безопасности;
  • Application Security Engineer (AppSec) — инженер по безопасности приложений;
  • Development Security Operations (DevSecOps) — ответственный за безопасность всего жизненного цикла разработки (CI/CD pipelines).

Кто такой Application Security Engineer?

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

Перейдем теперь непосредственно к анализу роли Application Security Engineer.

Кто такой Application Security Engineer, чем занимается и за что отвечает?

Application Security Engineer — это ИНЖЕНЕР-ПРОГРАММИСТ с уклоном в кибербезопасность. Как правило, обладает профильным образованием (Компьютерная инженерия и программирование, Разработка программного обеспечения).

В его обязанности входит:

  • обеспечение безопасности разработки ПО — Secure (Safe) Software Development Lifecycle;Security Code Review
  • анализ и проверка программного кода (Code Review) согласно требованиям SANS 25 и OWASP Top 10;
  • тестирование кода — Static Code Security Testing (SCST) и Continuous Penetration Testing (CPT);
  • моделирование угроз — Threat Modelling;
  • составление технических заданий (ТЗ) и спецификаций команде разработчиков;
  • составление технических документаций, презентаций для менеджеров/консультантов/руководства высшего звена.

Главные требования к кандидату AppSec:

  • знание сложных языков программирования (С/С#, Python, Java, Go и др.);
  • знание баз данных (SQL, MySQL/MariaDB, MongoDB, PostgreSQL);
  • владение SAST-сканерами (Snyk, SonarQube, Netsparker, Fortify, Rapid);
  • знание операционных систем Windows/Linux/macOS;
  • владение DAST-сканерами (Acunetix, Detectify, Qualys, OWASP Zap, BurpSuite, NMAP, Nikto, WhatWeb, WPScan, Nettacker и др.)
  • владение инструментами непрерывной разработки и контейнеризации (Docker, Kubernetes, Jenkis);
  • понимание технологий виртуализации (Hyper-V, KVM, VMvare, VirtualBox, Sandboxes);
  • понимание облачных платформ (AWS/GCP/Azure)
  • понимание систем управления версиями (GIT/SVN);
  • понимание принципов Agile software development (гибкая модель разработки ПО);
  • понимание стандартов безопасности ISO 27001, PCI DSS, GDPR;
  • …..и все это на уровне ЭКСПЕРТА.

Кто такой Application Security Engineer?

Требования достаточно комплексные. Кандидат реально должен владеть многими Hard и Soft скиллами, чтобы справляться на данной должности. Но главное — это самостоятельно уметь писать собственные приложения, редактировать, сканировать код и находить в его СИНТАКСИСЕ ошибки и уязвимости. Поэтому, зарплата AppSec = зарплате среднестатического программиста. Но между ними есть одно различие: права на ошибку у Application Security Инженера нет. Ни аналитик, ни даже пентестер не смогут войти в эту должность — так как их навыки базируются на уровне ТЕСТИРОВАНИЯ, АНАЛИЗА И ИССЛЕДОВАНИЙ, но не РАЗРАБОТКИ И ОТЛАДКИ. Базовое знание веб-разметки (HTML/CSS/XML/JSON) или написания скриптов (Bash/Powershell) тут не помогут.

В целом, AppSec — это высококвалифицированный IT-инженер, который хорошо разбирается в различных средах программирования и архитектуре SOFT’а, понимает весь процесс разворачивания и обслуживания приложений от А до Я. И понимает все риски безопасности связанные с ним.

Кто такой Application Security Engineer?

В чем сложность найти опытного Application Security Инженера?

Их просто нет. Данная специальность на IT-рынке появилась сравнительно недавно. Во-вторых, не каждый программист захочет лезть в безопасность, открывать для себя, по сути, новую дисциплину, новую отрасль, новую «галактику», зарабатывая и так неплохо на своей прежней должности (и многим из них глубоко чхать на безопасность, т.к. этим обычно занимаются другие ребята). А тут прогеру придется столкнуться с новыми требованиями и описаниями, какими-то задачами, трудностями: обучаться, проходить курсы, получать ОБЯЗАТЕЛЬНЫЕ СЕРТИФИКАТЫ (без них в кибербезопасности никак), а потом еще и получить «запару» в виде «горы» обязанностей (спектр задач Application Security широкий). Application Security Engineer — это ИНТЕГРАТОР, который должен вникать абсолютно во все тонкости и сложности работы, процессы и обсуждения, налаживать коммуникацию между Product Owner’ом (риски, стоимость, затраты) и Dev’ами (требования, техническая документация и др.). Главное — он должен понимать разработчиков (порой, очень упертые ребята, которые понимают только язык спецификаций), завоевать их доверие, иначе никто не будет прислушиваться к AppSec — код останется «багнутым», что приведет к уязвимостям и его быстро уволят.

Кто такой Application Security Engineer?

К сожалению, некоторые рекрутеры не понимают всех этих тонкостей и деталей. В поиске талантов и гонке за вознаграждение они пытаются найти хоть кого-то и закрыть позицию. Часто, Application Security Engineer у них ассоциируется с «Аналитиками кибербезопасности» или «Специалистами отдела информационной безопасности» (InfoSec), и даже «Инженерами техподдержки» (Technical Support Engineer). Но на деле между ними большая пропасть. Карьерный путь Application Security, на мой взгляд, выглядит следующим образом:

Software Developer — Software Engineering —> Application Security Engineer <—  Applicaton Penetration Tester — Reverse Engineer

Единственная позиция, которая близко стоит к AppSec — это DevSecOps — обеспечение безопасности непрерывного цикла разработки (Continue Integrity & Continue Deploy (CI/CD)). Но найти такого еще сложнее. Это самая крупная высокооплачиваемая и престижная должность. Это «Короли IT». Универсальные Full-Stack специалисты, которые ГЛУБОКО погружаются и разбираются АБСОЛЮТНО во всем IT-цикле. От них зависит, грубо говоря, ВСЕ. Такие люди, конечно же, не ищут работу. А вот плохих DevOps’ов — достаточно. И брать их — означает погубить собственную репутацию.

Рекомендую также прочитать рассказ одного эксперта на DOU об особенностях карьеры в Security Engineer.

Полезные ссылки

Оценка:
( 1 оценка, среднее 5 из 5 )
Подписка на KRASHENININ.TECH

Получайте регулярные обновления на почту!    


Author
Виталий Крашенинин/ автор статьи
Digital-жрец блога Krasheninin.tech, публицист, аналитик, исследователь веб-технологий. С 2011 года в IT. Сфокусирован на кибербезопасности, системном администрировании, создании сайтов и SEO. Подробнее>>
Поделиться материалом в соцсетях:
KRASHENININ.TECH - блог о веб-технологиях, и не только
Подписаться
Уведомление о
guest
0 Комментарий
Встроенные отзывы
Просмотреть все комментарии
0
Есть мысли? Прокомментируй!x
()
x