Forum Doku Wiki Blog

Forumsarchiv 2007, September
PHP verschlüsselt?

archivierte Beiträge lesen

  1. (PHP) PHP verschlüsselt? von Gerald, 22. 09. 2007, 20:54

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 20:54 Uhr von Gerald veröffentlicht.

Hallo,

ein Freund hat mir eben mal diesen Quellcode gegeben. Wenn ich Ihn ausführe kommt eben mal das bekannte "Hallo Welt!".
Interessant wäre allerdings: Kann man die Verschlüsselung wieder Rückgängig machen? Es soll noch mehr in der Datei stehen.
Mir ist es nicht gelungen.

<?PHP
eval(base64_decode('JGNvZGVsb2NrX2NvZGU9IlB6NDhQM0JvY0EwS1pXTm9ieUpJWVd4c2J5QlhaV3gwSVNJN0RRb3ZLaUJJNUhSMFpTQnVhV05vZENCblpXUmhZMmgwSUdSaGN5QnBhSElnWkdGeklHdHVZV05yWlc0Z2EvWnViblF1SUUxSlUxUWhLaThOQ2o4K1BEOVFTRkFnIjsgJGNvZGVsb2NrX2NvZGU9c3RyX3JlcGxhY2UoIkAiLCJDQWciLCAkY29kZWxvY2tfY29kZSk7ICRjb2RlbG9ja19jb2RlPXN0cl9yZXBsYWNlKCIhIiwgIlc1IiwgJGNvZGVsb2NrX2NvZGUpOyAkY29kZWxvY2tfY29kZT1zdHJfcmVwbGFjZSgiKiIsICJDQWdJIiwgJGNvZGVsb2NrX2NvZGUpOyAkY29kZWxvY2tfY29kZT1iYXNlNjRfZGVjb2RlKCRjb2RlbG9ja19jb2RlKTsgZXZhbCgkY29kZWxvY2tfY29kZSk7IAo='));
?>

Gruß Gerald

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:00 Uhr von Jonathan veröffentlicht.

Hallo Gerald,

> Interessant wäre allerdings: Kann man die Verschlüsselung wieder Rückgängig machen? Es soll noch mehr in der Datei stehen.
> Mir ist es nicht gelungen.

Mach aus dem eval doch einfach ein echo o.ä. Dann solltest du den dekodierten Quellcode sehen.

Jonathan
--
Selfcode: ie:( fl:{ br:> va:) ls:& fo:) rl:? ss:} de:> js:| ch:? mo:} zu:)

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:55 Uhr von steckl veröffentlicht.

Hi,

> Mach aus dem eval doch einfach ein echo o.ä. Dann solltest du den dekodierten Quellcode sehen.

Hier ist ne schöne Seite, die das mit dem dekodieren übernimmt.

mfG,
steckl

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:24 Uhr von pattitheonly veröffentlicht.

Also ich bekomme das hier:

$codelock_code="Pz48P3BocA0KZWNobyJIYWxsbyBXZWx0ISI7DQovKiBI5HR0ZSBuaWNodCBnZWRhY2h0IGRhcyBpaHIgZGFzIGtuYWNrZW4ga/ZubnQuIE1JU1QhKi8NCj8+PD9QSFAg"; $codelock_code=str_replace("@","CAg", $codelock_code); $codelock_code=str_replace("!", "W5", $codelock_code); $codelock_code=str_replace("*", "CAgI", $codelock_code); $codelock_code=base64_decode($codelock_code); eval($codelock_code);

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:26 Uhr von Marc Reichelt veröffentlicht.

Hallo Gerald,

> ein Freund hat mir eben mal diesen Quellcode gegeben. Wenn ich Ihn ausführe kommt eben mal das bekannte "Hallo Welt!".
> Interessant wäre allerdings: Kann man die Verschlüsselung wieder Rückgängig machen? Es soll noch mehr in der Datei stehen.
> Mir ist es nicht gelungen.
>
> <?PHP
> eval(base64_decode('JGNvZGVsb2NrX2NvZGU9IlB6NDhQM0JvY0EwS1pXTm9ieUpJWVd4c2J5QlhaV3gwSVNJN0RRb3ZLaUJJNUhSMFpTQnVhV05vZENCblpXUmhZMmgwSUdSaGN5QnBhSElnWkdGeklHdHVZV05yWlc0Z2EvWnViblF1SUUxSlUxUWhLaThOQ2o4K1BEOVFTRkFnIjsgJGNvZGVsb2NrX2NvZGU9c3RyX3JlcGxhY2UoIkAiLCJDQWciLCAkY29kZWxvY2tfY29kZSk7ICRjb2RlbG9ja19jb2RlPXN0cl9yZXBsYWNlKCIhIiwgIlc1IiwgJGNvZGVsb2NrX2NvZGUpOyAkY29kZWxvY2tfY29kZT1zdHJfcmVwbGFjZSgiKiIsICJDQWdJIiwgJGNvZGVsb2NrX2NvZGUpOyAkY29kZWxvY2tfY29kZT1iYXNlNjRfZGVjb2RlKCRjb2RlbG9ja19jb2RlKTsgZXZhbCgkY29kZWxvY2tfY29kZSk7IAo='));
> ?>

Kein Problem. Einfach das eval() drumherum entfernt, und schon komm folgender Code zum Vorschein (ein wenig umformatiert):

$codelock_code="Pz48P3BocA0KZWNobyJIYWxsbyBXZWx0ISI7DQovKiBI5HR0ZSBuaWNodCBnZWRhY2h0IGRhcyBpaHIgZGFzIGtuYWNrZW4ga/ZubnQuIE1JU1QhKi8NCj8+PD9QSFAg";
$codelock_code=str_replace("@","CAg", $codelock_code);
$codelock_code=str_replace("!", "W5", $codelock_code);
$codelock_code=str_replace("*", "CAgI", $codelock_code);
$codelock_code=base64_decode($codelock_code);
eval($codelock_code);


Das Ding ist also nochmal unkenntlich gemacht. Noch kurz die letzte Zeile in "echo $codelock_code;" abgeändert, und es kommt folgender Code zum Vorschein:

echo"Hallo Welt!";
/* Hätte nicht gedacht das ihr das knacken könnt. MIST!*/


Merke: PHP-Skripte zu verschlüsseln macht einfach keinen Sinn. Noch dazu kann man selbst den Code nicht mehr einfach lesen und ändern.


Grüße

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!

Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:45 Uhr von pattitheonly veröffentlicht.

Hallo Marc,
ich versteh auch nicht warum man ein Verschlüsselung nehmen sollte die reversible ist? Wenn ich etwas verschlüsseln möchte nehme ich doch md5() oder sowas. Oder welchen Sinn hätte das sonst?

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 21:50 Uhr von Marc Reichelt veröffentlicht.

Hallo pattitheonly,

> ich versteh auch nicht warum man ein Verschlüsselung nehmen sollte die reversible ist? Wenn ich etwas verschlüsseln möchte nehme ich doch md5() oder sowas. Oder welchen Sinn hätte das sonst?

Nun ja - MD5 ist ja streng genommen keine Verschlüsselung, sondern eine Hashfunktion. Trotzdem kann sie gut für eine halbwegs gute Einweg-Verschlüsselung genutzt werden.

PHP-Code zu verschlüsseln macht so allerdings keinen Sinn, da der Code dem Interpreter im Klartext vorliegen muss. Ob dies nun über mehrere Umwege mittels eval() geht ist irrelevant.
Ein Angreifer, der die PHP-Seite im Klartext bekommt, ist sicher auch fähig genug, diese kleine Hürde über eval() zu nehmen.

Aber immerhin: Vielleicht lacht er sich dann über die "Verschlüsselung" tot, sodass er nicht mehr die Gelegenheit dazu hat, eventuelle Sicherheitslücken in der PHP-Datei auszunutzen. ;)


Grüße

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!

Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 22:08 Uhr von pattitheonly veröffentlicht.

Hi Marc,
warum gibt es denn solche Verschlüsselungen die eigentlich keinen Sinn haben? Also zB diesen BASE64 Code? Habe davon noch nichts gehört und frage rein interessen halber :-)

PHP verschlüsselt?

Der folgende Beitrag wurde am 22. 09. 2007, 22:33 Uhr von Jonathan veröffentlicht.

Hallo pattitheonly,

> Hi Marc,
> warum gibt es denn solche Verschlüsselungen die eigentlich keinen Sinn haben? Also zB diesen BASE64 Code? Habe davon noch nichts gehört und frage rein interessen halber :-)

Base64 ist keine Verschlüsselung sondern eine Kodierung. Durch das Base64-Kodieren sorgt man z.B. dafür, dass der entstehende Text nur aus gewöhlichen Buchstaben und Zeichen besteht, was z.B. nützlich sein kann, wenn es Zeichensatzprobleme o.ä. gibt.


Jonathan
--
Selfcode: ie:( fl:{ br:> va:) ls:& fo:) rl:? ss:} de:> js:| ch:? mo:} zu:)

PHP verschlüsselt?

Der folgende Beitrag wurde am 23. 09. 2007, 16:06 Uhr von Manuel B. veröffentlicht.

Ich grüsse den Cosmos,

> Also zB diesen BASE64 Code?

Mit dieser Kodierung werden z.B. Mailanhänge kodiert um sie versenden zu können.

Möge das "Self" mit euch sein


--
Fragt ein Atom das andere: Hast du mein Elektron gesehen? Ich bin heute so positiv.

ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4