Обзор Start EDU, платформы по обучению продуктовых команд навыкам безопасной разработки - Выбор корпоративных средств защиты - Форумы Anti-Malware.ru Перейти к содержанию
AM_Bot

Обзор Start EDU, платформы по обучению продуктовых команд навыкам безопасной разработки

Recommended Posts

AM_Bot
Обзор Start EDU, платформы по обучению продуктовых команд навыкам безопасной разработки
Start EDU — платформа, которая помогает командам разработки научиться писать код без уязвимостей. Учебные модули подбираются автоматически на основе знаний разработчиков и характеристик продукта, над которым они работают. Интеграция с Jira помогает встроить обучение в рабочий процесс.      ВведениеОписание Start EDUОтличия Start EDU от обычных онлайн-курсовКак устроено обучениеТемы обучающих юнитов Start EDUКакие языки программирования поддерживаютсяДополнительные возможности продукта Start EDUКак продуктовой команде подбирается курсКак внедрить Start EDU в работу командыОценка знаний, которые получил разработчикВыводыВведениеПродуктовым командам важно думать об информационной безопасности уже на этапе проектирования архитектуры и написания кода, потому что стандартные инструменты вроде SAST или DAST не могут выявить все потенциальные уязвимости и в любом случае делают это слишком поздно — когда код уже написан.Разрешить это противоречие может обучение безопасной разработке. Но классические курсы не «заточены» под задачи продуктовых команд, само обучение — неструктурированное и скучное, а главное — непонятно, как оценить его эффективность.Чтобы решить эту проблему, команда Start X (бывший «Антифишинг») выпустила продукт Start EDU. Это платформа интерактивного обучения, которая поможет продуктовым командам писать код без уязвимостей, а специалистам по безопасности приложений — кратно снизить риски компрометации систем и клиентских данных.В обзоре мы подробнее рассмотрим, как устроена платформа Start EDU.Описание Start EDUStart EDU помогает разработчикам научиться писать безопасный и качественный код с минимальным отвлечением от рабочих задач.Как это работает:Система проверяет навыки каждого разработчика через тестирование и автоматически составляет карту его компетенций.Руководитель продуктовой команды заполняет анкету, в которой указывает характеристики создаваемого ПО и распределяет разработчиков по командам.На основе этих данных платформа автоматически подбирает обучающие модули под уровень знаний разработчика и его рабочие проекты.Отличия Start EDU от обычных онлайн-курсовЕсть несколько особенностей, которые отличают обучение в Start EDU от типовых курсов по безопасной разработке.Учебные модули построены исходя из проектных задач каждого разработчика в команде. Основная цель — минимизировать количество времени и сил, которые разработчик потратит на обучение. Для этого в обязательных учебных модулях должна быть только та информация, с которой разработчик сталкивается в своей реальной деятельности.Прежде чем подобрать курс, платформа тестирует имеющиеся знания и навыки разработчика, а также анализирует характеристики ПО, с которым он работает в команде. После этого ему автоматически подбираются модули, которые нужно пройти в первую очередь, чтобы закрыть эти потребности.Так можно избежать классического подхода к обучению, когда на всех разработчиков компании массово назначается одинаковый набор курсов, но в реальной работе они не знают, как сделать продукт безопасным. Рисунок 1. Процесс разработки, в котором обучение по безопасности не учитывает специфики проектов Теория основана на экспертных знаниях и практике. Теория в обучении — всегда проблемная часть, потому что информация обычно не привязана к реальной работе специалистов и даёт только поверхностное понимание изучаемой темы. В Start EDU решили эту проблему: на основе личной карты компетенций разработчика платформа предложит ему учебные модули, информацию из которых он сразу сможет использовать в своих рабочих проектах. При этом каждый теоретический блок даёт полную информацию по изучаемой теме.Например, если говорить о безопасной работе с зависимостями, то в учебном модуле будет не общая теория, а конкретные кейсы, которые показывают векторы угроз для разработчиков, имеющих дело с этими зависимостями. Платформа учитывает реальный контекст и старается понятными разработчику терминами и ситуациями описывать эту уязвимость. Рисунок 2. Пример теории из учебного модуля по безопасной работе с зависимостями После теоретической части разработчик проходит тест (квиз) на реальных примерах, чтобы проверить свои знания. Рисунок 3. Процесс разработки, в котором обучение по безопасности учитывает специфику проектов Как устроено обучениеКаждый курс состоит из тем (юнитов) с актуальной теорией, обязательными примерами из реальной среды и проверочными заданиями, которые основаны на историях уязвимых приложений.Юнит — это специальный формат обучающего контента, который используется на платформе. Юниты написаны и построены таким образом, что будут полезны и интересны любому разработчику — специалисты сами выбирают, какие разделы изучать, в зависимости от своего уровня. Рисунок 4. Процесс создания юнита на платформе Среднее время прохождения юнита:Теория — 30–60 минут.Квиз — 10–15 минут, 3–5 заданий.Практика — 15–25 минут.Теоретическая часть описана «общим» языком, который понятен любому разработчику. В ней есть разделы «Зачем этот курс», «Как происходит атака». В разделах, где приводятся примеры кода, разработчики могут выбрать тот язык, на котором они хотят увидеть пример, и затем использовать полученные знания в работе.Квизы с проверочными вопросами, как и теория, основаны на реальных примерах. Примеры доступны на восьми языках. Рисунок 5. Пример проверочного вопроса в квизе В практике разработчикам нужно выполнять задания на поиск уязвимостей в приложениях — выбрать правильные варианты реализации защиты. Рисунок 6. Задание на поиск уязвимостей в приложении в формате ревизии кода (код-ревью) Темы обучающих юнитов Start EDUВ курсе 11 модулей, они охватывают основные темы по информационной безопасности:Защита от подделки межсайтовых запросов (CSRF).Работа с идентификационными файлами (cookie) и HTTP-заголовками.Защита от атак на XML-серверы (XXE).Кодирование и экранирование при работе с браузерами (XSS).Предотвращение манипуляции именами файлов и каталогов (Path Manipulation).Безопасная работа с зависимостями в коде.Работа с SQL.Предотвращение небезопасного прямого доступа (Insecure Direct Object Reference).Обработка входных данных.Работа с секретами (пароли, ключи, токены).Безопасная настройка Kubernetes.Какие языки программирования поддерживаютсяStart EDU даёт актуальную теорию и практику на 7 языках программирования (Java, Python, PHP, SQL, C#, Go, JavaScript) и на языке разметки HTML.Дополнительные возможности продукта Start EDUМасштабируемость на любое количество пользователей.Назначение баллов пользователю за пройденное обучение.Создание, добавление и назначение собственных обучающих материалов.Как продуктовой команде подбирается курсШаг 1. Оценка знаний и навыковStart EDU выявит навыки разработчиков через тестирование и автоматически составит матрицу их компетенций. Это позволит понять, что люди умеют, знают и понимают в безопасной разработке сейчас.Знания проверяются с помощью бесплатного публичного теста Security Champion, который основан на базе реальных кейсов по взлому приложений. В тесте 20 заданий по пяти темам, по каждой из них разработчик получает оценку. Рисунок 7. Личная карта компетенций сотрудника Шаг 2. Определение характеристик продуктаРуководитель (тимлид) заполняет анкету приложения, которым занимается его команда. На основе этой анкеты строится карта архитектуры продукта, по которой станет понятно, что сейчас важнее всего изучить разработчикам.На этом этапе можно добавить всех пользователей на платформу через Active Directory и распределить их по проектам. Рисунок 8. Карта архитектуры продукта, построенная на основе заполнения анкеты Шаг 3. Автоматический подбор обучающих модулей на основе знаний разработчиков и характеристик продуктовПосле тестирования разработчиков и картографирования архитектуры продукта Start EDU автоматически подбирает обучающие модули. Какие-то из них будут обязательными для этого проекта, какие-то — факультативными. В результате получится понятный план по обучению на основе реальных проектов продуктовой команды.Как внедрить Start EDU в работу командыЕсть несколько способов внедрить Start EDU так, чтобы это помогало решать реальные задачи безопасности.Интеграция с Jira. На этапе разработки, когда уже есть команда и она делает функции продукта, платформа может назначить обучение через Jira как задачу. В этом случае обучение выглядит не как внешнее дополнительное поручение, а как обычная рабочая задача, которую нужно закрыть.Ускоренное прохождение точек проверки (security gate). Во время релиза код проверяют сканеры — по их отчётам специалист по безопасности понимает, какие потенциальные уязвимости в коде нужно исправить. Отчёт может состоять из десятков замечаний, которые программист должен взять в работу. Проблема — в том, что сканирование только указывает на замечания, не всегда понятно, как их исправить. На этом этапе можно подключить Start EDU: платформа получит замечания, проанализирует их и даст рекомендации, как их исправить и что нужно изучить по теме.Подход «сдвиг влево» (shift left security). Start EDU можно внедрить уже на этапе требований к команде продукта. Допустим, команда будет делать мобильное приложение. Тогда уже известны потенциальные релевантные векторы угроз и платформа на раннем этапе сможет назначить обучение, чтобы разработчики понимали, как делать те или иные вещи в контексте безопасности. Это позволит на ранних этапах выявлять угрозы и уязвимости.Оценка знаний, которые получил разработчикВ Start EDU можно отслеживать статус обучения по проектам, командам и разработчикам в настоящем времени.Как это выглядит, показано на иллюстрациях далее. Рисунок 9. Личная карта компетенций Рисунок 10. Проектная карта компетенций Рисунок 11. Рейтинг сотрудников Карты компетенций и рейтинг сотрудников показывают, кто и с какими результатами проходит обучение. Также с их помощью можно узнать, в каких вопросах больше всего проблем с точки зрения обучения, какие темы проседают, и на этом основании, к примеру, назначать код-ревью.Ещё один способ проанализировать результаты обучения — провести входное и выходное тестирование с помощью бесплатного публичного теста Security Champion. Можно брать случайную выборку сотрудников, замерять их результаты в начале обучения и в его конце. Так команды безопасности наглядно увидят, каков прогресс у разработчиков и в каких темах они углубили свои знания.Всё это повышает культуру безопасности и учит писать качественный и безопасный код.ВыводыНа новой платформе Start EDU обучение становится для разработчиков интересным, эффективным и применимым на практике. Это возможно благодаря следующим особенностям:Обучение проводится с учётом специфики проекта и продукта.Прохождение курса встраивается в рабочие задачи команды.Практика учитывает разные языки программирования.После обучения можно оценить компетенции команды и каждого разработчика по отдельности.Получить демонстрацию Start EDU для своей команды можно по запросу на сайте вендора.Реклама. Рекламодатель ООО «Антифишинг», ИНН 6950191442, ОГРН 1166952058680LdtCKBgUy

Читать далее

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • PR55.RP55
      Demkd Я бы ещё добавил подсчёт идентичных файлов.  ( если это принципиально не скажется на производительности ) По крайней мере раньше бывало и такое, что в системе десятки идентичных  файлов - но  с разными именами. И Опционально Запуск uVS - в качестве ловушки. Например  программа стартует не как: gvprin , а как firefox.exe и отслеживает всех желающих... приобщиться.    
    • PR55.RP55
      Добавить возможность "автоматического" контроля со стороны оператора\админа за актуальностью\версией установленных программ. т.е. Оператор создаёт файл "Контроль Программ.txt" и следит за его актуальностью. И при открытии меню: Дополнительно > Установленные программы  в списке отображаться не только версия установленной программы - но и её актуальная версия из Контроль Программ.txt * * или же вместо числового значения\версии - отображается запись\уведомление заданное оператором: - например: ! Внимание найден антивирус ! ** Все записи подпавшие под... критерий - перемещаются в начало списка.  
    • demkd
      ---------------------------------------------------------
       4.99.6
      ---------------------------------------------------------
       o Добавлен еще один ключ автозапуска, используемый троянами и майнерами.

       o Добавлена новая опция запуска uVS: Искать в пользовательских каталогах скрытые исполняемые файлы.
         В пользовательских каталогах не должно быть подобных файлов, если же они есть то стоит внимательно изучить их содержимое.
         По умолчанию опция включена, отключить ее можно в окне запуска.
         Если опция включена то просматривается весь каталог "Documents and Settings" (Users+ProgramData для новых систем)
         со всеми подкаталогами. При обнаружении исполняемых файлов с атрибутами "скрытый" или "системный" такой файл добавляется
         в список со статусом "подозрительный", статус может быть снят автоматически если файл есть в базе проверенных файлов.
         Сканирование каталогов идет в отдельном потоке параллельно с построением списка автозапуска,
         однако включение этой опции может увеличить время обновления списка для одноядерных процессоров и систем на HDD.
         Тестировании проводилось только для системы на SSD, тестовый "Documents and Settings" содержал в себе 70979 подкаталогов с 452175 файлами,
         время обновления списка (при запуске uVS сразу после перезагрузки системы) увеличилось на 5%.

       o В лог добавлен статус Windows Defender-а.

       o В лог добавлен статус отслеживания командной строки процессов.

       o Добавлена возможность удаления исключений Windows Defender-а в активной системе без виртуализации реестра с помощью powershell.
         Функция может удалять исключения: путь, процесс, расширение.
         (!) Функция недоступна если powershell отсутствует или powershell не имеет правильной эцп.
       
    • PR55.RP55
      Похоже эти версии https://vms.drweb.ru/virus/?i=21513908 https://vms.drweb-av.es/virus/?i=22278785    
    • demkd
      майнер то старый, но как запускается хз, до создания образа uVS уже прибиты задачи, через которые он почти наверное и запускался, да и uVS запущен без флага HKCR и без флага выгрузки левых потоков, а они были и их там быть не должно.
      Однако самое неприятное то что нет командных строк в истории процессов, потому найти концы уже не получится.. возможно есть баг при включении отслеживания командных строк и это надо будет проверить.
×