Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Заметка с BagTraq.ru о защите online-библиотек

1 view
Skip to first unread message

Alex Skurnick

unread,
Oct 12, 2007, 1:06:49 AM10/12/07
to
Здравствуйте, ALL.

-------------------cut-------------------
О защите текстов на вебе
dl // 04.10.07 00:18
Когда несколько месяцев назад litres.ru опубликовал свои планы по
созданию веб-библиотек, дающих только читать книги (обычным броузером
и в текстовом формате, заметьте) и блокирующих скачивание и
копирование, большинство людей, сколько-то разбирающихся в устройстве
веба, просто пожали плечами. Однако ж проект был запущен и за остаток
лета - начало осени в как бы защищенном виде были выложены книги
нескольких популярных авторов. А очередная хвалебная статья о
грамотном и своевременном открытии данного сервиса сподвигла меня
посмотреть поближе, что ж там внутре.

Disclaimer: дальнейшие действия проводились не корысти ради, а токмо
во имя спортивного интереса (выражаясь формально, в целях анализа
стойкости предложенной защиты). Внутре ж оказалась умеренно
навороченная двухуровневая защита от начинающего пользователя. Первый
уровень - набор функций на JavaScript, всячески мешающих копированию
текста, например, путем сбрасывания выделения каждые 10 секунд (сам
текст тоже выводится JS, так что его отключение ни к чему полезному не
приведет). Обходится элементарно путем задания в каком-нибудь
промежуточном фильтре типа AdMuncher'а правила, комментирующего первый
вызов сбрасывающей выделение функции. Этого вполне достаточно для
FireFox, для IE потребуется блокировка еще пары обработчиков событий.
Второй уровень запрятан получше и приводит к тому, что после
copy/paste текста он оказывается разбавлен массой мусорных символов,
приводящих к его полной нечитаемости. Причем скрипт, выводящий текст,
имеет одноразовый url, вызывается из iframe с опять-таки одноразовым
url, так что добраться до его исходников невооруженным глазом
затруднительно (последующие прямые обращения просто ничего не
отдадут). Хотя по-прежнему элементарно для человека, вооруженного
любым анализатором http-пакетов (собственно говоря, при наличии такого
анализатора отпадает и необходимость в copy/paste из окна броузера,
разве что последний вариант чуть более комфортен). Вставка мусора,
проявляющегося только при копировании, реализована достаточно
любопытно - мусорные символы вставляются с помощью блоков <span> со
стилем, отключающим их видимость. Таким образом, при показе текста в
окне броузер их игнорирует, но честно (и глупо) отдает в буфер обмена.
Итог - вся защита оказывается снятой с помощью двух коротеньких правил
AdMuncher'а (аналогичный подарок могут сделать своим пользователям
администраторы прокси-серверов). Строить библиотечный бизнес на таком
хлипком фундаменте - не знаю, не знаю. С другой стороны, электронные
версии книг продаются за столь смешные деньги, что у многих читателей
поневоле возникает позыв отряхнуть со своих ног прах пиратского
прошлого - приятно почувствовать себя добропорядочным гражданином за
такие копейки. Так что психология тут срабатывает надежнее технических
средств. Update: как мне подсказывают, все еще проще - достаточно
воспользоваться FFшным плагином ScrapBook.

--------------------end cut-----------------------

--
BR. Alex


Kalachihin Vladimir

unread,
Oct 12, 2007, 4:36:12 AM10/12/07
to
Приветствую тебя, Alex!

Replying to a message of Alex Skurnick to All:

AS> Update: как мне
AS> подсказывают, все еще проще - достаточно воспользоваться FFшным
AS> плагином ScrapBook.

Кто-нибудь может прокомментировать? А то до меня не дошло - как.

Калачихин Владимир.

Kirill Temnenkov

unread,
Oct 12, 2007, 6:15:22 AM10/12/07
to
Здpавствуй, Kalachihin!

Пятница 12 Октября 2007 13:36, ты писал(а) Alex Skurnick:


AS>> Update: как мне
AS>> подсказывают, все еще проще - достаточно воспользоваться FFшным
AS>> плагином ScrapBook.

KV> Кто-нибудь может прокомментировать? А то до меня не дошло - как.

1) ставишь плагин ScrapBook (https://addons.mozilla.org/ru/firefox/addon/427)
2) открываешь текст на литресе
3) говоришь "захватить страницу"
4) захваченную (сохраненную страницу) открываешь этим же ScrapBook, сохраняешь
на диск - и дальше скриптом вычищаешь в html многочисленные span и прочий мусор


>───═══ Куть он "Windows Clipboard" ═══───
Скажите, а<span class="h">оп</span> эти собаки - йоркширские<span
class="h">иж</span> терьеры?</div><div
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:fb="http://www.gribuser.ru/xml/fictionbook/2.0" align="justify">
&nbsp;&nbsp;&nbsp;-&nbsp;Отчасти,&nbsp;<span
>───═══ Куть офф "Windows Clipboard" ═══───

С уважением - Kirill

Alexey Tsaryov

unread,
Oct 12, 2007, 5:57:56 AM10/12/07
to
/Приветик, Kalachihin!/

Давным-давно, *12 Окт 2007* *13:36*, ты имел неосторожность
побеспокоить *Alex Skurnick*.

AS>> Update: как мне
AS>> подсказывают, все еще проще - достаточно воспользоваться FFшным
AS>> плагином ScrapBook.

KV> Кто-нибудь может прокомментировать? А то до меня не дошло - как.
Hе знаю уж, как в ФФ, а в Опере достаточно загрузить кекст и отключить
яваскрипт.

Покеда!
Alex Rex

... [Полиция нравов NiNoNet] [Зиму - давить!]

Mikhail Stroganov

unread,
Oct 12, 2007, 8:07:44 AM10/12/07
to
Ehlo Alexey

Hасчет письма от Alexey Tsaryov к Kalachihin Vladimir вот что скажу:

AS>>> Update: как мне
AS>>> подсказывают, все еще проще - достаточно воспользоваться FFшным
AS>>> плагином ScrapBook.
KV>> Кто-нибудь может прокомментировать? А то до меня не дошло - как.

AT> Hе знаю уж, как в ФФ, а в Опере достаточно загрузить кекст и отключить
AT> яваскрипт.

И что особенно хорошо - мусор в span при этом не копируется и вычищать его не
требуется.

amdf00#gmail.com http://amdf.pp.ru
... Hapoднaя Kopпopaтивнaя Pecпyбликa Цapицын Kлacтep

Kalachihin Vladimir

unread,
Oct 12, 2007, 10:26:08 AM10/12/07
to
Приветствую тебя, Kirill!

Replying to a message of Kirill Temnenkov to Kalachihin Vladimir:

KT> 1) ставишь плагин ScrapBook
KT> (https://addons.mozilla.org/ru/firefox/addon/427) 2) открываешь
KT> текст на литресе 3) говоришь "захватить страницу" 4) захваченную
KT> (сохраненную страницу) открываешь этим же ScrapBook, сохраняешь на
KT> диск - и дальше скриптом вычищаешь в html многочисленные span и
KT> прочий мусор

А... Hу, это не интересно... Hо страницу он захватывет прикольно, да. Особенно
когда хватаешь не страницу, а только требуемый текст.
Hо собственно, только в удобствах прикол и заключается... Сохранить страницу с
(в целом говоря) ЛитРеса никаких проблем не представляет - для этого есть масса
способов. (Мне, лично, больше всего нравится SmartCache :-) Hо вот лишние
буковки вычищать - всё равно надо скрипт писать. Скрипт, конечно, плёвый, но
вот вставлять его в конкретное окружение для реального использования...

Т.е., я ожидал, что DOM редактор из ScrapBook позволит мне выкинуть все span
class='h' прямо на месте.

Вообще: вот Aardvark - нормальная вещь, но что удалить - только мышой можно
показывать. А казалось бы - есть собственный view source (нормальный, кстати) -
почему нельзя удалять объекты оттуда? Или по поиску?


Калачихин Владимир.

И ещё - я подозревал, что люди из ЛитРес - м...звоны, но когда посмотрел код их
страниц... Hе, проблески есть, но это типичное ламерско-пионерское поделие.
Думаю, не жилец. Во всяком случае, я никого из них на работу не возьму.

Mikhail Stroganov

unread,
Oct 13, 2007, 3:34:46 AM10/13/07
to
Ehlo Kalachihin

Hасчет письма от Kalachihin Vladimir к Kirill Temnenkov вот что скажу:

KV> SmartCache :-) Hо вот лишние буковки вычищать - всё равно надо скрипт
KV> писать. Скрипт, конечно, плёвый, но вот вставлять его в конкретное
KV> окружение для реального использования...

В опере - не надо.

amdf00#gmail.com http://amdf.pp.ru
... Kopпopaтивнaя Opбитaльнaя Pecпyбликa Mopя Яcнocти

Alex Skurnick

unread,
Oct 17, 2007, 7:14:56 AM10/17/07
to
Здравствуйте, Kalachihin.

Вы писали 12 октября 2007 г., 18:46:27:

KV> Приветствую тебя, Kirill!

KV> Replying to a message of Kirill Temnenkov to Kalachihin Vladimir:



KT>> 1) ставишь плагин ScrapBook
KT>> (https://addons.mozilla.org/ru/firefox/addon/427) 2) открываешь
KT>> текст на литресе 3) говоришь "захватить страницу" 4) захваченную
KT>> (сохраненную страницу) открываешь этим же ScrapBook, сохраняешь на
KT>> диск - и дальше скриптом вычищаешь в html многочисленные span и
KT>> прочий мусор

KV> А... Hу, это не интересно... Hо страницу он захватывет прикольно, да.
KV> Особенно когда
KV> хватаешь не страницу, а только требуемый текст.
KV> Hо собственно, только в удобствах прикол и заключается... Сохранить
KV> страницу с (в целом
KV> говоря) ЛитРеса никаких проблем не представляет - для этого есть масса
KV> способов. (Мне,
KV> лично, больше всего нравится SmartCache :-) Hо вот лишние буковки вычищать
KV> - всё равно
KV> надо скрипт писать. Скрипт, конечно, плёвый, но вот вставлять его в
KV> конкретное окружение
KV> для реального использования...

В FF есть ещё один плаг который здесь можно применить - greasemonkey.
Он позволяет накатывать на загружаемые страницы по фильтру собственные
скрипты. Люди уже тысячи скриптов как общих так и для конкретных
сайтов написали.

ЗЫ: А scrapbook кроме просто сохранения странички умеет ещё как
оффлайн-эксплорер загружать их на заданную глубину начиная от
текущей. Что грузить - можно задать фильтром. Жабаскрипт в нём можно
включить.


--
BR. Alex


Kalachihin Vladimir

unread,
Oct 17, 2007, 9:59:16 AM10/17/07
to
Приветствую тебя, Alex!

Replying to a message of Alex Skurnick to Kalachihin Vladimir:

AS> В FF есть ещё один плаг который здесь можно применить - greasemonkey.
AS> Он позволяет накатывать на загружаемые страницы по фильтру
AS> собственные скрипты.

Да, в сочетании с Platypus! - вообще застрелиться... Главное - освоить :-)

В общем - в принципе нет проблем сохранять текст с ЛитРеса в человеческом виде
автоматически. Создав желаемый скрипт самому с помощью Platypus! или взяв
готовый. Hо - в процесе просмотра.

Калачихин Владимир.

0 new messages