Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak rozkodować plik php zakodowany PHPCoderem i eAcceleratorem
Forum PHP.pl > Forum > PHP
LeeGge
Witam ma następujący problem: Ściągnąłem sobie bardzo ciekawy skrypt ale jest w całości zakodowany PHPCoder i eAccelerator. Jak sprowadzić go do postaci PHP? Czy jest to w ogóle możliwe?

Kod
<?php /*This encoded file was generated using PHPCoder (http://phpcoder.sourceforge.net/) and eAccelerator (http://eaccelerator.sourceforge.net/)*/ if (!is_callable("eaccelerator_load") && !@dl("eAccelerator.so")) { die("This PHP script has been encoded using the excellent eAccelerator Optimizer, to run it you must install <a href=\"http://eaccelerator.sourceforge.net/\">eAccelerator or the eLoader</a>"); }eaccelerator_load('eJxdT0EKgzAQ3DWxeuihvfYBPSYPEAticygUCtoPSA1UMCWYePD3zRov7R52wsxmdlZVda3uqqme
wY4ACBAAsCAag+xbgkJiOwYUMjh8xrnXouAwr7t4crXKWS70FvTTX5RRHFIC0LGf7SSb7aIeRtXIqOF3
54JiJB5NCmf1KxEjzEyMKjH5wdu6UiskR2omRCem0C67WTg7GTdm42gv7SUPQj9/ySxYO2IF8ecyJP'); ?>


Dzięki za pomoc!
Foxx
A po co ktoś go zakodował?
TomASS
Cytat(Foxx @ 18.03.2009, 22:05:36 ) *
A po co ktoś go zakodował?


A jaka to różnica? Mam nadzieję, że przynajmniej pomoże Ci w udzieleniu odpowiedzi.
Foxx
TomASS - chodzi mi o to, że skoro ktoś swój skrypt zakodował to może ktoś nie chciał żeby LeeGge go przerabiał.
LeeGge
To nie robi różnicy, to jest tylko przykład, chcę tego użyć do celów edukacyjnych winksmiley.jpg
daniel1302
Kod nie jest zakodowany lecz zmieniony do kodu binarnego co przyspiesza skrypt 10 krotnie a sam jestem ciekaw jak go rozkodować.
A gdzie znajde jakis serwer apache (krasnal itp ) z eacceleratorem tylko nie xamp
TomASS
Cytat(Foxx @ 18.03.2009, 23:17:38 ) *
TomASS - chodzi mi o to, że skoro ktoś swój skrypt zakodował to może ktoś nie chciał żeby LeeGge go przerabiał.

Nie mierz wszystkich swoją miarą tongue.gif

Cytat
Kod nie jest zakodowany lecz zmieniony do kodu binarnego co przyspiesza skrypt 10 krotnie

Oj chyba troszkę przesadziłeś. Tyle to podaje twórca akecleratora jako wartość maksymalną smile.gif
dr_bonzo
OT:
Cytat
Kod nie jest zakodowany lecz zmieniony do kodu binarnego co przyspiesza skrypt 10 krotnie

W moim srednio-duzym systemie to jest 2-3x szybciej niz bez EA
LeeGge
Zrobiliście mi wodę z mózgu tiredsmiley.gif To w końcu da się to odkodować? smile.gif
daniel1302
Ja podawałem w przypadku pomarów jakiegoś kolesia na ezpublish. A rozkodować to niewiem na jakiej to dziala zasadzie czy kod binarny jest otwierany
ale kod rozkodowuje się eaccelerator_load('') to chyba się da
erix
Cytat
To w końcu da się to odkodować?

Cytat
A rozkodować to niewiem na jakiej to dziala zasadzie czy kod binarny jest otwierany

Ok, wytłumaczę Ci to bardzo obrazowo: otwórz sobie jakiś plik exe w np. notatniku. Da się coś z tego kodu wyciągnąć? Nie da się.

No dobrze, da się, ale to już wyższa szkoła jazdy, bo musiałbyś wtedy analizować poszczególne rejestry procesora - czytaj: asembler.

Cytat
ale kod rozkodowuje się eaccelerator_load('') to chyba się da

Kod jest wstrzykiwany bezpośrednio do pamięci interpretera z pominięciem parsowania kodu źródłowego.

Nie da się, zrozum.

Cytat
A gdzie znajde jakis serwer apache (krasnal itp ) z eacceleratorem tylko nie xamp

Bez problemu doinstalujesz samodzielnie. Ściągasz eAccelerator, dopisujesz kilka linijek do php.ini i z głowy.
maly_swd
da sie rozkodowac, lecz jest to b.trudne. Druga sprawa ze nie bedzie to czytelny kod php z nazwami klas i zmiennych. Zamiast nazw uzywanych przez programiste np "jakasKlasaDoTextu" bedzie malo znaczacy "Token" (etykieta).. np "a1".

DeCompilator mozna napisac samemu. Trzeba na poczatek zrobic pareset plikow z samymi prostymi instrukcjami i je zakodowac, potem podgladac jak sa zakodowane funkcje (jakie dostaja kody) i na podstawie ich dekodowac.

Patent sprawdzony za starych dobrych czasow jak byl Basic i assembler:)
mls
Cytat(maly_swd @ 19.03.2009, 23:36:12 ) *
da sie rozkodowac, lecz jest to b.trudne. Druga sprawa ze nie bedzie to czytelny kod php z nazwami klas i zmiennych. Zamiast nazw uzywanych przez programiste np "jakasKlasaDoTextu" bedzie malo znaczacy "Token" (etykieta).. np "a1".
(...)
Patent sprawdzony za starych dobrych czasow jak byl Basic i assembler:)


Życzę powodzenia. Szczególnie biorąc pod uwagę fakt, iż obecne moduły kodowania skryptów PHP umożliwiają nie tylko zakodowanie źródła, ale również przypisanie go do konkretnej maszyny. Tak więc dekodowanie stanie się praktycznie niemożliwe.
Czasy się, na szczęście, zmieniają...
Kocurro
Ostatnio miałem przyjemność rozmawiać z twórcą jednego z mniej używanych akceleratorów - nie open source, nie darmowy ale komercyjnie używany i to coraz częściej. Podczas rozmowy wyszło, że kod binarny jest dodatkowo "szyfrowany" a dokładniej wartości w nim są zamieniane według klucza, który jest zapisany w zakodowanym ciągu. W ten sposób metoda z "wygenerowaniem X tys. plików i rozpoznaniem bytecode'u" nie działa w jego przypadku.

A jeśli chcesz rozkodować eAcceleratora lub APC to źródła są dostępne, źródła PHP także są dostępne itp. smile.gif Więc nie widzę problemu. Pytanie tylko czy nie szybciej będzie samemu napisać skryptu niż go rozkodowywać. Bo tak naprawdę to chodzi o to by rozkodowywanie było nieopłacalne a nie niemożliwe.

pozdr.
Łukasz
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.