В protobuf.js, ключевой библиотеке для Node.js, было обнаружено шесть уязвимостей, позволяющих удаленно выполнять код или вызывать отказ в обслуживании. Проблема не только техническая: проект поддерживают волонтеры без финансирования, в то время как такие гиганты, как Google, используют его, не внося вклад в его безопасность.
Ошибки сериализации, открывающие путь к атакам 🛡️
Уязвимости затрагивают манипуляцию буферами и проверку типов в protobuf.js, позволяя злоумышленнику отправлять некорректные сообщения, которые переполняют память или выполняют произвольный код. Корень проблемы кроется в нехватке ресурсов для непрерывных аудитов. Крупные компании полагаются на эту библиотеку для критически важных систем, но не инвестируют в ее поддержку, оставляя безопасность на плечах нескольких неоплачиваемых разработчиков.
Open source: где корпорации просят, но не платят 💸
Google, Amazon и другие используют protobuf.js для передачи данных в своих облаках, но когда появляются ошибки, патч пишет волонтер между двумя сменами на своей основной работе. Это все равно что просить соседа бесплатно сторожить ваш дом, а когда вор проникает внутрь, жаловаться, что он не поставил лучшие замки. Граждане полагаются на системы, которые держатся на кофе и доброй воле, в то время как компании зарабатывают миллионы.