Forum Webscript.Ru

Программирование => Perl => Тема начата: Error202 от 14 Мая 2008, 17:39:33

Название: Perl & XS
Отправлено: Error202 от 14 Мая 2008, 17:39:33
Здравствуйте!
Поставили мне тут задачку...
Нужно на C++ написать модуль под перл для дешифрации скрипта... чтобы тот еще потом выполнялся...
написал...
получилось примерно так:


#!/usr/bin/perl -w
use Mydecode;
ю)Ч=ќ1GЂФvСj=OR ЧС†…]jЗU"CСЦБ_XИлч ЈЏD!@ў®ЦV_rЋ.ІЅ%ж*П±|к–fВмНTЉфП0c0l‘нrРЪQњ6ѕтГNbМЖTucuBН
 

Проблема в том, что модуль нормально расшифровывает скрипт, и передает интерпритатору... А тот в свою очередь делает странную штуку...

Когда в зашифрованном скрипте первая строка: print "text"; ... , т.е. первый символ "p", то выдает ошибку
Unquoted string "p" may clash with future reserved word at...

Когда use CGI..., то
Unquoted string "u" may clash with future reserved word at...

и т.д.

Может кто сталкивался?
Почему переменная в модуле содержит нормальный расшифрованный код, а в perl приходит такая штука?

P.S. Кодирую по RC4 с паролем...
Название: Perl & XS
Отправлено: arto от 14 Мая 2008, 19:50:06
типа мы должны разобраться в вашем модуле без исходников?
сильно.
Название: Perl & XS
Отправлено: Error202 от 14 Мая 2008, 21:54:35
Ну не совсем...
просто я не могу разобраться в ситуации... Почему воспринимается только первый символ и как отдельная строка...

Я могу выложить исходник XS, если кто-нибудь согласиться в нем ковыряться...
Название: Perl & XS
Отправлено: ravshaniy от 15 Мая 2008, 10:47:39
есть вот такая статья.
http://www.opennet.ru/base/dev/binary_perl.txt.html

но она не подходит под условия задачи. особенно тем моментом где размещается ключ к шифрованным скриптам.

вот. и мои размышления приводят к тому что правильнее былобы пересобрать компилятор перл так чтобы он понимал шифрованный бинарник

либо если у вас мод_перл. или еще какие вещчи есть где можно добавить обработчик.

если ваш модуль должен делать дешифрацию онфлай и исполнение то этот C++ модуль можно как раз назвать секьюрный интерпритатор. а если он будет дешифровывать и вызывать интепритатор и передавать ему для работы уже дешифрованный поток. то как бы скорее всего этот вызов можно перехватить и дешифрованый текст тогда смысл шифрования не понятен.

ну какието такие мысли
Название: Perl & XS
Отправлено: Error202 от 15 Мая 2008, 11:01:04
Сишный модуль, в теории, защищен от запуска под отладчиком, от запуска при некотрых других перловых модулях... но это опять же все так, на всякий случай...

Честно говоря заказчик мне ставил конкретную задачу, которая, кстати, соответсвует именно тому куску доки (по присланной Вами ссылке), где вшивается пароль...

Я и шел по этому пути, особо не мудрил...

В сях я не силен и у меня есть некоторые сомнения, что откомпилированный модуль .so будет работать на разных linux ос... пока нет возможности это проверить...