Разработчики из компании Valve устранили критические баги в игровом клиенте Steam. Всего уязвимостей насчитали четыре, а их эксплуатация приводила к взлому компьютера и выведения из строя самого игрового клиента.
Потенциальный злоумышленник, найдя эти бреши, мог удалённо привести к сбою в работе Steam у жертвы. Более того, баги позволяли также получить контроль над всеми компьютерами, подключёнными к стороннему игровому серверу.
На сегодняшний день Steam насчитывает более 25 миллионов пользователей и предлагает такие крупные игровые проекты, как Counter Strike: Global Offensive, Dota2 и Half Life.
Уязвимости, о которых стало известно на этой неделе, затрагивали сетевую библиотеку Steam, известную как Steam Sockets. В сущности, эта библиотека является частью набора инструментов, предназначенного для сторонних разработчиков видеоигр.
В случае успешной эксплуатации найденных брешей киберпреступник мог получить контроль над сотнями тысяч устройств пользователей. Сами же жертвы при этом даже не поняли бы, что их атаковали.
Исследователи в области кибербезопасности рассказали Valve о проблеме ещё в сентябре. Теперь, когда готов соответствующий патч, пользователям нужно установить обновление клиента.
Уязвимости получили следующие идентификаторы: CVE-2020-6016, CVE-2020-6017, CVE-2020-6018 и CVE-2020-6019. Все они находятся в версиях библиотеки Steam Sockets до v1.2.0.
Первым трём дырам присвоили 9,8 баллов из 10 по шкале CVSS (то есть статус критических), а четвёртая — 7,5 баллов (высокой степени опасности). Все бреши существуют из-за некорректной обработки отдельных фрагментов функций SNP_ReceiveUnreliableSegment(), AES_GCM_DecryptContext::Decrypt() и CConnectionTransportUDPBase::Received_Data().
Чтобы задействовать баги в атаке, злоумышленник должен подключиться к целевому игровому серверу. Далее атакующему нужно отправить вредоносные пакеты другим игрокам, взаимодействия с которыми не требуется для реализации метода.