PHP Urldecode

02/22/2013 06:55 YowDaw#1
Morgen,

weiß jemand wie man folgenden PHP-Code entschlüsselt?

Code:
<?php $OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');
$GLOBALS['OOO0000O0']=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5}.$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$GLOBALS['OOO0000O0'].=$GLOBALS['OOO0000O0']{3}.$OOO000000{11}.$OOO000000{12}.$GLOBALS['OOO0000O0']{7}.$OOO000000{5};$GLOBALS['OOO000O00']=$OOO000000{0}.$OOO000000{12}.$OOO000000{7}.$OOO000000{5}.$OOO000000{15};$GLOBALS['O0O000O00']=$OOO000000{0}.$OOO000000{1}.$OOO000000{5}.$OOO000000{14};$GLOBALS['O0O000O00']=$O0O000O00.$OOO000000{3};$GLOBALS['O0O00OO00']=$OOO000000{0}.$OOO000000{8}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$GLOBALS['OOO00000O']=$OOO000000{3}.$OOO000000{14}.$OOO000000{8}.$OOO000000{14}.$OOO000000{8};$OOO0O0O00=__FILE__;$OO00O0000=0xaf9c;eval($GLOBALS['OOO0000O0']
('JE8wMDBPME8wMD0kR0xPQkFMU1snT09PMDAwTzAwJ10oJE9PTzBPME8wMCwncmInKTskR0xPQkFMU1snTzBPMDBPTzAwJ10oJE8wMDBPME8wMCwweDU4ZSk7JE9PMDBPMDBPMD0kR0xPQkFMU1snT09PMDAwME8wJ10oJEdMT0JBTFNbJ09PTzAwMDAwTyddKCRHTE9CQUxTWydPME8wME9PMDAnXSgkTzAwME8wTzAwLDB4MzljKSwnbWJSZi9ENWN1QW5HaVBXK0Uxd294YUtzZUxsdjRYWk9VMmpZcTdOQ3JIVDZCcHRRa2hJU3l6OVYzZ0ZkSjBNOD0nLCdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvJykpO2V2YWwoJE9PMDBPMDBPMCk7'));return;?>WMiJyhRdt`uYvuaRS@X92Hv5xrusbILKXOvKDye9UrAIPZnRUtn7ktno0NeKgBZaktL5xHARPHAIkqoSmki/0+ifb++w2H4VP7XRUqszPDx7LDx7BCxyawaqawsygboxxCswq8AD0o1aAK1aAvAzPDx7LDx70WExzDAzyFn57S49aynR1OxyawaqawKIXuaD1Esy2+xzECswq8AD0o1aAK1aAvAy2xaDbOw/0oaRXXWj2H4VP7XRUqwD1xxD0o1aAK1aAOaqDwxzBCxyawaqawsygboxxCswq8A/2xaDbOxyawaqawszLbx7PvAzPDx7LDx70WExzDAzyFn57S49aynR1uaD1EszPDx7LDx70KEaAoKIXuaD1Esy2+xzECswq8A/2xaDbOxyawaqawszLbx7PvAy2xaDbOw/0oaRXXWj4CnwqHnwqHL577nR1+ifmkoyJki/JtASrUfEHxl57Su/Dk4RbH4IbilKP7vCP7LRbyvIb2vN0yl... (Hier gehts immer so weiter)
Mit Urldecode würde ich ja noch klar kommen, aber das geht weit über meine Kenntnisse.
Wer mir den entschiedenen Tipp gibt erhält 50 eG

Gruß
02/22/2013 11:02 KoKsPfLaNzE#2
Wo hast den das Script her?

Sieht so aus als ist ein Encoder über den Code gelaufen. Kann dir jedoch nicht sagen welcher sieht spontan nicht nach ioncube aus.

Um den Encoder herauszufinden müsstest das mit verschiedenen Loadern testen. Den Code dann wieder herzustellen ist aber eine komplett andere Geschichte.
02/22/2013 11:17 Fredyy#3
Schicke mir bitte einmal den Kompletten Source der Datei, dann mache ich es dir.
02/22/2013 11:29 taffrot#4
Code:
<?php 
$OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');

// base64_decode()
$GLOBALS['OOO0000O0']=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5}.$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};
$GLOBALS['OOO0000O0'].=$GLOBALS['OOO0000O0']{3}.$OOO000000{11}.$OOO000000{12}.$GLOBALS['OOO0000O0']{7}.$OOO000000{5};
$base64_decode = $GLOBALS['OOO0000O0'];

// fopen
$fopen = $GLOBALS['OOO000O00']=$OOO000000{0}.$OOO000000{12}.$OOO000000{7}.$OOO000000{5}.$OOO000000{15};

// fgets
$GLOBALS['O0O000O00']=$OOO000000{0}.$OOO000000{1}.$OOO000000{5}.$OOO000000{14};
$fgets = $GLOBALS['O0O000O00']=$O0O000O00.$OOO000000{3};

// fread
$fread = $GLOBALS['O0O00OO00']=$OOO000000{0}.$OOO000000{8}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};

// strtr
$strtr = $GLOBALS['OOO00000O']=$OOO000000{3}.$OOO000000{14}.$OOO000000{8}.$OOO000000{14}.$OOO000000{8};

// file
$file = $OOO0O0O00=__FILE__;

// num (44956)
$num = $OO00O0000=0xaf9c;

$encoded = 'JE8wMDBPME8wMD0kR0xPQkFMU1snT09PMDAwTzAwJ10oJE9PTzBPME8wMCwncmInKTskR0xPQkFMU1snTzBPMDBPTzAwJ10oJE8wMDBPME8wMCwweDU4ZSk7JE9PMDBPMDBPMD0kR0xPQkFMU1snT09PMDAwME8wJ10oJEdMT0JBTFNbJ09PTzAwMDAwTyddKCRHTE9CQUxTWydPME8wME9PMDAnXSgkTzAwME8wTzAwLDB4MzljKSwnbWJSZi9ENWN1QW5HaVBXK0Uxd294YUtzZUxsdjRYWk9VMmpZcTdOQ3JIVDZCcHRRa2hJU3l6OVYzZ0ZkSjBNOD0nLCdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvJykpO2V2YWwoJE9PMDBPMDBPMCk7';
$decoded = base64_decode($encoded);

// DECODED CODE BELOW

// fopen($file, 'rb');
$fh = $O000O0O00=$GLOBALS['OOO000O00']($OOO0O0O00,'rb');

// fread($fh, 0x58e)
$GLOBALS['O0O00OO00']($O000O0O00,0x58e);

// base64_decode(strtr(fread($fh, 0x39c), $from, $to))
$from = 'mbRf/D5cuAnGiPW+E1woxaKseLlv4XZOU2jYq7NCrHT6BptQkhISyz9V3gFdJ0M8=';
$to = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
$original = $OO00O00O0=$GLOBALS['OOO0000O0']($GLOBALS['OOO00000O']($GLOBALS['O0O00OO00']($O000O0O00,0x39c),'mbRf/D5cuAnGiPW+E1woxaKseLlv4XZOU2jYq7NCrHT6BptQkhISyz9V3gFdJ0M8=','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'));

// eval($original)
var_dump(eval($OO00O00O0));
Mit dem, und dem Rest der Datei kommst du ans Ziel :)
02/22/2013 20:14 Hupfi10#5
Hier wurden Variablen obfusikiert, d.h. derjenige, der den Code geschrieben hat, wollte nicht, dass es ein Dritter lesen kann.