• Страница 1 из 1
  • 1
Форум Studio AD » Сайтостроение » Общий форум по Javascript » Импровизированная система защиты №2 (Кто первым ответит на вопрос в теме - получит пирож)
Импровизированная система защиты №2
Aleko
Дата: Четверг, 20.08.2009, 00:37 | Сообщение # 1
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Итак, пытаясь защититься от дизоворов, я написал очередной вариант системки защиты. Сейчас она оптимизирована под защиту исполняемых js функций. А конкретно сейчас она защищает один единственный алерт. Вот сам код скрипта защиты.

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

Code
<script>
function scram(u){var a,c,i,d;c=u.split('-');d=location.host.split('');a=0;for(i=1;i<c.length;i++){c[i]=String.fromCharCode(5555-c[i]-d[a].charCodeAt());a=a==d.length-1?0:++a}eval(c.join(''))}scram('-5343-5331-5337-5341-5334-5404-5419-4400-4421-4361-4353-4368-4363-4355-4378-4372-4359-4372-436    6-4419-4341-5406-4353-4353-4362-4365-4376-4367-4370-4377-4433-4364-4353-4368-5406-5399-5414');
</script>

Об этой теме:

Предлагаю посвятить тему защите от копирования js. Предлагайте свои идеи и варианты, давайте ссылки.

О ходе мыслей:

Я достаточно много читал по данному вопросу и достаточно много затратил времени на свои варианты его решения. Во многих источниках на вопрос "как защитить javascript?" дается лаконичный ответ "Никак, невозможно.". Обосновывают этот ответ достаточно веско: javascript попадает в кэш браузера, а оттуда его можно спокойно забрать.

Ну, хочу заметить, скрипт можно запретить кэшировать. Затем, если у нас есть свой сервер, то перед отдачей скрипта пользователю, можно проверять содержание запроса на предмет адресата и в зависимости от того, кто запрашивает скрипт, наш сайт или сторонний компьютер, уже решать, отдавать скрипт или нет. Это в идеале.

Что делать, если сервера своего у нас нет? Остается последний вариант, изменять сам скрипт так, чтобы он отличал вора от простого юзера. Или мешал вору воровать. Вот тут то и включается фантазия!

Один из вариантов - js обфускатор или компрессор с уникальной возможностью сжатия, например "Packer". Он хорош всем, кроме одного. никакой защиты он не дает. Спустя 10 минут я нашел в сети дешифратор для Packer и до сих пор успешно и часто им пользуюсь.

Другой вариант - закодировать js и позволять ему раскодироваться только на собственном сайте. Это тоже можно реализовать несколькими путями. Вот идеи, возникшие у меня:

1. Кроссдоменные передачи данных невозможны. Значит первое что должен попробовать скрипт, так это загрузить какой либо файл из корневой директории сайта, для которого написан. если это получилось - скрипт в безопасности и его можно запускать. Уязвимость: умный пользователь.

2. Проверить хост на котором открыт скрипт. Если хост свой - скрипт можно открывать. Уязвимость: умный пользователь.

3. Мысль пришла в голову только сейчас.. сейчас попробую и опишу...
Попробовал - получилось. Значит так. Ещё вариант, на главной странице написать маленький скриптик, котрый бы запрашивал, с помощью автоматической вставки ссылки на скрипт, ключ с сайта, для раскодирования основного скрипта. Уязвимость: умный пользователь, извращенец.


Бесплатные обои.
  
Vanofuture
Дата: Пятница, 21.08.2009, 00:41 | Сообщение # 2
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Принадлежно :D
  
Aleko
Дата: Пятница, 21.08.2009, 00:46 | Сообщение # 3
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Vanofuture, быстро раскусил и весь ли текст получил? ^_^

Бесплатные обои.
  
Vanofuture
Дата: Пятница, 21.08.2009, 00:49 | Сообщение # 4
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Quote (Aleko)
Уязвимость: умный пользователь.

И это основная проблема. Кроме недориперов-плагиатчиков есть люди которые профессионально этим занимаются и знают что идеальной защиты нету, и если надо и рипнут, и раскодируют, и стырят.
  
Vanofuture
Дата: Пятница, 21.08.2009, 00:49 | Сообщение # 5
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Aleko, заняло секунд 15 :)
  
Aleko
Дата: Пятница, 21.08.2009, 00:57 | Сообщение # 6
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Vanofuture, да согласен. В этом большая проблема - достаточно вставить вместо запроса хоста сам хост. В приниципе единственная надежда на то, что полезет всякая школота и не увидит очевидного. А вообще идей нет, как ещё можно защитить, похитроумней?

Бесплатные обои.
  
Aleko
Дата: Пятница, 21.08.2009, 00:59 | Сообщение # 7
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Vanofuture, а между тем, если не знать ключа - взломать практически нереально. значит можно развивать тему, только придумать иной ключ, точнее способ его получения.

Бесплатные обои.
  
Vanofuture
Дата: Пятница, 21.08.2009, 01:17 | Сообщение # 8
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Aleko, привязывать к сайту как только можно. Адрес, элементы на страницы, их атрибуты. Из них делать уникальный ключ. А ещё очень помогает если скрипт сам по себе сложный. У меня были случаи что даже когда риперы добирались до скрипта, они ничего не могли сделать и забрать себе, ибо скрипт был сложный: десятки функций переплетённых между собой, привязанные к дизайну сайта и его элементам, и его адресу.
Quote (Aleko)
между тем, если не знать ключа

Обычно тырят прямо с сайта, и ключ можно достать так как скрипт выполняется.
  
nеmo
Дата: Пятница, 21.08.2009, 01:25 | Сообщение # 9
Группа: Удаленные
А я нечего несмог раскусить (с js необнимался еще), и плагиаты с юкоз тоже бы несмогли понять тоесть думаю защита работает от кого то уже. up
  
Aleko
Дата: Пятница, 21.08.2009, 01:26 | Сообщение # 10
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Quote (Vanofuture)
элементы на страницы, их атрибуты.

Как раз хотел предложить привязку к коду или тайтлу. Тоже ведь вариант.


Бесплатные обои.
  
nеmo
Дата: Пятница, 21.08.2009, 01:30 | Сообщение # 11
Группа: Удаленные
Ты будешь публиковать скрипт защиты?
  
chu4___x
Дата: Пятница, 21.08.2009, 02:26 | Сообщение # 12
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Quote (Aleko)
Как раз хотел предложить привязку к коду или тайтлу. Тоже ведь вариант.

Давно делал для пастбина, потом забыл... принцип не сложный, но букв много :D
Прикрепления: fuckyouselffuck.rar (1.6 Kb)


«POST данные для модулей системы»
  
Aleko
Дата: Пятница, 21.08.2009, 15:37 | Сообщение # 13
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x, на квери в 20 строк.. буээ. У меня то же самое только в 2 строки и автоматом.

Бесплатные обои.
  
Vanofuture
Дата: Пятница, 21.08.2009, 22:28 | Сообщение # 14
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Aleko, зато как запутано :D
  
Aleko
Дата: Пятница, 21.08.2009, 23:21 | Сообщение # 15
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Vanofuture, дауш lol O_o

Бесплатные обои.
  
Zoxy
Дата: Суббота, 22.08.2009, 08:43 | Сообщение # 16
говорун
Группа: Модераторы
Пользователь №: 24
Сообщений: 275
Получено оценок: 17
Защита от плагиата №3.

Просим Алеко отписаться на сайте с плагиатом.
99%. Плагиатор и плагиат попячены.


Ололо или неололо? Вот в чем пыщьпыщь...
www.zox-art.ru — Открыто, но еще дорабатывается.
  
Бармалей
Дата: Воскресенье, 23.08.2009, 07:21 | Сообщение # 17
молчун
Группа: Проверенные
Пользователь №: 110
Сообщений: 22
Quote (Aleko)
Ну, хочу заметить, скрипт можно запретить кэшировать. Затем, если у нас есть свой сервер, то перед отдачей скрипта пользователю, можно проверять содержание запроса на предмет адресата и в зависимости от того, кто запрашивает скрипт, наш сайт или сторонний компьютер, уже решать, отдавать скрипт или нет. Это в идеале.
Обходится на раз-два. Привет, Vanofuture :)
Quote (Aleko)
Обосновывают этот ответ достаточно веско: javascript попадает в кэш браузера, а оттуда его можно спокойно забрать.
Бредовый аргумент. Невозможно защитить JS-код, потому что он выполняется в незашифрованном виде! Любой, даже самый защищенный скрипт в конечном счете выполняется в исходном виде с JS синтаксисом. У нас пока нет возможности компилировать JS-скрипты а-ля php (Кто знает - тот поймет, кто нет - пусть гуглит).

Как мы видим из написанного в первом посте, ничто не остановит мастера на пути к Вашему скрипту.

Quote (Aleko)
Vanofuture, а между тем, если не знать ключа - взломать практически нереально. значит можно развивать тему, только придумать иной ключ, точнее способ его получения.
Глупо дешифровывать у клиента под носом. Клиент, в таком случае, не должен видеть ничего, кроме защифрованного кода. Т.е. ни исходного, ни конечного.
В JS такое невозможно.

P.S.

Code
alert('Принадлежно


Сообщение отредактировал Бармалей - Воскресенье, 23.08.2009, 07:28
  
Aleko
Дата: Воскресенье, 23.08.2009, 13:04 | Сообщение # 18
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Бармалей, ты как то категорично к этому подходишь. Само собой некомпилируемый язык скрыть полностью невозможно, да ещё и язык, выполняющийся на клиенте. Вопрос в том, как уберечь прочтение исходников от как можно большего процента пользователей.

Бесплатные обои.
  
Бармалей
Дата: Воскресенье, 23.08.2009, 13:19 | Сообщение # 19
молчун
Группа: Проверенные
Пользователь №: 110
Сообщений: 22
Что мешает этому "как можно большему проценту пользователей" вомпользоваться Стрекозой (Dragonfly) из оперы?
  
Vanofuture
Дата: Воскресенье, 23.08.2009, 13:29 | Сообщение # 20
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Бармалей, то что они, слава богу, даже не знают что это такое, не говоря уж о том как её использовать :D
  
Бармалей
Дата: Воскресенье, 23.08.2009, 13:47 | Сообщение # 21
молчун
Группа: Проверенные
Пользователь №: 110
Сообщений: 22
Vanofuture,
Quote (Vanofuture)
Кроме недориперов-плагиатчиков есть люди которые профессионально этим занимаются и знают что идеальной защиты нету, и если надо и рипнут, и раскодируют, и стырят.
  
Vanofuture
Дата: Воскресенье, 23.08.2009, 14:44 | Сообщение # 22
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Бармалей,
Quote (Бармалей)
люди которые профессионально этим занимаются

...не входят в основной процент пользователей ^_^
  
Бармалей
Дата: Воскресенье, 23.08.2009, 17:13 | Сообщение # 23
молчун
Группа: Проверенные
Пользователь №: 110
Сообщений: 22
Quote (Vanofuture)
не входят в основной процент пользователей
А кто говорил про основной процент пользователей? Основному проценту пользователей пофиг, что у Вас в исходнике (исключение - мегасофт). Алеко же говорил про как можно больший процент, который может достигать 100% (только не у JS).


Сообщение отредактировал Бармалей - Воскресенье, 23.08.2009, 17:13
  
Vanofuture
Дата: Воскресенье, 23.08.2009, 17:53 | Сообщение # 24
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Бармалей, я имел основной процент пользователей-плагиатчиков. А вообще зависит ещё от самого сайта. Например для uCoz-сайтов основной враг — недоплагиатчики.
Quote (Бармалей)
исключение - мегасофт

Например в случае с хэлпером, основной процент плагиатчиков оттуда. :D
  
Aleko
Дата: Вторник, 25.08.2009, 22:06 | Сообщение # 25
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Quote (Vanofuture)
Бармалей, я имел основной процент пользователей-плагиатчиков.

Черт подери! Вот проскочит же такое!И на душе сразу как то хорошо так... ^_^


Бесплатные обои.
  
n1ght(o_O)
Дата: Вторник, 25.08.2009, 22:09 | Сообщение # 26
говорун
Группа: Проверенные
Пользователь №: 10
Сообщений: 180
Получено оценок: 6
Vanofuture, Да там не риперы , а говно риперы fear
  
Vanofuture
Дата: Четверг, 03.09.2009, 00:33 | Сообщение # 27
молчун
Группа: Пользователи
Пользователь №: 35
Сообщений: 27
Получено оценок: 2
Quote (Vanofuture)
Бармалей, я имел основной процент пользователей-плагиатчиков.

Не, ну я надеюсь что вы все поняли что пропущено слово «ввиду». fear lol
  
Форум Studio AD » Сайтостроение » Общий форум по Javascript » Импровизированная система защиты №2 (Кто первым ответит на вопрос в теме - получит пирож)
  • Страница 1 из 1
  • 1
Поиск:
© Studioad.ru 2006 · 2010. Использование материалов форума на сторонних ресурсах без прямой обратной ссылки строго запрещено. Хостинг от uCoz.