The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

26.11.2015 12:34  Демонстрация неэффективности внедрения в Firefox проверки дополнений по цифровой подписи

Дэн Стиллман (Dan Stillman), разработчик браузерного дополнения Zotero, выступил с критикой навязываемой проектом Mozilla обязательной проверки дополнений по цифровой подписи. Напомним, что под предлогом борьбы с распространением вредоносных и шпионящих за пользователями дополнений, начиная с Firefox 43 Mozilla переходит к схеме обязательной проверки дополнений по цифровой подписи.

Дэн Стиллман попытался показать, что переход к использованию только подписанных дополнений приведёт лишь к сложностям для разработчиков, и никак не повлияет на безопасность, а быть может даже ухудшит ситуацию с распространением уязвимых дополнений. В частности, процесс верификации подразумевает обязательную загрузку всех дополнений, в том числе поставляемых через сторонние каналы распространения, на сайт Mozilla для прохождения автоматизированной или ручной проверки. Первая проблема в том, что в случае невозможности применить автоматизированную проверку ручная проверка занимает в среднем семь недель. Возникновение подобных задержек не только затягивает поставку новых выпусков, но и мешает оперативной доставке обновлений с устранением уязвимостей и серьёзных ошибок.

Вторая проблема в том, что авторы вредоносных дополнений могут легко обмануть тесты автоматизированной системы проверки. Для демонстрации своего заявления Стиллман подготовил прототип вредоносного дополнения, которое благодаря применению нехитрых приёмов скрытия вредоносной активности, успешно прошло автоматизированную проверку и было заверено цифровой подписью Mozilla. При этом дополнение осуществляло перехват запросов к сайтам, открываемым через HTTP/HTTPS, и собирало данные о паролях, после чего отправляло полученные сведения на внешний HTTP-сервер. Более того, успешно прошедшее тестирование дополнение позволяло запустить в системе произвольный процесс при открытии определённого URL или загрузить JavaScript-код с внешнего сервера и выполнить его с привилегиями браузера.

Для запуска кода в примере применялась техника скрытия действий через компоновку операции путём соединения нескольких строк и последующего выполнения результирующей строки. В частности, nsIProcess формируется через Components.interfaces["nsI" + "p".toUpperCase() + "rocess"], а eval запускается через window['e'.replace() + 'val'](req.responseText)). Блок для перехвата паролей вообще не потребовал выдумывания обходных путей и был пропущен системой проверки как есть. В ходе обсуждения несколько разработчиков из сообщества Mozilla согласились, что нереально на основе проведения статического анализа отделить полезное и вредоносное использование свойств в коде JavaScript, особенно в контексте того, что код можно сгенерировать на лету и выполнить через eval().

При этом, несмотря на то, что автоматизированная проверка создаёт лишь видимость безопасности, внедрение обязательного применения цифровых подписей никто не собирается отменять - лидер команды Mozilla по взаимодействию с разработчиками дополнений, указал на то, что большинство авторов вредоносных дополнений ленивы и не будут прибегать к подобным техникам скрытия вредоносной активности, что позволит блокировать большинство вредоносных дополнений. После обсуждения проблемы созданное демонстрационное дополнение было занесено в чёрный список, но никаких действий по блокированию показанных проблем предпринято не было - для повторного автоматизированного тестирования и обхода чёрного списка потребовалось лишь поменять идентификатор дополнения.

Доводы Стиллмана также подтверждает недавно проведённое исследование дополнений в каталоге приложений Chrome, показавшее неэффективность уже внедрённых в каталоге Chrome механизмов проверки дополнений. Исследование показало, что ряд популярных дополнений, насчитывающих сотни тысяч пользователей, нарушают требования по соблюдению приватности, отслеживают перемещения пользователя и передают полученную статистику вовне. При этом, важно то, что подобный сбор данных производится независимо от применения специальных дополнений для блокирования отслеживания перемещений и инкогнито-режимов.

Дополнения имеют полный доступ к истории посещений, cookie, всем открываемым страницам и частной информации, что создаёт тепличные условия для злоупотреблений. Например, многие авторы дополнений соглашаются на сотрудничество с рекламными сетями и маркетинговыми компаниями, и вставляют их блоки кода в свои дополнения. Подобные блоки загружается динамически и могут привести к выполнению любого JavaScript-кода в контексте дополнения. Данный код никто не контролирует и он не проходит проверку в каталоге дополнений, несмотря на то, что формально само дополнение прошло верификацию.

Ярким примером является дополнение Hoverzoom с аудиторией более миллиона пользователей, которое после инцидента в 2013 году было удалено из каталога Chrome, но вскоре опять вернулось в него и возобновило порочную практику. Аналогичные проблемы свойственны и дополнениям из каталога Firefox, например, отправка всех данных о посещения выявлена в дополнении Ant Video Downloader, которое установлено у более чем у 400 тысяч пользователей и до сих пор предлагается для загрузки, несмотря на наличие вредоносного кода.

  1. Главная ссылка к новости (http://danstillman.com/2015/11...)
  2. OpenNews: Тестирование Firefox 43-beta и Firefox Developer Edition 44
  3. OpenNews: Mozilla отложила блокирование Firefox-дополнений без цифровой подписи
  4. OpenNews: Firefox переходит на новый API разработки дополнений, совместимый с API для Chrome
  5. OpenNews: Браузерное дополнение Hoverzoom уличено в поставке вредоносного кода
  6. OpenNews: Mozilla переходит к обязательной проверке Firefox-дополнений по цифровой подписи
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: firefox
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, A.Stahl, 12:59, 26/11/2015 [ответить] [смотреть все]
  • +46 +/
    >большинство авторов вредоносных дополнений ленивы

    Это они-то ленивы?! Да они не могут быть ленивыми уже просто по сути своей деятельности! Ленивый там далеко не уедет.

     
     
  • 2.10, eRIC, 14:09, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]
  • +/
    скорее всего имелось в виду что они не будут заморачиваться с цифровой подписью ... весь текст скрыт [показать] [показать ветку]
     
  • 2.11, Anonymous_, 14:12, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +12 +/
    > большинство авторов вредоносных дополнений ленивы и не будут прибегать к подобным техникам скрытия вредоносной активности

    ага, у меня аж глаза на лоб полезли.

     
  • 2.13, Michael Shigorin, 14:34, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +12 +/
    >>большинство авторов вредоносных дополнений ленивы
    > Это они-то ленивы?!

    Сами они ленивы.

     
     
  • 3.42, Sluggard, 22:04, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Отсюда мы поняли, что Миша является автором вредоносных дополнений для Firefox ... весь текст скрыт [показать]
     
     
  • 4.48, Michael Shigorin, 00:46, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Железная логика, а теперь докажите ц наш класрук и математик в ФМШ А ведь вс... весь текст скрыт [показать]
     
     
  • 5.49, Sluggard, 00:48, 27/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    А чего ты оскорбился тогда За авторов малвари обидно 171 Не верю 187 ... весь текст скрыт [показать]
     
     
  • 6.50, Michael Shigorin, 00:56, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Не оскорбился, а оторопел За мозиллу обидно И за нас, ейных юзеров ... весь текст скрыт [показать]
     
     
  • 7.51, Sluggard, 01:00, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    ESR до весны поддерживается Проживём ... весь текст скрыт [показать]
     
  • 4.78, IB, 00:18, 20/12/2015 [^] [ответить] [смотреть все]  
  • +/
    Марш учить формальную логику, в частности смысл Forall и Exists.
     
  • 1.3, Аноним, 13:14, 26/11/2015 [ответить] [смотреть все]  
  • –4 +/
    Хорошая демонстрация , а сообщил он о ней через сколько мегабайт полученых д... весь текст скрыт [показать]
     
     
  • 2.5, Аноним, 13:19, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Сходил по ссылке к новости, я так понял он этот плагин не пытался продвинут в р... весь текст скрыт [показать] [показать ветку]
     
  • 1.4, Аноним, 13:18, 26/11/2015 [ответить] [смотреть все]  
  • –8 +/
    Пиар zotero, ящитаю.
     
  • 1.6, xPhoenix, 13:23, 26/11/2015 [ответить] [смотреть все]  
  • +/
    Вижу решение: Mozilla создаёт каталог приложений, в котором подписанные и проверенные дополнения отмечены специальным значком. Если пользователь ставит неподписанное или непро... WAIT, OH SHI~ Да ведь уже прямо сейчас всё так и работает!
     
     
  • 2.18, cmp, 15:15, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    это не решение, а булшит, такое же как и специальные значки для https - долбоз... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.67, ZiNk, 12:58, 28/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Долбозвончиков и так разведут Отдельную сборку с ФФ, например, сделают и постав... весь текст скрыт [показать]
     
  • 1.9, iPony, 13:57, 26/11/2015 [ответить] [смотреть все]  
  • +/
    Shumway то когда подпишут? (единственное расширение ради которого у меня стоит фурифокс)
    https://github.com/mozilla/shumway/issues/2329
     
  • 1.14, Аноним, 14:35, 26/11/2015 [ответить] [смотреть все]  
  • +3 +/
    А нельзя добавить в браузер нормальную систему безопасности с разветвленной стру... весь текст скрыт [показать]
     
     
  • 2.26, Efrem, 18:37, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Все бы хорошо Но домохозяйки не разбирутся А у браузера аудитория не только пр... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.70, AlexYeCu_not_logged, 14:14, 28/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Откуда у домохозяек фаерфокс У них Хром, а то и вовсе ИЕ Ну или Сафари, ежди М... весь текст скрыт [показать]
     
  • 2.61, АнонимУася, 10:29, 27/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Нужно вообще убрать маркет дополнений и выпилить все к чертям Все, что пользова... весь текст скрыт [показать] [показать ветку]
     
  • 1.15, rshadow, 14:54, 26/11/2015 [ответить] [смотреть все]  
  • +3 +/
    Давно надо делать допуски для дополнений аналогично андроидам и айфонам: лезет в сеть - спросить у пользователя можно или нет, и адрес показать. 95% плагинам сеть не нужна априори.
     
  • 1.16, Аноним, 15:03, 26/11/2015 [ответить] [смотреть все]  
  • –2 +/
    Ну дык сейчас им нужно просто быстро пепевести всех на подписи и детально провер... весь текст скрыт [показать]
     
  • 1.17, Sluggard, 15:12, 26/11/2015 [ответить] [смотреть все]  
  • +6 +/
    С нетерпением ждём в комментах тех, кто с таким упоением доказывал нужность подписанных дополнений. Мол, обязательные подписи и пользователя защитят, и Мозилла репутацию сохранит.
    Ну-ну.
     
     
  • 2.52, qwerty, 01:20, 27/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Таки это скорее плюс чем минус, даже с учётом того, что проверку можно обойти Т... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.53, Sluggard, 01:24, 27/11/2015 [^] [ответить] [смотреть все]  
  • +2 +/
    Руление Мозиллой парком дополнений каждого пользователя 8212 это не круто За... весь текст скрыт [показать]
     
     
  • 4.54, qwerty, 01:33, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Во первых даже в Chrome не блокируют блокировщики рекламы А во вторых для youtu... весь текст скрыт [показать]
     
     
  • 5.55, Sluggard, 01:37, 27/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    А вот YouTube Center из гугловского магазина вылетел только так Ага, то есть по... весь текст скрыт [показать]
     
  • 4.58, iPony, 07:42, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Если какой-то ресурс сильно козлит, то просто надо валить с этого ресурса Введе... весь текст скрыт [показать]
     
     
  • 5.62, Sluggard, 14:35, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Ты не путаешь наличие рекламы на ресурсе и возможность с помощью расширения в бр... весь текст скрыт [показать]
     
     
  • 6.64, xxblx, 02:29, 28/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Так себе сравнение На опеннете не заставляют перед чтением новости 5 секунд смо... весь текст скрыт [показать]
     
     
  • 7.66, Sluggard, 11:56, 28/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Масштабы разные на много порядков, вот и не заставляют Суть не в том, вообще И... весь текст скрыт [показать]
     
  • 4.69, AlexYeCu_not_logged, 14:11, 28/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Завтра На Андроиде уже есть неотключаемая хренобенька с Яндекс-поиском, делающа... весь текст скрыт [показать]
     
     ....нить скрыта, показать (9)

  • 1.19, anonimous, 16:16, 26/11/2015 [ответить] [смотреть все]  
  • +/
    Спасибо, Кэп!
     
  • 1.20, klalafuda, 16:19, 26/11/2015 [ответить] [смотреть все]  
  • +4 +/
    > При этом, несмотря на то, что автоматизироанная проверка создаёт лишь видимость безопасности, внедрение обязательного применения цифровых подписей никто не собирается отменять - лидер команды Mozilla по взаимодействию с разработчиками дополнений, указал на то, что большинство авторов вредоносных дополнений ленивы и не будут прибегать к подобным техникам скрытия вредоносной активности, что позволит блокировать большинство вредоносных дополнений.
    > особенно в контексте того, что код можно сгенерировать на лету и выполнить через eval().

    Конечно не будут. Они скорее сольют реальный код бекдора с удаленного хоста одним из миллиона способов и запустят его. В результате само дополнение будет (практически) чисто как слеза младенца и пройдет любые проверки.

     
  • 1.21, IZh., 17:27, 26/11/2015 [ответить] [смотреть все]  
  • +2 +/
    А что делать с локальными дополнениями? Допустим, у меня есть дополнения, которые я не хочу выкладывать в маркет, а хочу использовать на своих компах. Я теперь не смогу их установить?
     
     
  • 2.23, Sluggard, 18:07, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Dev-версия Огнелиса позволяет ставить неподписанные Ну и ещё, кажется, обещали ... весь текст скрыт [показать] [показать ветку]
     
  • 2.24, Аноним, 18:11, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Юзать ночнушку или самосборку фокса если дать возможность отключать проверку в ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.25, IZh., 18:12, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Ну, можно было бы предусмотреть что-то типа опции командной строки, чтобы устано... весь текст скрыт [показать]
     
  • 3.27, Sluggard, 18:39, 26/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    Достаточно запретить неподписанным расширениям менять значения в about config, и... весь текст скрыт [показать]
     
     
  • 4.28, Ан, 19:04, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    А зачем расширениям самим туда лазить Вирусня тупо залезет в конфиг лисы и сама... весь текст скрыт [показать]
     
     
  • 5.31, Sluggard, 19:14, 26/11/2015 [^] [ответить] [смотреть все]  
  • +2 +/
    И это обсуждалось тоже Если у тебя уже вирусня на машине 8212 тебя уже поиме... весь текст скрыт [показать]
     
     
  • 6.33, Anonplus, 20:15, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    У Mozilla нет цели избавлять юзера от вирусни Это забота производителей антивир... весь текст скрыт [показать]
     
     
  • 7.34, Sluggard, 20:19, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    А зачем ей Судя по комменту выше эта вирусня уже свободно в конфиги Огнелиса уж... весь текст скрыт [показать]
     
     
  • 8.35, Anonplus, 20:24, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Еще разок Если малварь уже сперла куки, пароли и пошифровала домашнее порно юзе... весь текст скрыт [показать]
     
     
  • 9.37, Sluggard, 20:31, 26/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    Уже показали, что это не работает 8212 дополнения с подписью не гарантируют н... весь текст скрыт [показать]
     
  • 8.36, Anonplus, 20:28, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Малварь, спирающая куки это один вид Малварь, шифрующая файлы - это другой вид ... весь текст скрыт [показать]
     
     
  • 9.38, Sluggard, 20:33, 26/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    И при чём тут подпись расширений Которая всё равно не пашет ... весь текст скрыт [показать]
     
  • 7.43, IZh., 22:47, 26/11/2015 [^] [ответить] [смотреть все]  
  • +2 +/
    Если вирус уже на компе, то ничто нему не помешает попытаться подменить браузер ... весь текст скрыт [показать]
     
  • 4.46, all_glory_to_the_hypnotoad, 00:42, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    никакакое расширение не должно иметь возможности что-то менять в конфиге ... весь текст скрыт [показать]
     
     
  • 5.47, Sluggard, 00:43, 27/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Половина функций CTR этим занимается Удобно для лентяев ... весь текст скрыт [показать]
     
  • 2.39, Аноним, 20:57, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Будет не брендирования версия ФФ.
     
  • 1.22, IZh., 17:32, 26/11/2015 [ответить] [смотреть все]  
  • +1 +/
    А, вообще, имхо, с дополнениями пора как с полноценными приложениями обращаться -- запускать в отдельном контейнере, и просто блокировать вызываемое API в зависимости от наличия/отсутствия подписи, а также от запрашиваемых прав в манифесте.
     
     
  • 2.29, тоже Аноним, 19:05, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +3 +/
    Угу, андроиду это здорово помогает бороться с малварью Идеальный вариант В то... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.32, IZh., 19:25, 26/11/2015 [^] [ответить] [смотреть все]  
  • +3 +/
    Всё зависит от того, как реализовать Что угодно можно сделать хорошо или плохо ... весь текст скрыт [показать]
     
     
  • 4.41, тоже Аноним, 21:24, 26/11/2015 [^] [ответить] [смотреть все]  
  • +/
    Правда, практически второй такой аддон будет переставлять иконки так, как нравит... весь текст скрыт [показать]
     
  • 3.45, all_glory_to_the_hypnotoad, 00:40, 27/11/2015 [^] [ответить] [смотреть все]  
  • +1 +/
    ну так как это сделали уроды из гугла оно, конечно, никогда работать не будет Т... весь текст скрыт [показать]
     
  • 2.30, Ан, 19:14, 26/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Все пытаются решить проблемы тех кто не хочет разбираться в правилах безопасност... весь текст скрыт [показать] [показать ветку]
     
  • 2.74, Kodir, 17:41, 30/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Дополнения - они и имеют смысл только при полном доступе к кишкам каркаса Тут... весь текст скрыт [показать] [показать ветку]
     
     ....нить скрыта, показать (6)

  • 1.40, Михрютка, 20:59, 26/11/2015 [ответить] [смотреть все]  
  • +5 +/
    вот что бывает, когда об комфорте для содомитов начинают заботиться больше, чем об пользе для традиционных пользователей.
     
  • 1.56, Дмитрий, 04:50, 27/11/2015 [ответить] [смотреть все]  
  • +/
    В Хроме eval() и много чего ещё просто не работает в расширениях. Даже простой <script> блок с кодом не работает, нужно выносить в файл.
    Плюс там есть permissions, которые можно отредактировать в файле manifest.json. Файл лежит в ~/.config/google-chrome/<profile>/Extensions/<extension_id>/<version>
    Я так и делаю -- качаю расширение, убираю ненужные пермишны и автоапдейт и пользуюсь на здоровье.
     
     
  • 2.59, Аноним, 08:49, 27/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Его можно выполнить на уровне открываемых сайтов, подставив из расширения код на... весь текст скрыт [показать] [показать ветку]
     
  • 1.57, Аноним, 07:18, 27/11/2015 [ответить] [смотреть все]  
  • +/
    Следующий шаг это общедоступный скрипт для беззаботного прохождения их автоматич... весь текст скрыт [показать]
     
  • 1.60, tdykunlogged, 09:43, 27/11/2015 [ответить] [смотреть все]  
  • +1 +/
    Кто-то уже предлагал только дополнения с свободным открытым кодом?
     
     
  • 2.63, Нимано, 17:49, 27/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Я предлагал Но РМС не поддержал и выкатил более безопасное решение https w... весь текст скрыт [показать] [показать ветку]
     
  • 2.65, Dzmitry, 09:58, 28/11/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    В chrome всегда можно глянуть код crx файл это просто zip См config google... весь текст скрыт [показать] [показать ветку]
     
  • 1.68, фраг норода, 13:53, 28/11/2015 [ответить] [смотреть все]  
  • +/
    Ну и какое это всё имеет значение если xpi. адин хрен бодро хавается бразухой без всяких подписей? жывотные блджад..
     
  • 1.71, Аноним, 17:24, 28/11/2015 [ответить] [смотреть все]  
  • +/
    из всех дополнений юзаю ток ublock origin, климакс у автора вроде прошел, так чт... весь текст скрыт [показать]
     
  • 1.72, Штольман, 06:44, 29/11/2015 [ответить] [смотреть все]  
  • +2 +/
    Нужен репозиторий с сорцами дополнений. А блобы в браузере найух не нужны
     
     
  • 2.77, Онаним, 16:43, 03/12/2015 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    А разве браузерные дополнения сейчас не на JavaScript?
     
  • 1.76, Онаним, 16:42, 03/12/2015 [ответить] [смотреть все]  
  • +/
    Они там что, с дуба рухнули? Обязательная проверка в свободном браузере? На IceWeasel чтоли переходить?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor