Обфускация кода
Всем привет! Нужно обфусцировать коротенький код так, чтобы даже все надписи были были зашифрованы (например url).
Я нашел статью на хабре про такие обфускаторы. Вот она. Далее, я выбрал себе обфускатор из предложенных. Вот этот. И я столкнулся с проблемой - я не понимаю как заставить работать код оттуда. Вот просто - не работает. Делал по всякому. Очевидно, я что-то не понимаю. Объясните пожалуйста, как запустить обфусцированный там код. |
вот, нашел другой обфускатор, который очень хорошо работает. всем спасибо.
|
видимо дальше первого абзаца не дочитали. Ваш код расшифрует http://jsbeautifier.org/
|
Цитата:
1 http://obfuscatorjavascript.com/?lang=ru 2 http://www.daftlogic.com/projects-on...obfuscator.htm 3 http://www.javascriptobfuscator.com/ на выходе из этой цепочки получается код 1) в котором исковерканы слова и url'ы, так что в коде их не прочитать 2) который не деобуфсцируется с помощью http://jsbeautifier.org/ |
Проблема бесплатных обфускаторов:
1) они дают не полиморфный код 2) их активно юзают для криптования редиректа дорвеев. Из этого следует, что есть риск попадания ваших сайтов под бан поисковиков, потому что часть обфусцированного кода совпала с той, что использовали для прятанья дорвеев. Так что, если делаете белый сайт и планируете вкладывать в него время и деньги, для защиты JS скриптов лучше купить нормальный проверенный криптор-обфускатор типа такого http://jscrypt.in Платные обфускаторы обычно выдают полиморфный код (хотя это лучше уточнять у службы поддержки) и защита от автораспаковщиков гораздо выше бесплатных online сервисов. |
И чем он нормальный тем что использует setTimeout вместо eval ?
вся суть этой обфускации в паре строк var BAZE_NUM = 36; for (; i < DataArray ["length"];i+= 2) { codeString += String["fromCharCode"] ( parseInt ( DataArray["substr"](i, 2), BAZE_NUM )); } setTimeout(codeString ,1); Только похоже исходный скрипт засунут в функцию это поломает области видимости =(. В общем на беглый взгляд типичнейший обфускатор. |
Это только один уровень защиты, самый верхний и простой для защиты от ложных срабатываний анитивирусов. А там дальше еще слои защиты. Т.е. взять codeString и вывести в консоль или куда еще и читать не получится, код будет обфусцированный.
|
Часовой пояс GMT +3, время: 19:58. |