Appercut Безопасность разработки и контроль качества кода - | Москва, 2017 - Attack Killer
←
→
Транскрипция содержимого страницы
Если ваш браузер не отображает страницу правильно, пожалуйста, читайте содержимое страницы ниже
Жизненный цикл разработки
программного обеспечения
Проектирование, разработка и
тестирование программного
обеспечения требуют контроля
качества программного
обеспечения
безопасности программного
обеспечения
соответствия
запланированным срокам и
бюджету
Контроль внутренней (in-house) и внешней разработки имеет свои особенностиСпецифика разработки in-house
Несистемные требования
по безопасности приложений
Упор на функционал и нагрузку,
игнорирование стандартов
Специфическая модель угроз
Классические модели угроз не актуальны
Службы ИБ в разработке не участвуют
Привлекаются только к расследованиям
инцидентов
Упрощенный процесс разработки
Изменения идут непрерывно, код правится
вместо выпуска патчей
Используются закрытые платформы
SAP, Oracle, MS Dynamics, 1C, Lotus, …Специфика внедрения и использования
сторонних приложений
Нет контроля при разработке
Контроль возможен только при приемке
программного обеспечения
Большая предварительная работа
Все требования можно и нужно
сформулировать до начала разработки
Периодический контроль обновлений
При смене версий контроль требований по
безопасности нужно проводить зановоКакие задачи решает Appercut
Appercut — система автоматизированного контроля исходного кода бизнес-
приложений на соответствие требованиям по безопасной разработке
программного обеспечения
Проверяет качество кода и находит уязвимости еще на этапе
программирования. В основе анализа исходных кодов лежит постоянно
обновляемая база знаний о принципах и методах безопасной разработки
Автоматически генерирует отчеты о найденных уязвимостях и формирует
задачи для программистов
Гарантирует безопасность внутренних разработок
При интеграции в процесс приемки бизнес-приложений обеспечивает
безопасный ввод в эксплуатацию и обновление программного обеспечения
За счет исправления ошибок по отчетам позволяет проводить обучение
программистов в процессе работыЧто ищет Appercut
Непреднамеренные ошибки
• недостатки, связанные с некорректной обработкой входных данных
• недостатки авторизации
• логические ошибки
Преднамеренные ошибки (закладки)
Out of Scope: уязвимости внедрения и эксплуатации
Типичные недостатки программы
• OWASP, OWASP TOP 10
• Common Weakness Enumeration
• Language specific best practices
Недостатки, зависящие от специфики приложения
• особенности реализации алгоритмов и систем защиты
• «это не баг, а фича»
Недостатки, зависящие от предметной области приложенияСценарии использования Appercut
Поиск типичных Контроль Поиск всех типов
недостатков требований к коду недостатков
Работает Требуется предварительный
Требуется
из коробки. ручной анализ кода для
трансляция
Расширение базы создания application-specific
требований из
знаний на сигнатур и формирования
неформальной
application-specific рекомендаций по
нотации в
недостатки модификации процессов
формальную
обсуждается разработки и архитектуре
(сигнатуры)
отдельно средства
Специалисты Разовый анализ кода без
Appercut могут покупки продукта
участвовать в
формировании и Экономически обоснованно
рецензировании для приложений, функции
требований к ПО которых зафикисированыСхема работы Appercut
Исходный код APPERCUT
Постановка задачи по Appercut Knowledge Отчет о соответствии
исправлению Base требованияМесто Appercut в SDLC
Программные API позволяют
встраивать вызов Appercut и
запускать процесс анализа
исходного кода в любой процедуре
жизненного цикла разработки
программного обеспеченияПреимущества Appercut
Непрерывность бизнес-процессов: исключает необходимость
останавливать исполнение критичных для бизнеса приложений для
трудоемкой и длительной ручной проверки кода или внешнего аудита.
Адаптируемость: интегрируется в любой этап жизненного цикла
разработки между программированием и приемкой заказчиком.
Масштабируемость: поддерживает более 20 языков программирования,
лицензия позволяет исследовать любое количество приложений
бесконечное количество раз.
Поддержка стандартов: в базе Appercut заложены требования
международных стандартов PCI DSS, лучшие практики CERT, OWASP и CWE,
рекомендации SDLC, а также рекомендации производителей платформ 1С,
SAP, Oracle, Microsoft. Пользователи Appercut могут добавлять в базу
данных некорректных программных конструкций собственные шаблоны,
отражающие специфику бизнес-процессов организации.
Простота использования: не требует специальных знаний или навыков
программирования. Результат анализа кода приложения или его фрагмента
представляет собой отчет с рекомендациями по исправлению ошибок.Спасибо за внимание!
Вы также можете почитать