В популярном дополнении 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
Толку его чистить? Ведь все равно осталась возможность заливать на Google Cloud. Нужно доработать как-то блокировку по поддоменам что ли.
Альтернатива: пользоваться Request Policy / Policeman. Ибо в них не глобальный whitelist, а посайтовый (ты регулируешь пары доменов "спрашивающий"-"отдающий").
+1. Сам его активно использую.
Ну тогда уж uBlock. Не тормозит и сделан зело удобнее носкрипта.
Уже чуть ли не с месяц как удалили zendcdn.net из белого списка (в 2.6.9.27).
> (в 2.6.9.27).А что за айпишник такой гламурный? :)
версия сабжа а не айпишник, явственно.
Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.
> Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.А не перекрывают ли? По крайней мере, первые два.
Policeman - точно нет. Я пытался с ним от NoScript избавиться - не вышло, хотя деталей не помню - то ли полные домены не позволял, то ли наобоот - только полные... Хотя, опять же, допилить могли, я нашёл удобный вариант и успокоился.
А зачем нужен NoScript, если есть uMatrix?
(RP неудобна, ушел с нее)
От неё некуда деться в Palemoon/Seamonkey
Насчёт uMatrix спорить не буду, так как смотрел очень по диагонали.
> От неё некуда деться в Palemoon/SeamonkeyНу так если что-то не работает - надо попинать Gorhil'а или разработчиков форка чтобы починили :).
> Насчёт uMatrix спорить не буду, так как смотрел очень по диагонали.
А напрасно. Хорошая штука. Гибко и логично сделано и в лучших традициях Gorhil'а - не тормозит.
Казалось бы, достаточно очевидно: открываешь NoScript и смотришь какие его функции не покрываются uMatrix-ом. Предпологаю что список включает в себя:
* блокировку шрифтов
* остановку действий похожих на XSS
* ABE (хотя лично я не понимаю в точности что это делает)
* ClearClick
* запрещение WebGL (хз нужно ли, но опция есть)
Ну, с моей точки зрения это всё вообще третьестепенные штуки. Шрифты файрфокс и сам блокировать умеет, а остальное через расширения вроде Policeman/uMatrix и так не пролезет. За исключением запрета WebGL, конечно.
uMatrix и uBlock невозможно пользоваться в таком режиме. Когда с помощью NoScript блокируешь встраиваемые объекты, т.е. флеш, аудио, видео, фреймы и т.п., он оставляет на их месте плейсхолдер, кликнув по которому можно выбранный элемент отобразить разово. А в тех поделках можно только весь домен временно разрешить, что повлечет загрузку всего контента с этого домена.
Кто-то из нас сильно путает все эти софтины.
uBlock здесь вообще не при делах, он тихо себе прибивает известную дрянь да и всё. Я его не трогаю, он меня. Мне там ничего и никогда разрешать не приходится.uMatrix я не пробовал, а Policeman и RP вполне себе оставляют плейсхолдеры на месте заблоченного - в моём случае внешних фреймов и картинок в основном. Policeman умеет что-то выборочно включить, RP - нет. NoScript для этого в жизни не использовал и не понимаю, зачем. Если контент с того же домена, что и HTML - какой смысл его блокировать, если это не скрипт, который ресурсы жрёт?
Разве что флёш... Но флэш у меня в какой-то момент умер, что я заметил чисто случайно, понял, что никаких неудобств не испытываю - и прибил его к чертям.
> а Policeman и RP вполне себе оставляют
> плейсхолдеры на месте заблоченного - в моём случае внешних фреймов и
> картинок в основном. Policeman умеет что-то выборочно включить, RP - нет.
> NoScript для этого в жизни не использовал и не понимаю, зачем.
> Если контент с того же домена, что и HTML - какой
> смысл его блокировать, если это не скрипт, который ресурсы жрёт?Если Policeman оставляет плейсхолдеры, по которым можно кликнуть и разрешить разово показать элемент, то стоит попробовать, а то я всё не найду замену умершему ImgLikeOpera. Хотелось бы какой-то универсальный фильтр, работающий по тому же принципу что и ILO, но не только для картинок, но и для всего (флеш, фреймы, другие встроенные элементы, ajax, внешние скрипты и пр.).
Всё в ваших руках: установите policeman/umatrix и убедитесь что всё работает.
Нееемного не так удобно как было при ILO (надо лишний раз втопить F5), выше входной порог (поизучать надо), но вполне приемлемо.
> Всё в ваших руках: установите policeman/umatrix и убедитесь что всё работает.
> Нееемного не так удобно как было при ILO (надо лишний раз втопить
> F5), выше входной порог (поизучать надо), но вполне приемлемо.uMatrix не годится, т.к. у него нет плейсхолдеров, из контекстного меню которого можно было бы выбрать "показать этот элемент". Policeman это имеет, но он глючный и похоже что не развивается, в багтрекере куча багов, активности нет.
Ну вот значит всё в ваших руках: можете вообще не пользоваться этими CORS-блокировщиками, а можете взять Policeman / uMatrix и поправить мешающие баги. Вполне нормально для мира открытого софта, если у вас есть какой-нибудь навык в программировании (или есть ощутимый стимул).
К слову, я в Policeman только один баг видел: всплывающее окно иногда слишком раздувается, становится не видно кнопку. security-багов не замечал.
> Ну вот значит всё в ваших руках: можете вообще не пользоваться этими
> CORS-блокировщиками, а можете взять Policeman / uMatrix и поправить мешающие баги.
> Вполне нормально для мира открытого софта, если у вас есть какой-нибудь
> навык в программировании (или есть ощутимый стимул).
> К слову, я в Policeman только один баг видел: всплывающее окно иногда
> слишком раздувается, становится не видно кнопку. security-багов не замечал.Policeman на Coffeescript написан :-/
Багов полно я уже наловил. В каких-то случаях не показывает плейсхолдер заблокированного объекта. Если добавить своё правило, блокирующее любые объекты, то пункт меню "загрузить объект" перестаёт действовать. А ещё нет возможности скопировать адрес заблокированного элемента. Один из багов я зарепортил, но вижу что смысла в этом нет, проект заброшен.
На кофескрипте, да. Я лично тоже считаю что странный язык. Вообще люблю статически типизированные языки. Но случалось кодить и на совсем диких/уродливых скрипто-языках лишь бы заставить действительно хорошую штуку работать.На самом деле, возможно вы правы. Я вот привык терпеть дурацкие интерфейсы лишь бы получить что-то что ценно по другим признакам. Но это годится не всегда и выборочное самоограничение развивается со временем.
Спасибо за Policeman, я именно такой искал давно. Поставил, то что надо.
Т.е. получается что Полисмен лучше уМатрикс?..
> Т.е. получается что Полисмен лучше уМатрикс?..Попробуй оба и оставь какой больше понравится. Субъективно у umatrix достаточно приятное юзабилити: быстро видно кто и что и кому разрешить. Но это для тех кто готов морочаться с структурой веб-сайта. Эдакий веб-файрвол.
Да, именно файрволл - и хотелось бы к этому юзабилити добавить простоту и легкость вноски правил вручную - поскольку куча эмбедов типа ютюба на многих сайтах через множество итераций разрешений - а хотелось бы тут же на примере одного сайта распространить эти правила на все остальные без лишних напрягов.Но в уМатриксе нет возможности(?) включать отдельные элементы на странице ...
> тут же на примере одного сайта распространить эти правила на все
> остальные без лишних напрягов.Я это делаю как-то так, примерно 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 бонусом идет.
> Т.е. получается что Полисмен лучше уМатрикс?..Мне лично да. uMatrix и uBlock мне были бесполезны по указанным выше причинам.
> Ну, с моей точки зрения это всё вообще третьестепенные штуки. Шрифты файрфокс
> и сам блокировать умеет, а остальное через расширения вроде Policeman/uMatrix и
> так не пролезет. За исключением запрета WebGL, конечно.WebGL отключается стандартными средствами браузера, подозреваю, что опция в расщирении просто переключает соответствующую в about:config
> WebGL отключается стандартными средствами браузера,Для начала, WebGL не будет, если нет JS. Потому что он запрашивается из JS. Так что удавить JS достаточно для удавки WebGL. А если его хотелось придушить systemwide - логично это сделать глобальными настройками браузера, чтоли.
> ABE (хотя лично я не понимаю в точности что это делает)Деление на локалку и глобальную сеть. Не совсем знаю зачем, но отлично палит, например, попытки провайдера заблочить какой-то сайт редиректом на страницу заглушку в локалке: редирект в локалку не проходит. Правда когда провайдер начинает редиректить на биллинг, намекая, что деньги кончились, то это тоже не работает, что в общем-то неудобно.
Можно предположить, что уровень доверия к локальным ресурсам и глобальным несколько разный, и имеет смысл их разделять, чтобы глобальные не могли бы через браузер получить доступ к локальным ресурсам.
При этом, в TorBrowser ABE отключён. Они там в нём нашли какой-то недостаток, подробностей не помню.
> недостаток, подробностей не помню.Простой: чтобы понять какой внешний IP используется - эта зараза лезет на сервер NoScript-а. Кроме того, в случае Tor внешний IP не имеет ничего общего с настоящим и смотреть его на чужом сервере - бессмысленно и беспощадно. Он часто меняется и нет никакого смысла его оборонять: это ни разу не WAN-интерфейс роутера.
Может быть вы об этом?:> 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.
> Policeman/uMatrix/RequestPolicy в помощь. Они с NoScript друг друга отлично дополняют.В случае uMatrix - NoScript просто не требуется: uMatrix и сам умеет давить все и вся.
Можно скажем выставить uMatrix дефолтную политику - давить JS (для scope *). И разрешать только сильно некоторым. Получится эквивалент NoScript, только более гранулярный и наглядный.
> Обеспокоенным безопасностью пользователям рекомендуется очистить белый список NoScript (Options > Whitelist).Очень интересная рекомендация, особенно учитывая, что это общий список и туда же попадают разрешения установленные пользователем…
Да и сам по себе этот вопрос охвачен в FAQ - https://noscript.net/faq#qa1_5
Никогда не использовал NoScript
И напрасно, очень хорошо борется с тупизной браузера
с тупизной браузера -- очень хорошо борется -- отсутствие плагинов и расширений... :)...так как именно -- плагины и расширения -- приводят к тупке браузера.
Пара десятков рекламных и/или следящих вставок на паре десятков открытых страниц приводят к тупизне куда быстрее. JS-эффекты на странице, куда заходишь текст прочесть - тоже отлично справляются.А так - из попадавшегося мне явно тупить умели тупить умели только Adblock Plus и какая-то хрень для автозамен на странице, да Firebug в своё время этим отличался.
> с тупизной браузера -- очень хорошо борется -- отсутствие плагинов и расширений... :)Но только до тех пор пока 20 сайтов не пустят в фоне 20 скриптов. Тогда браузер будет тупить без расширений и дополнений. А вот с расширениями и дополнениями, срезавших 90% рекламной шелухи, браузер будет тупить в 10 раз меньше. Потому что его не грузят левые скрипты тасовки рекламы и анноянса.
Зря. Он ещё от xss защищает.
это же забора вёбразработчика
Да, но разработчики ошибаются.Кстати, остановка подгрузки шрифтов это также полезная штука для безопасности.
Не более полезная, чем запрет любого другого контента с левого сайта.
По мнению разработчиков 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.
Белый список надо чистить сразу после установки NoScript. Это расширение нужно именно для того, чтоб я сам решал, где какие скрипты можно выполнять, без всяких списков.
Ищу возможность проведения воспитательной беседы-программы с использованием телесных наказаний, применительно особо наглых маркетологов и рекламщиков, в обход ограничений УК.
> Ищу возможность проведения воспитательной беседы-программы с использованием телесных наказаний, применительно особо наглых маркетологов и рекламщиков, в обход ограничений УК.Русский язык не родной, да?
> NoScript по умолчанию разрешает выполнение скриптов, загруженных с доверительных ресурсов, помещённых в белый список. В список заслуживающих доверия ресурсов входит и домен googleapis.comспонсор показа - сервис googleapis? используйте только правильные аписы?
если честно, то я NoScript представлял себе иначе...
Сведущий аноним считает, что нюансы использования NoScript - это проблемы 0.1% владельцев браузеров. И половина этих пользователей создали себе проблему сами совершенно напрасно.
Я из белого списка всё поудалял сразу несколько лет назад ещё.
Я прекрасно знаю, что гугл - распутная девка. Поэтому googleapis первым делом забанил. Кто доверяет гуглу - тот себя не бережёт.