+  HandyCache форум
|-+  Главная категория» Дополнения, плагины» Обход чёрного списка в один клик (E.BlackBypass)
Имя пользователя:
Пароль:
Страниц: [1]   Вниз
  Отправить эту тему    Печать  
Автор Тема: Обход чёрного списка в один клик (E.BlackBypass)  (Прочитано 18542 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« : 04 января 2013, 22:58:05 »

В HandyCache из "коробки" включён готовый чёрный список. Времени он мешает. Приходится находить и выключать соответвствующее правило или придумывать как лучше сделать исключение. И чтобы не тратить время на эту ерунду, приходится отключать список целиком.

Следущее расширение позволяет обходить чёрный список в один клик, прямо из браузера.
Код:
--[[ <HCExtension>
@name            Обход чёрного списка в один клик (E.BlackBypass)
@version         0.01
@author          Anymore
@rule            ^http://hcblackbypass.
@event           RequestHeaderReceived
</HCExtension> ]]

function RequestHeaderReceived()
  -- изменяем запрос
  hc.request_header = re.replace(hc.request_header, [[Host: hcblackbypass\.(.*)$]], [[Host: \1]], false)
  hc.request_header = re.replace(hc.request_header, [[GET http://hcblackbypass\.(.*)$]], [[GET http://\1]], false)
  -- выполняем основную цель расширения, ставим белый флаг для запроса
  hc.white_mask="b"
  -- создаём отладочные сообщения
  hc.monitor_string = hc.monitor_string..'E.BlackBypass '
  t = hc.systime_to_str(os.time(), false)
  r = re.replace(hc.url, [[http://hcblackbypass\.(.*)$]], [[\1]], false)
  PutLog(t..' '..hc.user_name..':'..hc.user_ip..' '..r)
  --hc.put_msg(30, hc.request_header)
end

function PutLog(s)
  local f = assert(io.open('BlackBypass.log', 'a+'))
  if not f then return end
  f:write(s..'\n')
  f:close()
end

Для его работы нужно на вкладке {чёрный список} в поле {показывать файл} указать на
Код:
<html>

<head>
<meta http-equiv="Cache-Control" content="no-cache"> 
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
</head>

<body>
<script language="JavaScript">
  var reg = /http:\/\/(.*)/;
  var res = reg.exec(location.href);
  document.write('[<a href=http://hcblackbypass.'+res[1]+' title="Show blocked page">AD</a>]')
</script>
</body>

</html>
В вайл BlackBypass.log пишется отчёт о проведённых мимо чёрного списка запросов. Просматривая его Вы можете придумывать правила для белого списка.
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #1 : 05 января 2013, 02:09:41 »

Anymore
Отличная идея. Начал пользоваться Вашим расширением. Большое спасибо.
Сообщить модератору   Записан
nick7inc
Постоялец
***

Репутация: +3/-0
Offline Offline

Сообщений: 108


« Ответ #2 : 11 апреля 2013, 20:00:17 »

А баннеры он грузит или только по клику?
Сообщить модератору   Записан
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« Ответ #3 : 12 апреля 2013, 18:48:22 »

А баннеры он грузит или только по клику?

Мне не ясен Ваш вопрос, вообще это расширение ответ на http://handycache.ru/component/option,com_smf/Itemid,10/topic,5998.msg37826/#msg37826 и не преследует дальнейшей цели.
Сообщить модератору   Записан
Anyone
Старожил
****

Репутация: +3/-1
Offline Offline

Сообщений: 327



« Ответ #4 : 15 апреля 2013, 05:14:03 »

Можно подробней о том как запустить это расширение?

Создал в папке Extensions файл E.BlackBypass.lua, туда скопировал

Код:
--[[ <HCExtension>
@name            Обход чёрного списка в один клик (E.BlackBypass)
@version         0.01
@author          Anymore
@rule            ^http://hcblackbypass.
@event           RequestHeaderReceived
</HCExtension> ]]

function RequestHeaderReceived()
  -- изменяем запрос
  hc.request_header = re.replace(hc.request_header, [[Host: hcblackbypass\.(.*)$]], [[Host: \1]], false)
  hc.request_header = re.replace(hc.request_header, [[GET http://hcblackbypass\.(.*)$]], [[GET http://\1]], false)
  -- выполняем основную цель расширения, ставим белый флаг для запроса
  hc.white_mask="b"
  -- создаём отладочные сообщения
  hc.monitor_string = hc.monitor_string..'E.BlackBypass '
  t = hc.systime_to_str(os.time(), false)
  r = re.replace(hc.url, [[http://hcblackbypass\.(.*)$]], [[\1]], false)
  PutLog(t..' '..hc.user_name..':'..hc.user_ip..' '..r)
  --hc.put_msg(30, hc.request_header)
end

function PutLog(s)
  local f = assert(io.open('BlackBypass.log', 'a+'))
  if not f then return end
  f:write(s..'\n')
  f:close()
end

подключил на вкладке "Расширения".

Вот это куда?:

Код:
<html>

<head>
<meta http-equiv="Cache-Control" content="no-cache"> 
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
</head>

<body>
<script language="JavaScript">
  var reg = /http:\/\/(.*)/;
  var res = reg.exec(location.href);
  document.write('[<a href=http://hcblackbypass.'+res[1]+' title="Show blocked page">AD</a>]')
</script>
</body>

</html>

BlackBypass.log где найти?

Цитировать
Следущее расширение позволяет обходить чёрный список в один клик, прямо из браузера.

В браузере Опера не нашел где этот клик сделать.
Поясните пожалуйста или выложите файлы расширения в готовом виде с подробной инструкцией.
Сообщить модератору   Записан
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« Ответ #5 : 15 апреля 2013, 12:04:22 »

Можно подробней о том как запустить это расширение?

Вот это куда?:

Код:
<html>

...

</html>



В любой файл, желательно с расширением .html и сослаться на него в
http://handycache.ru/forum/index.php?action=dlattach;topic=6010.0;attach=3752;image

по поводу BlackBypass.log у меня он создаётся в папке с handycache.exe
Сообщить модератору   Записан
nick7inc
Постоялец
***

Репутация: +3/-0
Offline Offline

Сообщений: 108


« Ответ #6 : 15 апреля 2013, 13:17:24 »

Мне не ясен Ваш вопрос, вообще это расширение ответ на http://handycache.ru/component/option,com_smf/Itemid,10/topic,5998.msg37826/#msg37826 и не преследует дальнейшей цели.
Я не совсем ясно выразился.

Спрошу так: если установить это расширение, будут ли грузиться (физически передаваться данные на компьютер из интернета) графических баннеров (картинки, анимация и т.п.). Спрашиваю, поскольку интересует, будет ли дополнительная нагрузка  на трафик или гагрузка будет только при нажатии на волшебную ссылку.
Добавлено: 15 Апрель 2013, 12:57:51

Да, есть ещё одно пожелание. Данное дополнение "конфликтует" с плагином для firefox NoScript. Этот плагин блокирует скрипты для неизвестных сайтов, и ссылка на заблокированный сайт не выводится. Можно, конечно, разрешить скрипт, но тогда автоматом разрешаются скрипты с заблокированного сайта, что не есть хорошо (сам сайт я ещё не видел).
 Можно ли как-нибудь сделать вывод [AD] от имени какого-нибудь несуществующего домена, например, E.BlackBypass.cm. Его можно тогда ввести в список сайтов с разрешёнными скриптами. В этом случае скрипт  E.BlackBypass будет:
1) работать тогда без дополнительных действий со стороны пользователя;
2) не надо будет разрешать скрипты для сайта, не видя содержимого самого сайта.
Сообщить модератору   Записан
Anyone
Старожил
****

Репутация: +3/-1
Offline Offline

Сообщений: 327



« Ответ #7 : 15 апреля 2013, 13:18:37 »

Вобщем опять пусто.

Сделал так:

1. Положил файл E.BlackBypass.lua в папку \HandyCache\Extensions\BlackBypass и добавил в расширения НС



2. Там же создал файл BlackBypass.html и на вкладке {чёрный список} в поле {показывать файл} указал на \HandyCache\Extensions\BlackBypass\BlackBypass.html



3. Сохранил настройки НС и перезапустил его.

Походил по сайтам, файла BlackBypass.log как не было так и нет проверял поиском Windows.

Вот меню Оперы



Куда ткнуть чтобы
Цитировать
обходить чёрный список в один клик, прямо из браузера

HandyCache RC3 1.0.0.413, СМ 1.01.1
Сообщить модератору   Записан
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« Ответ #8 : 15 апреля 2013, 13:33:57 »

Я не совсем ясно выразился.

Спрошу так: если установить это расширение, будут ли грузиться (физически передаваться данные на компьютер из интернета) графических баннеров (картинки, анимация и т.п.). Спрашиваю, поскольку интересует, будет ли дополнительная нагрузка  на трафик или гагрузка будет только при нажатии на волшебную ссылку.

Это расширение не создаёт никакой дополнительной нагрузки ни на процессор ни на сеть, это было главным критерием при написании. НО! Оно работает в паре с чёрным списком.

Можно ли как-нибудь сделать вывод [AD] от имени какого-нибудь несуществующего домена
Попробуйте как-н добавить домен по маске hcblackbypass.* и заодно изменить надпись AD в html на что-н другое.
Добавлено: 15 Апрель 2013, 13:27:41

Куда ткнуть чтобы

если добавить в чёрный список правило .*
тобиш запретить всё, то HC будет выдавть только страницу на которой написано

[AD]

AD является ссылкой ссылкой на обход
Сообщить модератору   Записан
Anyone
Старожил
****

Репутация: +3/-1
Offline Offline

Сообщений: 327



« Ответ #9 : 15 апреля 2013, 14:29:43 »

если добавить в чёрный список правило .*
тобиш запретить всё, то HC будет выдавть только страницу на которой написано

[AD]

AD является ссылкой ссылкой на обход

[AD] - именно так Outpost Security Suite (которым я пользуюсь) обозначает заблокированную рекламу и это отнюдь не ссылка
Сообщить модератору   Записан
nick7inc
Постоялец
***

Репутация: +3/-0
Offline Offline

Сообщений: 108


« Ответ #10 : 15 апреля 2013, 14:41:33 »

Попробуйте как-н добавить домен по маске hcblackbypass.* и заодно изменить надпись AD в html на что-н другое.
Как AD менять я уже понял, а вот как добавить по маске - не знаю. Плагин добавляет конкретный домен без звезды (я имею ввиду его белый список). Блокировка этой временной страницы происходит от домена того сайта, куда переходишь по клику на [AD].
P.S. Или я что-то не так понял.
« Последнее редактирование: 15 апреля 2013, 16:40:02 от nick7inc » Сообщить модератору   Записан
Anyone
Старожил
****

Репутация: +3/-1
Offline Offline

Сообщений: 327



« Ответ #11 : 15 апреля 2013, 17:29:06 »

1. Добавил ".*" правило в черный список, поменял надпись [AD] на [Blocked] - запустилось.
2. Получил порушенные страницы (если принудительно их обновить):



, которые без этого расширения выглядят нормально.
3. Не работает кнопка Оперы - ввод логина и пароля (в виде ключа, на скринах видно)
4. BlackBypass.log появился прямо на рабочем столе

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

Цитировать
если добавить в чёрный список правило .*
тобиш запретить всё, то HC будет выдавть только страницу на которой написано [AD]

Расширение E.BlackBypass.lua отключает чёрный список? Не понятен механизм его работы, так сказать, принципиальная схема
Сообщить модератору   Записан
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« Ответ #12 : 15 апреля 2013, 19:53:21 »

Как AD менять я уже понял, а вот как добавить по маске - не знаю. Плагин добавляет конкретный домен без звезды (я имею ввиду его белый список). Блокировка этой временной страницы происходит от домена того сайта, куда переходишь по клику на [AD].
Странно... надо будет попробовать...
Добавлено: 15 Апрель 2013, 19:44:25


2. Получил порушенные страницы (если принудительно их обновить), которые без этого расширения выглядят нормально.

3. Не работает кнопка Оперы - ввод логина и пароля (в виде ключа, на скринах видно)

4. BlackBypass.log появился прямо на рабочем столе
 не получается.

Расширение E.BlackBypass.lua отключает чёрный список? Не понятен механизм его работы, так сказать, принципиальная схема

то, что  BlackBypass.log появился на рабочем столе, да это не правильно
в остальном сперва следует разобраться как работает расширение,
и понять что это лишь попытка решить поставленную в #3 задачу

Сообщить модератору   Записан
Anyone
Старожил
****

Репутация: +3/-1
Offline Offline

Сообщений: 327



« Ответ #13 : 15 апреля 2013, 22:06:06 »

в остальном сперва следует разобраться как работает расширение,
и понять что это лишь попытка решить поставленную в #3 задачу

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

Цитировать
СПАСИБО всем, кто ответит!

по теме, если посмотреть по ссылке   handycache.ru/component/option,com_smf/Itemid,10/action,printpage/topic,1120.0/

там есть описание метода просмотра заблокированного содержимого (_ShowSpam_)
в реализации которого _ShowSpam_ дописывается к URL, а белый список пропускает такой URL
НО, как мне тут объяснили, при обработке строки используются только первые 800 байт, т.е.
если URL слишком длинный - не прокатит.
мысль, как реализовать - вставлять в URL первый параметр (например ShowSpam=t)
т.е. есть на входе URL sowsoft.com/products.htm  -  на выходе делаем sowsoft.com/products.htm?ShowSpam=t
или
есть на входе URL google.ru/#hl=ru&newwindow=1&tbo=d ...  -  на выходе делаем google.ru/#hl=ru&ShowSpam=t&newwindow=1&tbo=d ...

ВОПРОС
как реализовать это на javascript


2. Суть задачи, как я понял, это просмотр заблокированного содержимого.
Результат использования данного расширения:



Все содержимое лога BlackBypass.log при этом:

Код:
Mon, 15 Apr 2013 21:45:59 local:127.0.0.1 http://handycache.ru/

Как понять, что заблокировано?

Вообще хотелось бы расширения, которое в один клик показало бы, что заблокировано НС и СМ с указанием правила блокировки.
И без дополнительных переходов с пустой страницы.
Сообщить модератору   Записан
nick7inc
Постоялец
***

Репутация: +3/-0
Offline Offline

Сообщений: 108


« Ответ #14 : 15 апреля 2013, 22:49:58 »

Странно... надо будет попробовать...

Вот, что у меня получается.
Сообщить модератору   Записан
nick7inc
Постоялец
***

Репутация: +3/-0
Offline Offline

Сообщений: 108


« Ответ #15 : 16 апреля 2013, 11:58:40 »

Вообще хотелось бы расширения, которое в один клик показало бы, что заблокировано НС и СМ с указанием правила блокировки.
И без дополнительных переходов с пустой страницы.
Хотелось бы добавить к этому. Поскольку СМ часто приходится настраивать, то желательно сделать по-удобнее доступ к редактированию правил СМ, на подобие того, как сделано с чёрным списком HC, т.е. в логе по правой кнопке можно сразу перейти к правилу, вызвавшее срабатывание блокировки. А так приходится делать кучку кликов, пока доберёшься до расширения, пока до его правила, поломаешь голову, какое правило сработало...
Сообщить модератору   Записан
Anymore
Beta tester
*****

Репутация: +17/-0
Offline Offline

Сообщений: 339


« Ответ #16 : 16 апреля 2013, 16:26:40 »

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

Тогда надо придумывать как встроить это в СМ. Надо общаться с Михаилом, автором СМ. Других вариантов нет. К тому-же это единственный способ решить твою проблему конфликта с блокировщиком скриптов.


Добавлено: 16 Апрель 2013, 16:16:38

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

В HC прописан файл возвращаемый клиенту если УРЛ заблокирован.
Когда браузер интерпретирует этот файл он исполняет JavaScript, который генерирует ссылку.

Берётся исходный УРЛ, и добавляется к нему [hcblackbypass.] точно между [http://] и [domain.zone/path....]

Когда происходит запрос по этому адресу средствами расширения стирается [hcblackbypass.]
добавляется маркер белого списка и запрос уходит на конечный сервер.
Сообщить модератору   Записан
Страниц: [1]   Вверх
  Отправить эту тему    Печать  

 
Перейти в: