Вскоре после того, как из Белого дома поступил призыв к федеральным ведомствам активнее пользоваться проектами с открытым кодом, правительство начало инициативу по снижению числа уязвимостей в таких программных продуктах посредством использования более совершенных средств ревизии кода и организации поиска ошибок за вознаграждение.
К концу сентября в подразделении по информационной безопасности Министерства внутренней безопасности собираются выделить средства на проект, призванный улучшить результативность инструментов статического анализа кода.
«Сейчас мы анализируем решения, предложенные научным сообществом и представителями малого бизнеса», — сообщил Кевин Грин, руководитель министерской программы по повышению качества ПО.
По его словам, инструменты статического анализа кода сегодня выдают слишком много ложноположительных срабатываний и пропускают ошибки безопасности, которые нередко открывают уязвимости в ПО.
«Если у инструмента очень много ложноположительных срабатываний, разработчики прекращают им пользоваться, — отметил он. — Образуется узкое место — огромный перечень псевдоошибок, которые приходится перепроверять. Это замедляет работу, так что от инструмента отказываются вовсе. Результат — огромное количество уязвимых продуктов с открытым кодом».
По словам Грина, его подразделение взаимодействует с коммерческими компаниями, госструктурами и научным сообществом, чтобы искать недоработки в нынешних технологиях и выбирать элементы, которые нужно усовершенствовать. Эта инициатива получила название Static Tool Analysis Modernization Project. Ее задача — вывести открытые средства статического анализа кода на качественно новый уровень.
Специалисты подразделения также собрали на единой площадке под названием Software Assurance Marketplace комплект программ с открытым кодом для тестирования инструментов анализа кода.
«Наш тестовый комплект помогает выявить, какие инструменты анализа хорошо справляются со своей задачей, а какие не справляются вообще, — продолжил Грин. — Он доступен для использования с 2014 года. Сегодня у него почти тысяча пользователей, на нем проверяются 20 средств статического анализа, поддерживающих различные языки программирования, в день проводится около 2 тыс. проверок».
По его словам, задача проекта — создать нечто вроде Underwriters Laboratories, компании по сертификации продуктов на безопасность, но для программного обеспечения.
«Должна быть предусмотрена процедура сертификации, позволяющая программному обеспечению получать что-то вроде тех логотипов безопасности, которыми UL маркирует пищевые продукты, — подчеркнул Грин. — Такая сертификация гарантировала бы доверие тому или иному программному продукту исходя из известных нам свойств».
Еще одна инициатива предусматривает создание программных инструментов, которые не только помогают находить новые уязвимости в открытом коде, но и предлагают исправления.
По мере роста распространенности свободного ПО увеличивается и число уязвимостей. В базе Black Duck Software, специализирующегося на управлении использованием ПО с открытым кодом в организациях, имеется уже без малого 1,5 млн проектов Open Source.
Уязвимости в открытом коде могут быть особенно опасными, отмечает Майк Питтенджер, вице-президент по стратегии безопасности Black Duck Software. В продуктах с открытым кодом обычно отсутствует механизм автоматической рассылки заплат.
"Увы, у многих проектов с открытым кодом нет обширных пользовательских сообществ или компаний, которые занимались бы разработкой заплат и сопровождением, — добавил Грин. — Поэтому мы хотим построить основанную на принципах краудсорсинга платформу, предусматривающую вознаграждение за поиск ошибок и разработку исправлений. Сейчас мы изучаем, как это можно сделать. Надеюсь, очень скоро замысел обретет конкретные очертания и мы выделим его в отдельный проект».
Такой проект начнется с малых инвестиций и опытного этапа, в ходе которого выяснится, насколько идея реализуема. Кроме того, нужно будет определить, как решать проблемы приватности и раскрытия информации.
«Если мы научимся находить уязвимости нулевого дня до того, как это сделают злоумышленники, и оперативно вносить исправления, значит, мы на верном пути», — заключил Грин.