Pull to refresh
28
0
Денис @SDI

User

Send message
Не заметил, блокировки запросов и фонового скрипта там в принципе не было.
Поэтому вся надежда была на полученный код с веб-сервера.
Возможно, на популярные сайты и присылали скрипты, которые скрывали рекламу. Но опять же удалить ее могли уже постфактум (с миганием и т.п.).
Да, так и есть.
Поэтому и сделал предположение, что они должны будут получать списки доменов с веб-сервера, если конечно вообще планируют обходить блокировки.
А это в свою очередь откроет проблему редиректа всего что угодно на все что угодно;
Сказать, что нет функционала для обхода блокировок — нельзя, но и сказать, что есть мегафункция для обхода блокировок — тоже нельзя.
Поэтому скажу как есть.
Есть функция которая слушает все запросы и если среди запросов есть запрос страницы с нужным доменом, то он редиректится на kinogo.co.

код, отвечающий за редирект
webReq.onBeforeRequest.addListener(function (details) {
    var reqReturn = null;

    try {
        if(details.type === "main_frame" && details.url) {
            var parsedUrl      = URI.parse(details.url);
            var host           = parsedUrl.host_without_www;
            var replaceRegexp  = KinogoMirror.test(host);
            
            if (KinogoMirror.mirror && replaceRegexp) {
                var kinogoMirror = KinogoMirror.mirror.replace(/^https?:\/\//i, '');

                if (host !== kinogoMirror) {
                    var newUrl = details.url.replace(replaceRegexp, '$1$2' + kinogoMirror);
                    reqReturn = {redirectUrl: newUrl};
                }
            }
        }
    } catch (ex) {}

    return reqReturn;
}, {urls: ['<all_urls>']}, ['blocking']);


Список «нужных» доменов и на что редиректить, пока забит гвоздями в коде.
Хотя тоже намечалось довольно узкое место. Скорей всего они планировали его получать список динамически. И тот код, который написан сейчас + динамическое получение настроек, позволяет в перспективе делать замены вида:

habrahabr.ru => my_habrahabr.ru


Т.е. хорошего кода для обхода блокировок нет (кроме редиректа). Нет проверки доступности зеркал, нет корректного редиректа (т.е. редиректа только определенного списка сайтов, хотя бы по маске).
Зато есть хороший код, который отправляет данные о посещениях, вставляет скрипты, и в перспективе небольшими изменениями способен делать редирект любого сайта на свои домены.
Последний пункт, кстати, в интернете начинает набирать популярность. Всякие создатели коротких ссылок, расширения вида
archiveshare.net (указан в комментариях выше) и т.п.
Отличное замечание.
Чуть погуглил, действительно есть, как минимум, 2 трактовки данной цитаты:
— в одном случае ее используют против эволюции.
— в другом случае она используется именно для обоснования появления «первой живой клетки»;

Один из вариантов трактовки
То есть — никаких шансов, даже теоретических, для самозарождения жизни на Земле нет и не может быть в принципе. Никаких.

Как объяснил ситуацию сам Фред Хойл: «Представьте себе, что на огромной свалке в беспорядке разбросаны все части от авиалайнера «Боинг-747», разобранного, что называется, до болта и гайки. Тут случается пройтись по свалке страшной силы смерчу-урагану. Каковы шансы того, что после подобного смерча на свалке будет стоять полностью собранный «Боинг», готовый отправиться в полет?»

Впрочем, Фред Хойл объяснил и то, каким образом жизнь все же появиться могла. Вариантов было предложено два:
1) либо она является изначальным свойством материи типа гравитации или магнетизма, а потом заносится на разные планеты;
2) либо она зародилась в других местах Вселенной, обладающих другими изначальными условиями и на первичных этапах была значительно проще, нежели та, которую мы имеем удовольствие наблюдать, и оказалась занесена на Землю извне в уже достаточно развитом виде.

Источник


К сожалению, не знаю в каком контексте изначально было данное высказывание.
Ко мне оно попало (на курсах философии) во втором виде.

Не совсем верно.
Данная цитата не противоречит теории эволюции.
Цитата критикует одну из теорий возникновения живой материи на Земле. Из чего-то же должна была начаться эволюция.
А этих теорий на самом деле очень много:
— живая материя занесена из космоса космическим телом;
— существовала всегда;
— возникла на ровном месте из неживой материи и т.п.

Вот данная цитата относится к последнему, приведенному, варианту.
В комментарии цитата приведена как красивая, на мой взгляд, аналогия. Конечно же, я не возьму на себя ответственности дать ответ по тому, о чем еще нет ответа в научном мире.
Почти.
Только упущено предложение с описанием того, что делает данное расширение.
А вот на основании действий расширения, каждый волен сделать свои выводы.
Судя по комментариям, они действительно могут отличаться.
Поэтому навязывать свое мнение о таких вещах счел не нужным.
Подтверждаю, по поводу archiveshare.net есть подозрения.
Через vk тоже идет масштабная реклама постов из других ресурсов, которые размещены якобы на данном домене.
И для просмотра этих постов нужно расширение.
The chance that higher life forms might have emerged in this way is comparable to the chance that a tornado sweeping through a junkyard might assemble a Boeing 747 from the materials therein.

— Фред Хойл


1. Уровень кода из расширения не состыкуется с глупостью. Код расширения написан сильными в разработке ребятами и скорей всего одной группой людей (возможно и одним человеком). Стиль написания кода и его логика выдержана от начала до конца.
2. И последним гвоздем является явная отправка данных о пользователе. Ты либо отсылаешь данные либо нет, третьего не дано.
Исходный код расширения выложен на GitHub, база блокируемых расширений доступна на сайте расширения в полном объеме.
Можете смело написать статью, как оно «борется с конкурентами».
А по вашим прикидкам, в dev расширениях (всякие там json гляделки, и из этой оперы), грешат таким?

Пока не встречался с подобной проблемой. Скорей всего связано с тем, что подобные расширения меньше распространены. Хотя ничто не мешает всяким инсталяторам поставить расширение с любым названием и функционалом.

P.S. А что за история про яндекс бар?

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

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

По возможности, в будущем постараюсь написать статью про методы профилактики от вредоносных расширений.
Ссылка на расширение в Chrome Store
На сайте расширения можно найти инструкцию с описанием возможностей.
Еще использую Closure Compilier Service.
Обычно этого сервиса и jsbeautifier мне хватает и дальше продолжаю разбирать код в ручную.

В Вашем примере, можно еще установить чекбокс в jsbeautifier «Unescape printable chars encoded as \xNN or \uNNNN?».
Далее попытаться вынести код из eval в переменную, а потом в браузере не выполнять eval, а вывести в console.
Полученный код из console снова деобфусцировать.
Да, с Opera как-то все серьезно. Ну за это им огромный плюс.
Написал расширение, решил заложить на будущее дополнительные права и просто js-файлы. На модерации попросили удалить.
Не секрет.
Есть свое расширение, которое проверяет установленные расширения у пользователя и сообщает, если среди них есть вредоносные.
По моим ощущением, на текущий момент это более острая проблема, чем реклама на сайтах. Так как от последней существует уже много решений.
У меня uBlock в Chrome Store на данный момент не доступно «Item not found. This item may have been removed by its author.» (ссылка есть в комментарии выше). По этой ссылке находилось основное расширение с 700 000 пользователей (если память не изменяет).

Для вредоносных расширений это нормальная картина.
— добавляют чистое расширение в Store
— нагоняют людей
— обновляют расширение на вредоносное
— у пользователей расширение обновляется
— отключают расширение в Store
— а у пользователей расширение остается

Что реально произошло с uBlock не знаю. Но я придерживаюсь принципа «Нет в магазине — в браузере тоже не должно быть». И отключаю.
Да с Chrome Store все печально.
За полгода собрал базу в 700 вредоносных расширений.
И, к сожалению, не получаю никакой обратной связи, когда отсылаю им письма об этом.

Сегодня, кстати, заметил проблему с довольно популярным расширением uBlock. Так что если у кого-то установлено — то лучше отключить, пока не прояснится с ним ситуация.
2

Information

Rating
Does not participate
Location
Донецкая обл., Украина
Date of birth
Registered
Activity