Введение в GitHub Advanced Security

Завершено

GitHub Advanced Security (GHAS) — это комплексный набор функций безопасности, предназначенных для повышения уровня безопасности проектов разработки программного обеспечения. Помимо тесной интеграции с GitHub. GHAS также доступен в качестве расширения в Azure DevOps, предоставляя аналогичные возможности на обеих платформах.

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

Используя эти функции, организации могут заранее выявлять и устранять технический долг в начале жизненного цикла разработки. Это снижает риски безопасности, улучшает качество кода и упрощает долгосрочное обслуживание своих проектов программного обеспечения.

Анализ CodeQL

CodeQL — это подсистема анализа семантического кода, которая помогает разработчикам выявлять проблемы в базах кода. Он предоставляет декларативный язык запросов, предназначенный для поиска шаблонов, которые помогают выявлять ошибки программирования и недостатки проектирования, все из которых способствуют накоплению технического долга. Ее возможности аналитики также можно использовать для обнаружения потенциальных уязвимостей безопасности, таких как недостатки внедрения, проблемы проверки подлинности и проблемы контроля доступа, которые часто свидетельствуют о базовой технической задолженности.

Управление зависимостями

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

Проверка кода

Сканирование кода автоматически сканирует репозитории кода для потенциальных уязвимостей безопасности и ошибок кодирования, включая запахи кода и антишаблоны, используя сочетание статических методов анализа. Он обнаруживает распространенные проблемы безопасности, такие как межсайтовые скрипты (XSS), внедрение SQL и переполнение буферов, которые, аналогично анализу на основе CodeQL, обычно указывают на технический долг, вызванный небезопасными методами написания кода. Кроме того, сканирование кода безопасности предоставляет полезные сведения о рисках качества кода и безопасности, помогая определять приоритеты и устранять технический долг в наиболее эффективном и эффективном режиме.