Avatar billede sfn Nybegynder
23. marts 2005 - 23:41 Der er 7 kommentarer

Scramble (obfuscate) PHP kode

Hej..

Jeg husker at have set noget, der lignede det her:

eval(gzinflate(base64_decode('DZS3rqRYAAV/ZbOZJwK800Z4T
3fjIVlB4+Hi/dfvCyupoHR0iiPt/1ZPM5R9uhV/s3QtKOK/vPiOefH3..


som 'kun' serveren kunne fortolke.
hvordan laver man denne indkodning?..

Tak
Avatar billede barklund Nybegynder
23. marts 2005 - 23:46 #1
Jeg kan ikke lige se formålet med det, men det handler om, at du skriver hele dit script, så når du har lavet det og det virker, som kan du bagefter konvertere det til noget volapyk via base64_encode og hele dit script som en streng, som ovenover konverteres tilbage igen med base64_decode. Til sidst evalueres strengen med dit script.

Men formålet kan jeg ikke se - hvis man kan se php-kilden som ovenover, så kan man altid finde ud af, hvad den rigtige kilde er - man kan jo bare gjerne eval forrest og printe resultatet.

--
Morten Barklund
Avatar billede barklund Nybegynder
23. marts 2005 - 23:46 #2
fjerne* :)
Avatar billede sfn Nybegynder
23. marts 2005 - 23:56 #3
hvad med gzinflate?
er det bare komprimering?

for hvis du fjerner eval, ligger der endnu et lag af:
eval(gzinflate(base64_decode(...
Avatar billede barklund Nybegynder
24. marts 2005 - 00:05 #4
Ja, gzinflate er bare det modsatte af gzdeflate.

Men hvad der der så under det lag igen? Et eller andet sted står scriptet jo :)
Avatar billede coderdk Praktikant
24. marts 2005 - 01:17 #5
Jeg giver ikke meget for sådan noget ;P
Men det er nemt at lave:

<?php

$text = <<<STOP
// Dette er koden som vi vil "kryptere"
\$text = "hej med dig!";
for ( \$i = 1; \$i <= 10; \$i++ )
{
  echo "\$i. \$text<br>";
}
STOP;
$krypteret = base64_encode( gzdeflate( $text ) );

echo "Krypteret streng: $krypteret<br>Så kører vi den:<br>";
eval( gzinflate( base64_decode( $krypteret ) ) );

?>
Avatar billede sjh Nybegynder
23. oktober 2006 - 11:21 #6
barklund / coderdk :
Kan du/i så ikke lige afkode den her.. jeg trode selfølige jeg skulle være smart og encode den.. og nu kan jeg ikke afkode den igen.. har prøvet lidt forskelligt.. :D
Jeg vil godt give 200 point for det.

http://vbhansen.dk/javascript/rc4-rsa/RSALib.txt
Avatar billede sjh Nybegynder
26. oktober 2006 - 17:14 #7
Når det var måske ikke så nemt alivel.. (man kan jo bare gjerne eval forrest og printe resultatet) :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester