Плачевная ситуация с безопасностью WebKit в дистрибутивах Linux

Один из разработчиков web-браузера Epiphany (GNOME Web) рассказал о проблемах с поставкой WebKit в составе дистрибутивов Linux. Если дистрибутивы более-менее научились справляться с обновлением браузеров, то с обособленной поставкой браузерных движков всё очень плохо. В большинстве дистрибутивов поставляются устаревшие версии портов WebKit (WebKitGTK+, QtWebKit и WebKitEFL), содержащие обилие неисправленных опасных уязвимостей.

Дистрибутивы поставлены перед дилеммой - обеспечить поставку свежих версий, но столкнуться с чередой проблем из-за возможного нарушения совместимости с зависимостями, или остановиться на определённом выпуске движка, но утонуть в рутине по бэкпортированию исправлений уязвимостей. В настоящее время актуальные версии WebKitGTK+ поддерживаются только в Arch и Fedora. Свежий WebKitGTK+ также доступен в Debian testing, за исключением периодов заморозки пакетной базы перед очередным релизом, Debian unstable и openSUSE Tumbleweed. В стабильных релизах Debian и openSUSE поставляются устаревшие версии WebKitGTK+. В Ubuntu обновления выпускаются выборочно и с большой задержкой (в Ubuntu 14.04 сейчас WebKitGTK+ 2.4.8, хотя 2.4.9 вышел восемь месяцев назад, а в Ubuntu 15.10 - WebKitGTK+ 2.8.5 в котором имеется 40 уязвимостей).

WebKitGTK+ используется в таких приложениях, как Anjuta, Banshee, Bijiben (GNOME Notes), Devhelp, Empathy, Evolution, Geany, Geary, GIMP, gitg, GNOME Builder, GNOME Documents, GNOME Initial Setup, GNOME Online Accounts, GnuCash, gThumb, Liferea, Midori, Rhythmbox, Shotwell, Sushi и Yelp (GNOME Help). Следует отметить, что бюллетени с отчетами об устранённых в WebKitGTK+ уязвимостей, регулярно стали выходить только последнее время и разработчики приложений были вынуждены отслеживать связанные с безопасностью исправления самостоятельно. Несколько месяцев назад отношение к безопасности изменилось и WebKitGTK+ стал формировать регулярные отчеты с привязкой к идентификаторам CVE.

При этом всплывает новая проблема - сопровождение устаревающей ветки WebKitGTK+ 2.4, последней с поддержкой WebKit1 API. В новых выпусках WebKitGTK+ поддерживается только WebKit2 API, но не все приложения пока поддерживают данный API. Портирование исправлений в ветку WebKitGTK+ 2.4.x является трудоёмкой задачей и отнимает много ресурсов, поэтому скорее всего поддержка этой ветки в ближайшем будущем будет прекращена. Как один из выходов упоминается удаление поддержки API WebKit1 из дистрибутивов, но такой шаг приведёт к невозможности использования ряда популярных приложений.

Что касается WebKitEFL и QtWebKit, то WebKitEFL, развиваемый проектом Enlightenment, в обособленном виде не входит в состав дистрибутивов и, в основном, используется поставщиками решений для встраиваемых систем, которые не занимаются бекпортированием исправлений уязвимостей. Движок QtWebKit прекратил своё развитие, но несмотря на решение о переходе на QtWebEngine, он по-прежнему используется в проектах KDE, в том числе в Amarok, Calligra, KDevelop, KMail, Kontact, KTorrent, Quassel, Rekonq и Tomahawk. Ситуация с безопасностью QtWebKit оставляет желать лучшего, так как кодовая база движка на годы отстаёт от основного WebKit, а исправления бэкпортируются выборочно и не регулярно. Большое число уязвимостей остаются неисправленными и затрагивают все приложения на базе QtWebKit, которые не спешат переходить на новый движок QtWebEngine, поддерживаемый сообществом Qt.

Полностью:
http://www.opennet.ru/opennews/art.shtml?num=43806

style="display:inline-block;width:728px;height:15px"
data-ad-client="ca-pub-4493870272388852"
data-ad-slot="6622567932">