0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Практическая<a>трансформация DevOps в DevSecOps</a>потребует применения ряда подходов. Один из них --<strong>SAST</strong>.</p>
1
<p>Практическая<a>трансформация DevOps в DevSecOps</a>потребует применения ряда подходов. Один из них --<strong>SAST</strong>.</p>
2
<p><strong>SAST</strong>представляет собой статический анализ кода на наличие уязвимостей, однако это совсем не то же самое, что<strong>SonarQube</strong>. В случае с SAST проверка осуществляется не только по стилю или паттернам, так как тут анализ производится:</p>
2
<p><strong>SAST</strong>представляет собой статический анализ кода на наличие уязвимостей, однако это совсем не то же самое, что<strong>SonarQube</strong>. В случае с SAST проверка осуществляется не только по стилю или паттернам, так как тут анализ производится:</p>
3
<ul><li>по DataFlow;</li>
3
<ul><li>по DataFlow;</li>
4
<li>по дереву уязвимостей;</li>
4
<li>по дереву уязвимостей;</li>
5
<li>по конфигурационным файлам и т. д., то есть мы говорим обо всем, что непосредственно касается кода.</li>
5
<li>по конфигурационным файлам и т. д., то есть мы говорим обо всем, что непосредственно касается кода.</li>
6
</ul><h4>Плюсы очевидны:</h4>
6
</ul><h4>Плюсы очевидны:</h4>
7
<p>1) уязвимости выявляются в коде<strong>на раннем этапе разработки</strong>, то есть тогда, когда еще нет ни стендов, ни готового инструмента; 2) появляется возможность<strong>инкрементального сканирования</strong>. Речь идет о сканировании конкретного участка кода, в который были внесены изменения, а также о сканировании только той фичи, которая сейчас в разработке, что в итоге приводит к снижению времени сканирования.</p>
7
<p>1) уязвимости выявляются в коде<strong>на раннем этапе разработки</strong>, то есть тогда, когда еще нет ни стендов, ни готового инструмента; 2) появляется возможность<strong>инкрементального сканирования</strong>. Речь идет о сканировании конкретного участка кода, в который были внесены изменения, а также о сканировании только той фичи, которая сейчас в разработке, что в итоге приводит к снижению времени сканирования.</p>
8
<p>Но есть и<strong>минусы</strong>, например, отсутствие поддержки нужных языков.</p>
8
<p>Но есть и<strong>минусы</strong>, например, отсутствие поддержки нужных языков.</p>
9
<h4>Необходимые интеграции</h4>
9
<h4>Необходимые интеграции</h4>
10
<p>Среди необходимых интеграций, которые должны быть в инструментах, специалисты выделяют следующие:</p>
10
<p>Среди необходимых интеграций, которые должны быть в инструментах, специалисты выделяют следующие:</p>
11
<ol><li><strong>Инструмент интеграции</strong>: TeamCity, Jenkins, Gitlab CI.</li>
11
<ol><li><strong>Инструмент интеграции</strong>: TeamCity, Jenkins, Gitlab CI.</li>
12
<li><strong>Среда разработки</strong>: Visual Studio, Intellij IDEA. При этом разработчику удобнее не погружаться в малопонятный интерфейс, который еще нужно запомнить, а непосредственно на рабочем месте и в своей среде разработки наблюдать все нужные интеграции и уязвимости.</li>
12
<li><strong>Среда разработки</strong>: Visual Studio, Intellij IDEA. При этом разработчику удобнее не погружаться в малопонятный интерфейс, который еще нужно запомнить, а непосредственно на рабочем месте и в своей среде разработки наблюдать все нужные интеграции и уязвимости.</li>
13
<li><strong>Code review</strong>: ручное ревью, SonarQube.</li>
13
<li><strong>Code review</strong>: ручное ревью, SonarQube.</li>
14
<li><strong>Трекеры отслеживания дефектов</strong>: Jira, Bugzilla.</li>
14
<li><strong>Трекеры отслеживания дефектов</strong>: Jira, Bugzilla.</li>
15
</ol><p>На картинке выше как раз таки и отображены некоторые лучшие представители статического анализа.</p>
15
</ol><p>На картинке выше как раз таки и отображены некоторые лучшие представители статического анализа.</p>
16
<p>Однако важны не инструменты, а процесс, вследствие чего есть ряд Open Source-решений, которые тоже хороши при обкатке процесса:</p>
16
<p>Однако важны не инструменты, а процесс, вследствие чего есть ряд Open Source-решений, которые тоже хороши при обкатке процесса:</p>
17
<p>Разумеется,<strong>SAST Open Source</strong>-инструменты не обнаружат много уязвимостей либо сложные DataFlow, однако при построении процесса их не только можно, но и нужно использовать. Все дело в том, что они помогут вам понять, как именно будет выстроен процесс, кто конкретно будет отвечать на баги, а кто составлять отчеты. Таким образом, на начальном этапе построения безопасности кода Open Source-решения -- вполне себе вариант.</p>
17
<p>Разумеется,<strong>SAST Open Source</strong>-инструменты не обнаружат много уязвимостей либо сложные DataFlow, однако при построении процесса их не только можно, но и нужно использовать. Все дело в том, что они помогут вам понять, как именно будет выстроен процесс, кто конкретно будет отвечать на баги, а кто составлять отчеты. Таким образом, на начальном этапе построения безопасности кода Open Source-решения -- вполне себе вариант.</p>
18
<p><em>По материалам https://habr.com/ru/company/oleg-bunin/blog/448488/.</em></p>
18
<p><em>По материалам https://habr.com/ru/company/oleg-bunin/blog/448488/.</em></p>
19
<p>Хотите знать больше? Добро пожаловать на курс<a>DevSecOps</a>!</p>
19
<p>Хотите знать больше? Добро пожаловать на курс<a>DevSecOps</a>!</p>
20
20