Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 27/09/10 в 20:19 |
Сабж. Как лучше? Использую jQuery, будет подобие плагина, наверное.
Но код довольно сложный, не хочу чтобы его юзал кто-то ещё.
Есть вопросы:
Сжатие = уже защита? И как сжимается код?
Кодирование = "данный сайт может повредить вашему компьютеру" в серпе?
Ну и вообще по теме интересно услышать инфу.
Спасибо.
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 27/09/10 в 20:43 |
А зачем ?
Сжатие же помогает быстрее загрузить скрипт, т.е. сэкономить бандвич и быстрее отобразить страницу.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
5
|
|
|
Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 27/09/10 в 20:56 |
Да, сэкономить время на загрузку страницы - тоже плюс. Как код обычно сжимают?
И разбираться потом в таком коде - хрен разберёшься, я думаю? Это тоже плюс.
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7615
Рейтинг: 5760
|
Добавлено: 27/09/10 в 21:40 |
ищи обфускатор
>хрен разберёшься, я думаю
геморно но можно
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 27/09/10 в 21:59 |
защитить js как таковой нельзя - он исполняется на стороне клиента. единственно что можно - часть кода перенести на сторону сервера (в php скрипт к примеру), который возвращал бы какие-то критические переменные или части кода.
ну и классическая цитата ) если ты как-то "закодируешь" js (сожмешь или прогонишь через обфускатор) то затраты на расшифровку кода должны значительно превышать затраты на написание аналога с 0. тогда "злоумышленнику" не будет смысла разбирать твой код.
Последний раз редактировалось: LeadFarmer (27/09/10 в 22:16), всего редактировалось 1 раз
|
|
|
|
Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 27/09/10 в 22:15 |
LeadFarmer: примерно понятно. Но тут нужно крепко думать про безопасность.
За обфускатор спасибо, не знал такого. Копаю дальше..
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 27/09/10 в 22:22 |
кстати если нагуглишь такую отличную вещь как "Microsoft Script Encoder" - не трогай ее. гавно гавном в взламывается за секунды соответствующим софтом (его тоже легко нагуглить)
|
|
|
|
С нами с 25.08.08
Сообщения: 18752
Рейтинг: 1253
|
Добавлено: 27/09/10 в 22:50 |
|
|
|
|
Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 27/09/10 в 22:57 |
Magistrator: спасибо, кажется то что нужно.
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 27/09/10 в 23:09 |
только не забудь после таких обфускаторов проверять получившийся код АВ-сканерами
|
|
|
|
С нами с 18.05.07
Сообщения: 8329
Рейтинг: 4007
|
Добавлено: 28/09/10 в 00:50 |
А онлайн где то можно проверить?
|
|
|
|
Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 28/09/10 в 09:09 |
LeadFarmer писал: | только не забудь после таких обфускаторов проверять получившийся код АВ-сканерами |
Там вроде бы всё понятно, ничего лишнего не добавляется.
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 28/09/10 в 09:27 |
goodlover писал: | Там вроде бы всё понятно, ничего лишнего не добавляется. |
проблема в том, что эксплоиты под браузеры часто криптуют обфускаторами, в том числе и теми что есть в свободном доступе. и некоторые АВ начинают определять сам обфускатор как вредоносный код. проверить в принципе просто - js код пропустить через вирустотал
|
|
|
|
С нами с 18.05.07
Сообщения: 8329
Рейтинг: 4007
|
Добавлено: 29/09/10 в 06:13 |
LeadFarmer писал: | проверить в принципе просто - js код пропустить через вирустотал |
Т.е. можно просто загрузить html файл с ява скриптом?
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 29/09/10 в 07:11 |
sydoow писал: | Т.е. можно просто загрузить html файл с ява скриптом? |
да.
кстати посмотрел как работает обфускатор по ссылке: http://dean.edwards.name/packer/ - толку от него 0
к тому же
он зашифрует в
то есть точка с запятой после каждой строки в исходном js - все-таки обязательна. а я себя всеми силами отучал не ставить ;
|
|
|
|
С нами с 31.05.10
Сообщения: 1991
Рейтинг: 487
|
Добавлено: 29/09/10 в 07:46 |
теперь беру промышленный инструмент: http://compressorrater.thruhere.net/
пишу код: document.write("obfuscated")
на выходе получаю:
Код: [развернуть] |
eval(function(p,a,c,k,e,r){e=String;if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'^$'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('document.write("obfuscated")',[],1,''.split('|'),0,{}))
|
(там таблица появится с разными видами компрессии - я выбрал какой-то из Packer 3.1)
проверка по вирустотал дала 0 вирусов: http://www.virustotal.com/file-scan/report.html?id=38375f1de2f6eeb7
1285735321
|
|
|
|
С нами с 18.05.07
Сообщения: 8329
Рейтинг: 4007
|
Добавлено: 13/10/10 в 01:58 |
Прикольный сайтик
А ещё есть чтонибудь подобное, да ещё чтобы мусора в код ЖС намешать?
|
|
|
|
Любитель хорошего ;)
С нами с 08.06.07
Сообщения: 16151
Рейтинг: 6269
|
Добавлено: 13/10/10 в 08:30 |
Немного безвредного мусора не помешало бы, да.
|
|
|
|
Чингачгук, вождь красноглазых
С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824
|
Добавлено: 13/10/10 в 12:28 |
goodlover писал: | Сабж. Как лучше? Использую jQuery, будет подобие плагина, наверное.
Но код довольно сложный, не хочу чтобы его юзал кто-то ещё.
|
Тут все просто. Если на самом деле что-то серьезное - уноси на сервер, используй AJAX, не отдавай код клиенту.
Если он нужен всем - разберут и будут использовать. Вся "защита" JS-скриптов, включая самые "навороченные" обфускаторы, которыми пользуются авторы троянов, ломается правкой нескольких символов - на каком-то этапе настоящий скрипт должен все равно быть отдан броузеру, вот тут его и перехватывают.
Работать защита такая будет в одном случае - если код на самом деле никому не нужен.
Цитата: | Немного безвредного мусора не помешало бы, да. |
Тебя не смущает, что "безвредный мусор" будет тормозить работу кода на клиенте?
Разработчики jQuery от pack отказались именно по этой причине, теперь только minified скрипты используют.
|
|
|
|
Чингачгук, вождь красноглазых
С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824
|
Добавлено: 13/10/10 в 12:37 |
Stek писал: | А зачем ?
Сжатие же помогает быстрее загрузить скрипт, т.е. сэкономить бандвич и быстрее отобразить страницу. |
http://docs.jquery.com/Downloading_jQuery
Код: | The packed versions of jQuery will take less time to download than the minified or uncompressed versions; however, each time the library is loaded (initially or from the browser cache) it will need to be uncompressed which will cause a non-trivial delay in the execution of any jQuery code each time it is loaded. |
|
|
|
|