Вакансии для будущих разработчиков РБПО
Для кого актуальна тема РБПО?
- инженер-программист АСУ ТП;
- специалист по ИБ (сертификация СЗИ ФСТЭК России);
- ведущий аналитик по информационной безопасности;
- DevSecOps специалист;
- руководитель отдела безопасной разработки;
- инженер по соблюдению требований безопасности и другие.
Основные обязанности вышеизложенных специальностей:
- организация разработки ПО в соответствии с со стандартами разработки безопасного ПО;
- сопровождение сертификационных испытаний программного обеспечения, средств защиты информации и АС по требованиям доверия ФСТЭК России;
- разработка и внедрение методик DevSecOps для SSDL;
- работа с системами CI/CD;
- участие в формировании требований ИБ к продукту, в моделировании угроз;
- формирование аудит-отчетов, контроль и помощь разработчикам в устранении замечаний;
- участие в разработке процессов информационной безопасности, направленных на снижение рисков ИБ при разработке ПО в качестве технического эксперта и перечислять можно бесконечно.
Где можно получить знания по данной области?
- РТУ МИРЭА - 09.03.02«Информационные системы и технологии», «Технологии разработки безопасного программного обеспечения информационных систем»;
- МГТУ им. Н.Э. Баумана, Оренбургский государственный университет (ОГУ), Пермский государственный национальный исследовательский университет, РТУ МИРЭА - специалитет по профилю «Разработка защищенного программного обеспечения» (реализуется в рамках специальности 10.05.01 Компьютерная безопасность);
- возможно: Специальность 10.05.02 Информационная безопасность телекоммуникационных систем – образовательная программа «Разработка защищённых телекоммуникационных систем».
В эти программах есть особенность: трудовые функции в профстандартах соответствуют профессиональным компетенциям в образовательных программах учебных заведений (их определяет ВУЗ). Традиционная для нашей страны образовательная парадигма, когда цели и планируемые результаты обучения формулировались в виде знаний, умений и навыков (ЗУН) – не работает.
Три вида компетенций в образовательных программах учебных заведений (по ФГОС):
- универсальные (общие по стране);
- общепрофессиональные (обобщённые компетенции, которые нужны в определённой группе профессий, по направлению подготовки и с учётом специфики специальностей);
- специализированные профессиональные (ВУЗ может определять самостоятельно).
Команда разработки РБПО
Для обеспечения безопасности приложений недостаточно только команды разработки. Нужно добавить специалистов, которые будут выполнять задачи AppSec:
- определять требования к безопасности;
- проводить инструментальный и ручной анализ;
- исправлять найденные ошибки.
Таким образом, команда Appsec включается в процесс разработки. В нем появляются новые этапы:
- анализ ИБ (моделирование угроз);
- ИБ-тестирование;
- мониторинг безопасности.
Цена ошибки
Параллельные программы непостижимы для человека: они очень часто неправильны, содержат ошибки.
В каждой программе (даже тщательно отлаженной) есть хотя бы одна ошибка. Это первая аксиома М.Р. Шуры-Буры (1918-2008).
Полностью эта шутливая «аксиоматика» выглядит так:
- В каждой программе есть хотя бы одна ошибка;
- Если ошибки нет в программе, она есть в реализуемом алгоритме;
- Если ошибки нет и в алгоритме, такая программа никому не нужна.
В среднем современные программные системы имеют 10 ошибок на 1000 строк кода, ПО высокого качества 1-3 ошибки на 1000 строк кода. Современное ПО содержит миллионы строк кода. Уже сданные работающие программы наполнены ошибками.
Ошибки иногда не критичны:
- сводятся к лёгким моральным травмам;
- возможность обнаружения сбоя и восстановления;
- возможность быстрого исправления ошибки.
Ошибки в система с повышенными требованиями к надёжности приводят к:
- гибели или травмам людей;
- крупным финансовым потерям;
- ущербу окружающей среде и прочее.
Июнь 1996 года, Ariane-5 совершила последний полет, взрыв ракеты спустя 40 секунд после старта:
- ущерб - $500млн (разработка – $7 млрд.);
- причина - 64bit float ->16bit int.
Февраль 1991 года, Patriot промахнулся мимо ракеты Scud:
- ущерб - 28 убитых, >100 раненых;
- причина - ошибка округления из-за 24bit fixed, Scud успел пролететь 500м.
Август 1991 года, Северное море. Платформа Sleipner A затонула после разрушения основания:
- ущерб - $700 млн, землетрясение силой 3 балла;
- причина - ошибка округления при моделировании платформы.
2010 год:
- ошибки в ПО автомобилей: Toyota Prius (нарушен директивный интервал включения ABS), Chrysler (можно вытащить ключ, не переключившись в режим парковки);
- ошибки в программе обработки заявлений доноров органов в UK (у 25 человек взяли не те органы);
- ошибка в электронной системе налоговой службы США (не обслуживались 64-летние люди);
- ошибка в антивирусе McAfee (системный файл Windows распознан как вредоносный и удалён, бесконечная перезагрузка);
- отключение Skype (вышла из строя одна из версий клиента, что привело к сбою всей P2P сети);
- ошибка в апдейте NYSE Euronext (S&P упал на 10%);
- 88 критических ошибок в Android Froyo (доступ к личным данным).
Таким образом, повышенные требования к надёжности становятся не только у спутников, самолётов и АЭС, но и у систем, в которых:
- затруднено исправление ошибок (потребительская электроника);
- велик масштаб использования (та же электроника, важные веб-сервисы);
- высокая степень доверия человека.
Критически-важных систем становится всё больше, они становятся более сложными и тесно взаимодействующими.
Полезные материалы для ознакомления:
Схема карьерных треков в кибербезопасности: https://cybersecurity-roadmap.ru/
Профстандарты для обучения специальностей: https://profstandart.rosmintrud.ru/
Цена ошибки: https://habr.com/ru/companies/pvs-studio/articles/330762/