В коде Steam исправили критическую уязвимость, просуществовавшую больше десяти лет
На брешь в защите из-за простого бага обратили внимание лишь в начале 2018-го.
30 мая специалист по кибербезопасности Том Корт (Tom Court) описал уязвимость в коде клиента Steam, которую сам же и помог обнаружить разработчикам.
Эксплойт был связан с тем, как программа работает с фрагментами блоков информации, передающимися через UDP и собственный протокол Steam. В определённых условиях могло произойти повреждение содержимого памяти, что позволяло осуществить удалённое выполнение кода (RCE).
Уязвимости подобного рода считаются одними из самых опасных, так как фактически дают взломщику доступ к ПК жертвы.
По словам Корта дело, скорее всего, было в невнимательности программистов, так как ошибка была достаточно простой и просуществовала в Steam как минимум десять лет. Похоже, что старая часть кода, где и находился баг, в остальном работала исправно, и у Valve попросту не было причин проверять её на соответствие всем современным стандартам безопасности.
При этом эксплойтом стало пользоваться куда сложнее с июля 2017 года, когда разработчики переработали защиту от уязвимостей. После обновления при попытке взлома тем же путём Steam попросту «вылетал».
Корт сообщил о «дыре» в феврале 2018-го, и Valve выпустила бета-версию патча спустя лишь восемь часов — удивительно быстро, отмечает эксперт. Окончательно уязвимость устранили 22 марта.
В начале мая 2018-го Valve запустила программу денежных вознаграждений за найденные в коде Steam уязвимости.