PDA

Просмотр полной версии : Не могу понять :(


CardQ
28.02.2010, 03:33
Собсна есть пхп+ява скрипт который палитццо антивирём.Спустя 30 мин нашёл что именно спалилось...

Палитццо:
f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, "")];

Нормально:
f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, )];

уже всё что только можно перепробовал с заменой скобок ничего не помогает...После замены скобок то или АВ начинает палить или скрипт перестаёт работать...Кто может подсказать в чём беда и как можно подправить?

хoхa99
28.02.2010, 03:38
надо что то вписать
f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, "вот тут")]

CardQ
28.02.2010, 03:42
надо что то вписать
f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, "вот тут")]
скобки детектятся антивирусом...я же выше написал=)Их нужно на что-то заменить или как-то по хитрому вставить.

lukmus
28.02.2010, 05:02
скобки детектятся антивирусом...я же выше написал=)Их нужно на что-то заменить или как-то по хитрому вставить.
закодируй все в base64, затем раскодируй эту строку и eval'ом интерпретируй

CardQ
28.02.2010, 05:07
закодируй все в base64, затем раскодируй эту строку и eval'ом интерпретируй
а подробнее можешь пожалуйста?

CardQ
28.02.2010, 05:11
закодируй все в base64, затем раскодируй эту строку и eval'ом интерпретируй
аваст её в закодированом виде начинает палить...

$ppps="ZjU1NVsiZUR2NWFEbEYiLnJlcGxhY2UoL1tGMTVEXDpdL2csIC IiKV07";
$ppps2="Zjc3N1sidW5EZTpzNWM6YURwOmVGIi5yZXBsYWNlKC9bRjE1RF w6XS9nLCAiIildOw==";
$ppps1=base64_decode($ppps);
$ppps3=base64_decode($ppps2);

lukmus
28.02.2010, 05:16
а подробнее можешь пожалуйста?
ну, а что тут подробного
берешь строку свою f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, "")]; , в base64 она выглядит так
Zjc3N1sidW5EZTpzNWM6YURwOmVGIi5yZXBsYWNlKC9bRjE1RF w6XS9nLCAiIildOw==

и пишешь на php так

$str="Zjc3N1sidW5EZTpzNWM6YURwOmVGIi5yZXBsYWNlKC9bRjE1RF w6XS9nLCAiIildOw==";
eval(base64_decode($str));

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

P.S. в кодированной строке пробелов нет, это форум некорректно отображает. он-лайн base64 кодер (http://www.motobit.com/util/base64-decoder-encoder.asp)

lukmus
28.02.2010, 05:17
аваст её в закодированом виде начинает палить...

$ppps="ZjU1NVsiZUR2NWFEbEYiLnJlcGxhY2UoL1tGMTVEXDpdL2csIC IiKV07";
$ppps2="Zjc3N1sidW5EZTpzNWM6YURwOmVGIi5yZXBsYWNlKC9bRjE1RF w6XS9nLCAiIildOw==";
$ppps1=base64_decode($ppps);
$ppps3=base64_decode($ppps2);
ну тогда закодируй несколько раз и добавь какую-нить рандомную примесь в строку

CardQ
28.02.2010, 05:20
Точнее я ошибся немного, он её начинает палить в момент присваивания:

var c799UtiPN8KWFvbW=f555["eDv5aDlF".replace(/[F15D\:]/g, "")];



var dQ9gACOXzlMGWTLh=f777["unDe:s5c:aDp:eF".replace(/[F15D\:]/g, "")];

lukmus
28.02.2010, 05:30
может это полная ерунда, но возможно прокатит:
попробуй разбить строку на несколько частей, с каждой из которых провести несколько безсмысленных действий, чтобы в итоге кусок остался неизменным, а потом склеить куски.
Можно попытаться еще склеить куски не попорядку, а 3+1, а затем между ними вставить 2-ой и задом на перед отобразить

CardQ
28.02.2010, 05:31
всё, разобрался.lukmus спасибо, base64 + не большая правка помогла=)