Популярното хранилище за софтуерни проекти GitHub въведе услуга за сканиране на кода, достъпна за всички потребители. Досега подобна услуга се предлагаше само за членовете на ограничената програма за тестване на нови експериментални функции.
Услугата сканира всяка „git push” операция за потенциални уязвимости. Резултатът се прикрепя директно към pull-заявката, става ясно от публикация в блога на GitHub.
Проверката се извършва с помощта на механизма CodeQL – анализиращ шаблон с типични примери за уязвим код. Този механизъм генерира шаблон с уязвим код, с който се открива наличието на подобна уязвимост в кода на други проекти.
При бета тестовете на услугата, в сканираните около 12 хиляди хранилища са открити повече от 20 хиляди бъга в сигурността, сред които сериозни проблеми, водещи до отдалечено изпълнение на код и заместване на SQL заявки.
72% от откритите проблеми са идентифицирани на етапа на разглеждане на pull-заявката, преди тя да бъде приета, и са отстранени за по-малко от 30 дни. За сравнение, общата статистика показва, че само 30% от уязвимостите се отстраняват за по-малко от месец след откриването им.