URL: https://ssl.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 103431
[ Назад ]

Исходное сообщение
"Возможность выполнения JavaScript в обход ограничений NoScript"

Отправлено opennews , 01-Июл-15 19:48 
В популярном дополнении NoScript, используемом для блокирования выполнения нежелательного JavaScript-кода,  выявлена (http://labs.detectify.com/post/122837757551/using-google-clo...) недоработка, которая позволяет организовать выполнение произвольного JavaScript-кода под прикрытием белого списка. NoScript  по умолчанию разрешает выполнение скриптов, загруженных с доверительных ресурсов, помещённых в белый список. В список заслуживающих доверия ресурсов входит и домен googleapis.com, который используется не только для ресурсов Google, но и в работе публичных сервисов.


Для запуска своего JavaScript в обход NoScript атакующий может создать скрипт, разместив его в Google Cloud и установив прямую ссылку на storage.googleapis.com. Продолжив изучение белого списка исследователи пришли к выводу, что это не единичный случай. Например, присуствующий в белом списке домен zendcdn.net был освобождён и его удалось купить (http://thehackerblog.com/the-noscript-misnomer-why-should-i-.../) всего за 10 долларов. Обеспокоенным безопасностью пользователям рекомендуется очистить белый список NoScript (Options > Whitelist).

URL: http://www.theregister.co.uk/2015/07/01/noscript_bypass/
Новость: https://www.opennet.ru/opennews/art.shtml?num=42548


Содержание

Сообщения в этом обсуждении
"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено th3m3 , 01-Июл-15 19:48 
Толку его чистить? Ведь все равно осталась возможность заливать на Google Cloud. Нужно доработать как-то блокировку по поддоменам что ли.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 01-Июл-15 22:19 
Альтернатива: пользоваться Request Policy / Policeman. Ибо в них не глобальный whitelist, а посайтовый (ты регулируешь пары доменов "спрашивающий"-"отдающий").

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено grec , 02-Июл-15 18:20 
+1. Сам его активно использую.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:18 
Ну тогда уж uBlock. Не тормозит и сделан зело удобнее носкрипта.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 01-Июл-15 19:53 
Уже чуть ли не с месяц как удалили zendcdn.net из белого списка (в 2.6.9.27).

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:19 
> (в 2.6.9.27).

А что за айпишник такой гламурный? :)


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 21:36 
версия сабжа а не айпишник, явственно.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 20:09 
Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено systemd_anonymousd , 01-Июл-15 20:24 
> Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.

А не перекрывают ли? По крайней мере, первые два.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 20:55 
Policeman - точно нет. Я пытался с ним от NoScript избавиться - не вышло, хотя деталей не помню - то ли полные домены не позволял, то ли наобоот - только полные... Хотя, опять же, допилить могли, я нашёл удобный вариант и успокоился.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 01-Июл-15 20:30 
А зачем нужен NoScript, если есть uMatrix?
(RP неудобна, ушел с нее)

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 20:41 
От неё некуда деться в Palemoon/Seamonkey
Насчёт uMatrix спорить не буду, так как смотрел очень по диагонали.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 06-Июл-15 01:18 
> От неё некуда деться в Palemoon/Seamonkey

Ну так если что-то не работает - надо попинать Gorhil'а или разработчиков форка чтобы починили :).

> Насчёт uMatrix спорить не буду, так как смотрел очень по диагонали.

А напрасно. Хорошая штука. Гибко и логично сделано и в лучших традициях Gorhil'а - не тормозит.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 01-Июл-15 22:16 
Казалось бы, достаточно очевидно: открываешь NoScript и смотришь какие его функции не покрываются uMatrix-ом. Предпологаю что список включает в себя:
* блокировку шрифтов
* остановку действий похожих на XSS
* ABE (хотя лично я не понимаю в точности что это делает)
* ClearClick
* запрещение WebGL (хз нужно ли, но опция есть)

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 22:21 
Ну, с моей точки зрения это всё вообще третьестепенные штуки. Шрифты файрфокс и сам блокировать умеет, а остальное через расширения вроде Policeman/uMatrix и так не пролезет. За исключением запрета WebGL, конечно.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 02-Июл-15 14:34 

uMatrix и uBlock невозможно пользоваться в таком режиме. Когда с помощью NoScript блокируешь встраиваемые объекты, т.е. флеш, аудио, видео, фреймы и т.п., он оставляет на их месте плейсхолдер, кликнув по которому можно выбранный элемент отобразить разово. А в тех поделках можно только весь домен временно разрешить, что повлечет загрузку всего контента с этого домена.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 02-Июл-15 19:15 
Кто-то из нас сильно путает все эти софтины.
uBlock здесь вообще не при делах, он тихо себе прибивает известную дрянь да и всё. Я его не трогаю, он меня. Мне там ничего и никогда разрешать не приходится.

uMatrix  я не пробовал, а Policeman и RP вполне себе оставляют плейсхолдеры на месте заблоченного - в моём случае внешних фреймов и картинок в основном. Policeman умеет что-то выборочно включить, RP - нет. NoScript для этого в жизни не использовал и не понимаю, зачем. Если контент с того же домена, что и HTML - какой смысл его блокировать, если это не скрипт, который ресурсы жрёт?

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


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 02-Июл-15 23:56 
> а Policeman и RP вполне себе оставляют
> плейсхолдеры на месте заблоченного - в моём случае внешних фреймов и
> картинок в основном. Policeman умеет что-то выборочно включить, RP - нет.
> NoScript для этого в жизни не использовал и не понимаю, зачем.
> Если контент с того же домена, что и HTML - какой
> смысл его блокировать, если это не скрипт, который ресурсы жрёт?

Если Policeman оставляет плейсхолдеры, по которым можно кликнуть и разрешить разово показать элемент, то стоит попробовать, а то я всё не найду замену умершему ImgLikeOpera. Хотелось бы какой-то универсальный фильтр, работающий по тому же принципу что и ILO, но не только для картинок, но и для всего (флеш, фреймы, другие встроенные элементы, ajax, внешние скрипты и пр.).


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 03-Авг-15 22:07 
Всё в ваших руках: установите policeman/umatrix и убедитесь что всё работает.
Нееемного не так удобно как было при ILO (надо лишний раз втопить F5), выше входной порог (поизучать надо), но вполне приемлемо.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 03-Авг-15 22:11 
> Всё в ваших руках: установите policeman/umatrix и убедитесь что всё работает.
> Нееемного не так удобно как было при ILO (надо лишний раз втопить
> F5), выше входной порог (поизучать надо), но вполне приемлемо.

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


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 03-Авг-15 22:18 
Ну вот значит всё в ваших руках: можете вообще не пользоваться этими CORS-блокировщиками, а можете взять Policeman / uMatrix и поправить мешающие баги. Вполне нормально для мира открытого софта, если у вас есть какой-нибудь навык в программировании (или есть ощутимый стимул).
К слову, я в Policeman только один баг видел: всплывающее окно иногда слишком раздувается, становится не видно кнопку. security-багов не замечал.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 03-Авг-15 22:29 
> Ну вот значит всё в ваших руках: можете вообще не пользоваться этими
> CORS-блокировщиками, а можете взять Policeman / uMatrix и поправить мешающие баги.
> Вполне нормально для мира открытого софта, если у вас есть какой-нибудь
> навык в программировании (или есть ощутимый стимул).
> К слову, я в Policeman только один баг видел: всплывающее окно иногда
> слишком раздувается, становится не видно кнопку. security-багов не замечал.

Policeman на Coffeescript написан :-/

Багов полно я уже наловил. В каких-то случаях не показывает плейсхолдер заблокированного объекта. Если добавить своё правило, блокирующее любые объекты, то пункт меню "загрузить объект" перестаёт действовать. А ещё нет возможности скопировать адрес заблокированного элемента. Один из багов я зарепортил, но вижу что смысла в этом нет, проект заброшен.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 03-Авг-15 22:44 
На кофескрипте, да. Я лично тоже считаю что странный язык. Вообще люблю статически типизированные языки. Но случалось кодить и на совсем диких/уродливых скрипто-языках лишь бы заставить действительно хорошую штуку работать.

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


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 03-Июл-15 01:39 
Спасибо за Policeman, я именно такой искал давно. Поставил, то что надо.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:11 
Т.е. получается что Полисмен лучше уМатрикс?..

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:27 
> Т.е. получается что Полисмен лучше уМатрикс?..

Попробуй оба и оставь какой больше понравится. Субъективно у umatrix достаточно приятное юзабилити: быстро видно кто и что и кому разрешить. Но это для тех кто готов морочаться с структурой веб-сайта. Эдакий веб-файрвол.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 13:10 
Да, именно файрволл - и хотелось бы к этому юзабилити добавить простоту и легкость вноски правил вручную - поскольку куча эмбедов типа ютюба на многих сайтах через множество итераций разрешений - а хотелось бы тут же на примере одного сайта распространить эти правила на все остальные без лишних напрягов.

Но в уМатриксе нет возможности(?) включать отдельные элементы на странице ...


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 06-Июл-15 01:38 
> тут же на примере одного сайта распространить эти правила на все
> остальные без лишних напрягов.

Я это делаю как-то так, примерно 3 "рулеса" uMatrix на все:

www.youtube.com - может куки,  картинки, css, js и XMLHttpRequest ("XHR").
s.ytimg.com - может картинки, css и js
googlevideo.com (именно так, весь 2nd level т.к. там много серверов с дурным именем) - может "other" (то-есть собственно показ видео).

Это для "HTML5, без DASH/MSE". При этом видео играется, но все что может шевелиться - удавлено довольно кардинально. Ну то-есть работает видео и минимум скриптов делающих плеер живым. И поштучно их прописывать было бы как-то зело утомительно.

> Но в уМатриксе нет возможности(?) включать отдельные элементы на странице ...

Он субдоменами оперирует. Это несколько дубовее, но сильно практичнее с точки зрения баланса "время настройки vs удавливание нежелательной активности". У меня например дефолтные рулесы очень злые и 1st party (явно запрошенный сайт) может куки, картинки и css. А остальные - и того меньше, ибо нефиг. А дальше уже развинчиваю понемногу тем кому реально надо. Многим развинчено только временно, ибо нефиг :)

А еще uMatrix умеет:
- По сути все что умеют аддоны типа self-destructing cookies aka снос кук, кэша и local storage при прекращении их использования на ощутимое время.
- Тасовку юзерагента - случайно выбирается строка из списка, раз в энное время.
- Подделку реферера.
- Удавку hyperlink auditing (весьма гадская "фича").
- Вгрузку внешних хостов с "плохими парнями".

Т.е. по сути еще и базовый privacy enhancement бонусом идет.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено BrainFucker , 03-Июл-15 13:48 
> Т.е. получается что Полисмен лучше уМатрикс?..

Мне лично да. uMatrix и uBlock мне были бесполезны по указанным выше причинам.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Anonplus , 02-Июл-15 15:50 
> Ну, с моей точки зрения это всё вообще третьестепенные штуки. Шрифты файрфокс
> и сам блокировать умеет, а остальное через расширения вроде Policeman/uMatrix и
> так не пролезет. За исключением запрета WebGL, конечно.

WebGL отключается стандартными средствами браузера, подозреваю, что опция в расщирении просто переключает соответствующую в about:config


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:25 
> WebGL отключается стандартными средствами браузера,

Для начала, WebGL не будет, если нет JS. Потому что он запрашивается из JS. Так что удавить JS достаточно для удавки WebGL. А если его хотелось придушить systemwide - логично это сделать глобальными настройками браузера, чтоли.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Ordu , 02-Июл-15 11:07 
> ABE (хотя лично я не понимаю в точности что это делает)

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


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Anonplus , 02-Июл-15 15:48 
При этом, в TorBrowser ABE отключён. Они там в нём нашли какой-то недостаток, подробностей не помню.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:23 
> недостаток, подробностей не помню.

Простой: чтобы понять какой внешний IP используется - эта зараза лезет на сервер NoScript-а. Кроме того, в случае Tor внешний IP не имеет ничего общего с настоящим и смотреть его на чужом сервере - бессмысленно и беспощадно. Он часто меняется и нет никакого смысла его оборонять: это ни разу не WAN-интерфейс роутера.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 03-Июл-15 12:25 
Может быть вы об этом?:

> The reason I don't want to do this blocking in Torbutton is because Torbutton is only about protecting users from privacy risks, not general security risks. Users who want enhanced security are encouraged to use your extension and others on our FAQ page.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 03-Июл-15 12:21 
> Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.

В случае uMatrix - NoScript просто не требуется: uMatrix и сам умеет давить все и вся.

Можно скажем выставить uMatrix дефолтную политику - давить JS (для scope *). И разрешать только сильно некоторым. Получится эквивалент NoScript, только более гранулярный и наглядный.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 01-Июл-15 20:11 
> Обеспокоенным безопасностью пользователям рекомендуется очистить белый список NoScript (Options > Whitelist).

Очень интересная рекомендация, особенно учитывая, что это общий список и туда же попадают разрешения установленные пользователем…

Да и сам по себе этот вопрос охвачен в FAQ - https://noscript.net/faq#qa1_5


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено eRIC , 01-Июл-15 20:38 
Никогда не использовал NoScript

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 20:42 
И напрасно, очень хорошо борется с тупизной браузера

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Xasd , 01-Июл-15 21:09 
с тупизной браузера -- очень хорошо борется -- отсутствие плагинов и расширений... :)

...так как именно -- плагины и расширения -- приводят к тупке браузера.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 01-Июл-15 21:32 
Пара десятков рекламных и/или следящих вставок на паре десятков открытых страниц приводят к тупизне куда быстрее. JS-эффекты на странице, куда заходишь текст прочесть - тоже отлично справляются.

А так - из попадавшегося мне явно тупить умели тупить умели только Adblock Plus и какая-то хрень для автозамен на странице, да Firebug в своё время этим отличался.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 06-Июл-15 01:41 
> с тупизной браузера -- очень хорошо борется -- отсутствие плагинов и расширений... :)  

Но только до тех пор пока 20 сайтов не пустят в фоне 20 скриптов. Тогда браузер будет тупить без расширений и дополнений. А вот с расширениями и дополнениями, срезавших 90% рекламной шелухи, браузер будет тупить в 10 раз меньше. Потому что его не грузят левые скрипты тасовки рекламы и анноянса.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено th3m3 , 01-Июл-15 21:02 
Зря. Он ещё от xss защищает.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Xasd , 01-Июл-15 21:41 
это же забора вёбразработчика

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 01-Июл-15 22:22 
Да, но разработчики ошибаются.

Кстати, остановка подгрузки шрифтов это также полезная штука для безопасности.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Crazy Alex , 02-Июл-15 19:16 
Не более полезная, чем запрет любого другого контента с левого сайта.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено vn971 , 02-Июл-15 19:20 
По мнению разработчиков NoScript, гораздо более полезная, т.к. шрифты очень стрёмная штука в лисе.

https://hackademix.net/2010/03/24/why-noscript-blocks-web-fonts/

>     It really worries me that the FreeType font library is now being made to accept untrusted content from the web.
>    The library probably wasn't written under the assumption that it would be fed much more than local fonts from trusted vendors who are already installing arbitrary executable on a computer, and it's already had a handful of vulnerabilities found in it shortly after it first saw use in Firefox.
>    It is a very large library that actually includes a virtual machine that has been rewritten from pascal to single-threaded non-reentrant C to reentrant C... The code is extremely hairy and hard to review, especially for the VM.
>    The reason I don't want to do this blocking in Torbutton is because Torbutton is only about protecting users from privacy risks, not general security risks. Users who want enhanced security are encouraged to use your extension and others on our FAQ page.


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Sluggard , 01-Июл-15 21:05 
Белый список надо чистить сразу после установки NoScript. Это расширение нужно именно для того, чтоб я сам решал, где какие скрипты можно выполнять, без всяких списков.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Аноним , 01-Июл-15 21:17 
Ищу возможность проведения воспитательной беседы-программы с использованием телесных наказаний, применительно особо наглых маркетологов и рекламщиков, в обход ограничений УК.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Розенталь , 02-Июл-15 19:55 
> Ищу возможность проведения воспитательной беседы-программы с использованием телесных наказаний, применительно особо наглых маркетологов и рекламщиков, в обход ограничений УК.

Русский язык не родной, да?


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено б.б. , 02-Июл-15 04:37 
> NoScript по умолчанию разрешает выполнение скриптов, загруженных с доверительных ресурсов, помещённых в белый список. В список заслуживающих доверия ресурсов входит и домен googleapis.com

спонсор показа - сервис googleapis? используйте только правильные аписы?

если честно, то я NoScript представлял себе иначе...


"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено Сведущий Аноним , 02-Июл-15 11:47 
Сведущий аноним считает, что нюансы использования NoScript - это проблемы 0.1% владельцев браузеров. И половина этих пользователей создали себе проблему сами совершенно напрасно.

"Возможность выполнения JavaScript в обход ограничений NoScript"
Отправлено BrainFucker , 02-Июл-15 14:25 
Я из белого списка всё поудалял сразу несколько лет назад ещё.

"Возможность выполнения JavaScript в обход ограничений NoScri..."
Отправлено anonymous , 03-Июл-15 17:49 
Я прекрасно знаю, что гугл - распутная девка. Поэтому googleapis первым делом забанил. Кто доверяет гуглу - тот себя не бережёт.