QR Code Business Card

3 часа секса или function (p,a,c,k,e,r)

08.01.2009 | Рубрика: Новости | 13 комментариев

Праздники, много свободного времени... Понадобилось тут прикрутить форму комментариев к одному из сайтов, ну такая, с javascript`ом, который вставляет BB коды. Достаточно стандартный элемент на новостных и развлекательных сайтах.

Процедура достаточно простая для тех кто немного знаком с php и html. Но у меня возникла необходимость поправить javascript код. Но не тут то было.

Я думаю любому web разработчику попадались java скрипты запакованные через function (p,a,c,k,e,r). Они представляют собой абсолютно нечитаемый код. Вот кусок, для примера:

p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('5 1f=1M.3y.3z();5 2s=((1f.1j(\'3A\')!=-1)||(1M.2L=="2M 2N, 2O."));5 1g=((1f.1j(\'2P\')!=

Короче говоря, нашел простой способ преобразования всего этого в читаемый вид.

В начале такого скрипта, перед самым первым символом :) , вставляем это:

eval=alert;

Открываем страницу с вызовом скрипта:

js1

Ctrl+A, Ctrl+C :)

Получаем уже код без функции function (p,a,c,k,e,r), но все равно в не очень удобном формате.

Вставляем полученный код сюда, нажимаем Beautify и радуемся результату:

var uagent = navigator.userAgent.toLowerCase();
var is_safari = ((uagent.indexOf('safari') != -1) || (navigator.vendor == "Apple Computer, Inc."));
var is_ie = ((uagent.indexOf('msie') != -1) && (!is_opera) && (!is_safari) && (!is_webtv));
var is_ie4 = ((is_ie) && (uagent.indexOf("msie 4.") != -1));
var is_moz = (navigator.product == 'Gecko');
var is_ns = ((uagent.indexOf('compatible') == -1) && (uagent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_safari));
var is_ns4 = ((is_ns) && (parseInt(navigator.appVersion) == 4));
var is_opera = (uagent.indexOf('opera') != -1);
var is_kon = (uagent.indexOf('konqueror') != -1);
var is_webtv = (uagent.indexOf('webtv') != -1);
var is_win = ((uagent.indexOf("win") != -1) || (uagent.indexOf("16bit") != -1));
var is_mac = ((uagent.indexOf("mac") != -1) || (navigator.vendor == "Apple Computer, Inc."));
var ua_vers = parseInt(navigator.appVersion);

Как видите, все банально просто. Когда знаешь, конечно :) Удачи!

А это читали?

  1. Запуск cmd с правами администратора
  2. Что такое Bonjour Service и как его удалить
  3. Adobe Lightroom новый видеоурок
Теги: ,


13 комментариев

  1. AntiDuck:

    Спасибо, доктор! Лекарство помогло! 4 часа шерстил гугл и ничего кроме чудесных предложений что-то купить за 49.99 долларов. Проскочила и ссылка на Beautifier, только ничего не работало там. И только Вы, благодаря Вашему сеансу больной нечитаемый скрипт встал на ноги, и блин, побежал, побежал ... оказалось что мне нужно было из 6Кб взять 0.2Кбайт на единственную функцию, без которой не работало. Счастья Вам!

  2. AntiDuck:

    Что хотел добавить — alert мне не помогло, пришлось 1/ менять eval на document.write 2) перед и после бывашего evala, вставлять document.write .......... document.write

  3. lamanzh:

    спасибо огромное :) ))

  4. Для более сложных случаев можно пустить в ход тяжелую артиллерию. Это проект Malzilla (malzilla.sourceforge.net), предназначенный для исследования троянов и другого вредоносного кода. Поскольку все программы, предназначенные для защиты авторского права:), являются однозначно вредоносными, Malzilla поможет нам в борьбе с ними. Качаем последнюю версию (sourceforge.net/project/s...ackage_id=242804) (на сегодняшний день это 1.2.0), распаковываем, запускаем. Открываем вторую вкладку Decoder, в верхнее окно вставляем код зашифрованного скрипта, нажимаем кнопочку Run script. :) всЁ)

    • bNN:

      Интересная программа, но у меня не получилось раскодировать jquery, например.

      А есть где-нибудь мануалы по этой софтине?

      • на программу наткнулся просто случайно на каком то сайте, когда копался в dle старой версии и был запакованный файлик sajax.js непонятно что делающий, варианты с оперой и прочими вариантами не выходили, данный софт справился вполне успешно... мануал по ней не находил... можно конечно попробовать пошариться в инете...

      • кста наткнулся на хабре habrahabr.ru/blogs/infosecurity/73476/ может поможет :)

  5. elisium:

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

  6. BK_IIeTpoBu4:

    Боооольшое спасибо!

  7. Sgrv:

    Спасибо автору, помогло. Можно еще добавить описание, как это все обратно запаковать?


Есть, что сказать?

Поля, помеченные звёздочкой* обязательны для заполнения