2016-02-12 4 views
1

&tldr; Что мешает нам заменить старый Sparkle.framework на новую версию Sparkle.framework?Можно ли заменить Sparkle более новой версией

Sparkle - это структура, обычно используемая в приложениях Mac OS X для управления обновлениями. В последнее время сообщалось об vulnerability нападениях «человек в середине»; и из-за большого количества известных приложений, которые используют Sparkle, ИТ-менеджеры по всему миру начинают терять сон.

Некоторые затронутые приложения, такие как VLC, как сообщается, уже выпустили исправление. Однако, поскольку Sparkle существует так долго, существует потенциально много других приложений, которые уже не активно развиваются, но которые по-прежнему уязвимы к одной и той же проблеме. Мы уже сталкивались с одним из таких приложений.

Поскольку Sparkle.framework представляет собой временную структуру, разумно предположить, что замена старого (в большинстве случаев, 1.5 или 1.6) кода на более новый (1.13.1) код в комплекте приложений позволит приложению для запуска во многих случаях. До сих пор наши световые тесты являются обнадеживающими двумя для двух (это означает, что приложение может начаться, и будет происходить проверка обновлений); но, поощряя оптимистов, это далеко не полный ответ.

Итак, обращаясь к профессионалам - каковы недостатки (или препятствия) для замены старых версий Sparkle.framework в пакетах приложений с последней версией? Могло ли это фактически смягчить уязвимости, ожидая обновления всех затронутых приложений.

Ответ может измениться в зависимости от используемой версии Sparkle и какие функциональные вызовы поддерживались с помощью какой версии. Это также зависит от того, какая функция устарела в новых версиях Sparkle, чего я не знаю.

+0

Там нет недостатков; старые версии Sparkle.framework следует заменить или, по крайней мере, переключить на https, если не использовать его уже. –

+0

Исходный вопрос, возможно, не был достаточно ясным; но, я имею в виду замену Sparkle.framework в приложениях, которые были загружены, а не в приложениях, которые мы разрабатываем сами. – Kent

ответ

1

Если вы разработчик приложения, абсолютно обновите фреймворк и вытащите обновления. Из текста, в котором обсуждается замена блеска «в комплекте приложений», я собираюсь предположить, что вы планируете установить несколько приложений, которые вы установили.

Я бы сказал, что вообще небезопасно вообще, и было бы гораздо более эффективной встречей, чтобы просто установить переменную обновления блеска, чтобы отключить все обновления. Поскольку в кодовой базе произошли существенные изменения между 1.5 и 1.10 (просматривая release notes фреймворк 32-битный, сбрасывал старую среду выполнения Obj-C, удалял сборку мусора и делал многочисленные изменения во внутреннем API), было бы очень рискованно засуньте новый блеск в более старое приложение, если вы не будете испытывать их исчерпывающе или не проверяете использование фреймворка/декомпилируете код.

Я редактируя файл Info.plist изменить SUFeedURL ключ , чтобы указать на https://172.0.0.1/app-name.xml для всех приложений, которые имеют HTTP-чувствует, что уязвима для плохих актеров в управлении взломанных сетей.

Вы также можете отключить автоматическую проверку этих приложений, если хотите. Вот быстрый и грязный чек одна линии за рамки сверкают и не HTTPS источников подачи:

find /Applications ~/Applications /usr -name Sparkle.framework -exec echo {} \; -exec defaults read {}/../../Info.plist SUFeedURL 2>/dev/null \; | grep -vw ^https 

Вы можете mdfind kind:app для проверки приложений за пределами трех папок я подаваемой в команду поиска. Кроме того, имейте в виду другие домашние папки пользователей, если вы действительно реализуете это изменение.Кроме того, для управления несколькими компьютерами, вы хотите, чтобы нажать на профиль или лучше реализован скрипт для разбора и отключить эти приложения:

+0

Со стороны разработчиков я согласен с тем, что обновление не требуется. Вы правильно относитесь к намерению моего вопроса, но в основном обеспокоены приложениями на компьютерах наших пользователей, которые были загружены в другое место. Я бы не попытался запустить обновление с версией frankenstein sparkle; но, что касается смягчения угрозы митма, это казалось разумным. SUFeedURL - отличная альтернатива. (хотя, я знаю, что хотя бы одно из моих приложений имеет этот URL, встроенный в исходный код и недоступный через plist). Сейчас я оставлю свою замену на массе 1.13 ... – Kent

Смежные вопросы