Представлен новый метод повышения безопасности ПО на стадии разработки
Исследователи модифицировали библиотеку PyCrypto таким образом, чтобы заранее выявлять проблемы и предоставлять рекомендации по их исправлению.
Объединенная команда исследователей из нескольких университетов Германии сообщила в рамках симпозиума по кибербезопасности USENIX об эффективности предупреждений, уведомляющих разработчиков ПО о небезопасных техниках написания кода. В представленном на конференции документе эксперты описали метод модификации криптографической библиотеки Python. Измененная версия предоставляет разработчикам рекомендации по созданию более безопасного кода.
Большое количество уязвимостей в программном обеспечении появляется из-за разработчиков, которые неправильно используют API безопасности, связанные с защищенными сетевыми подключениями, разрешениями на мобильные приложения и криптографическими API, отметили специалисты. В то же время не существует эффективных инструментов, помогающих разработчикам в создании безопасного ПО.
Вместо альтернативных подходов, таких как упрощение библиотек безопасности или добавление помощи через плагины IDE (Integrated Development Environment), требующих изменений в интерфейсах программирования и устойчивой разработки плагинов для нескольких IDE, исследователи модифицировали библиотеку PyCrypto таким образом, чтобы заранее выявлять проблемы и предоставлять рекомендации по их исправлению.
Модифицированная версия PyCrypto перехватывает вызовы API, сигнализирующие о создании слабых криптографических объектов, таких как Crypto.Cipher.ARC2.new (), которые полагаются на небезопасный алгоритм ARC2. Когда такие объекты создаются, измененная библиотека отображает соответствующее предупреждение.
Данный подход показал свою эффективность и в настоящее время ведется дальнейшая работа по усовершенствованию метода.