Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $j878723423f5c3ba26da="\x62\141\x73\145\x36\64\x5f\144\x65\143\x6f\144\x65"; $kdd..
Decoded Output download
eval('
/**
* Updata - c .
* -
*
* @package moguta.cms
* @subpackage Libraries
*/
class Updata {
// C .
private static $_updataServer = \'http://moguta.ru\';
/**
* .
* $noerror -
* @return bool|array $result .
*/
public static function checkUpdata($noCache = false, $noerror = false) {
$timeLastUpdata = MG::getSetting(\'timeLastUpdata\');
if (time() < $timeLastUpdata + 6 * 60 * 24 && !$noCache) { // 2 .
$resp = MG::getSetting(\'currentVersion\');
$data = json_decode($resp, true);
} else {
$count = \'\';
$summ = \'\';
if (MG::getSetting(\'consentData\')==\'true\') {
$row = DB::query(\'SELECT COUNT(`id`) as `count` FROM `\'.PREFIX.\'product`\');
$res = DB::fetchArray($row);
$count = $res[\'count\'] ? $res[\'count\'] : 0;
$row2 = DB::query(\'SELECT SUM( `summ` ) AS `summ` FROM `\'.PREFIX.\'order`
WHERE `status_id` =2 OR `status_id` =5\');
$res2 = DB::fetchArray($row2);
$summ = $res2[\'summ\'] ? $res2[\'summ\'] : 0;
}
$checkInstall = !empty($_COOKIE[\'installerMoguta\']) ? $_COOKIE[\'installerMoguta\']: \'\';
$fullVersion = class_exists(\'Controllers_Compare\') ? \'true\' : \'false\';
$post = \'version=\'.VER.
\'&sName=\'.$_SERVER[\'SERVER_NAME\'].
\'&sIP=\'.(($_SERVER[\'SERVER_ADDR\'] == "::1") ? \'127.0.0.1\' : $_SERVER[\'SERVER_ADDR\']).
\'&sKey=\'.MG::getSetting(\'licenceKey\').
\'&sSiteName=\'.MG::getSetting(\'sitename\').
\'&sAdmin=\'.MG::getSetting(\'adminEmail\').
\'&timeStartEngine=\'.MG::getSetting(\'timeStartEngine\').
\'&timeFirstUpdate=\'.MG::getSetting(\'timeFirstUpdate\').
\'&sPhone=\'.MG::getSetting(\'shopPhone\').
\'&sAddress=\'.MG::getSetting(\'shopAddress\').
\'&catalog=\'.$count.
\'&orders=\'.$summ.
\'&installer=\'.$checkInstall.
\'&fullVersion=\'.$fullVersion;
$resp = self::sendCurl(self::$_updataServer.\'/updataserver\', $post);
if (stristr($resp,\'error:\')!==FALSE){
$res = explode(\'error:\', $resp);
} else {
$res = array($resp, \'false\');
}
$data = json_decode($res[0], true);
DB::query("
UPDATE `".PREFIX."setting`
SET `value`=".DB::quote($res[0])."
WHERE `option`=\'currentVersion\'
");
DB::query("
UPDATE `".PREFIX."setting`
SET `value`=".DB::quote(time())."
WHERE `option`=\'timeLastUpdata\'
");
PM::checkPluginsUpdate();
if (($res[1]!=\'false\')) {
$disabled = json_decode($res[1], true);
if ($disabled[\'status\']== \'error\'&&$disabled[\'remove\']==\'1\') {
//unlink(\'config.ini\');
if (!MG::getSetting(\'trialVersionStart\')) {
DB::query(\'INSERT INTO `\'.PREFIX.\'setting` (`id`, `option`, `value`, `active`, `name`) VALUES (NULL, "trialVersionStart", "true", "N", "")\');
}
}
$result[\'fakeKey\'] = $disabled[\'msg\'];
if (!MG::getSetting(\'trialVersion\')) {
$sql = \'INSERT INTO `\'.PREFIX.\'setting` (`id`, `option`, `value`, `active`, `name`) VALUES (NULL, "trialVersion",\'.DB::quote($disabled[\'msg\']).\', "N", "")\';
DB::query($sql);
} else {
DB::query(\'UPDATE `\'.PREFIX.\'setting` SET `value` = \'.DB::quote($disabled[\'msg\']).\' WHERE `option`= "trialVersion"\');
}
} else {
if (MG::getSetting(\'trialVersionStart\')!=\'true1\') {
DB::query(\'DELETE FROM `\'.PREFIX.\'setting` WHERE `option`= "trialVersion"\');
}
DB::query(\'DELETE FROM `\'.PREFIX.\'setting` WHERE `option`= "trialVersionStart"\');
}
}
// curl false, .
if (!$resp && !$noerror) {
echo "<div style=\'color:red; margin:10px;\'> CURL , !</div>";
}
if (!empty($data[\'dateActivateKey\'])) {
MG::setOption(array(\'option\' => \'dateActivateKey \', \'value\' => $data[\'dateActivateKey\']));
}
if ($data[\'last\']) {
$result[\'msg\'] = \'
<ul class="system-version-list">
<li> <b> : </b><span id="lVer">\'.$data[\'last\'].\'</span></li>
<li> <b> : </b><span id="fVer">\'.$data[\'final\'].\'</span></li>
<li> <b>: </b>\'.$data[\'disc\'].\'</li>
</ul>\';
$result[\'lastVersion\'] = $data[\'last\'];
$args = func_get_args();
return MG::createHook(__CLASS__."_".__FUNCTION__, $result, $args);
}
$args = func_get_args();
return MG::createHook(__CLASS__."_".__FUNCTION__, false, $args);
}
/**
* .
* @param string $version -
* @return bool
*/
public static function updataSystem($sysFold, $version) {
$file = $version.\'-m.zip\';
if (!file_exists(SITE_DIR.$file)) {
$ch = curl_init(self::$_updataServer.\'/updata/history/\'.$sysFold.\'/\'.$version.\'.zip\');
$fp = fopen($file, "w");
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
}
$args = func_get_args();
$return = false;
if (file_exists($file)) {
$return = true;
}
if(!filesize($file)){
$return = false;
unlink($file);
}
$zip = new ZipArchive;
$res = $zip->open($file, ZIPARCHIVE::CREATE);
if ($res !== TRUE) {
$return = false;
unlink($file);
}
return MG::createHook(__CLASS__."_".__FUNCTION__, $file, $args);
}
/**
* , .
* .
*
* @param $file - ,
* @return bool
*/
public static function extractZip($file) {
if (file_exists($file)) {
$zip = new ZipArchive;
$res = $zip->open($file, ZIPARCHIVE::CREATE);
if ($res === TRUE) {
$realDocumentRoot = str_replace(DIRECTORY_SEPARATOR.\'mg-core\'.DIRECTORY_SEPARATOR.\'lib\', \'\', dirname(__FILE__));
$zip->extractTo($realDocumentRoot);
$zip->close();
unlink($file);
// , .
self::updataSubInfo(\'modificatoryInc.php\');
MG::setOption(\'timeLastUpdata\', 0);
return true;
} else {
return false;
}
}
return false;
}
/**
* , .
*
* @param string $url .
* @param string $post POST .
* @return string .
*/
private static function sendCurl($url, $post) {
// curl.
$ch = curl_init();
// URL .
curl_setopt($ch, CURLOPT_URL, $url);
// true CURL .
curl_setopt($ch, CURLOPT_HEADER, false);
// :
// false ,
// true curl_exec.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// , POST .
curl_setopt($ch, CURLOPT_POST, true);
// .
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
// .
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
// .
$res = curl_exec($ch);
// return array();
// .
curl_close($ch);
$args = func_get_args();
return MG::createHook(__CLASS__."_".__FUNCTION__, $res, $args);
}
/**
* MySQL .
* .
* $sqlQuery $deleteArray,
* .
*
* @param string $modificatoryFile .
* @return boolean
*/
private static function updataSubInfo($modificatoryFile) {
if (!file_exists($modificatoryFile)) {
return false;
}
require_once $modificatoryFile;
if (is_array($sqlQuery)) {
foreach ($sqlQuery as $sql) {
DB::query($sql);
}
}
if (is_array($deleteArray)) {
foreach ($deleteArray as $deletedfile) {
if (file_exists($deletedfile)) {
unlink($deletedfile);
}
}
}
unlink($modificatoryFile);
return true;
}
public static function preDownload($version) {
$post = \'step=1\'.
\'&sName=\'.$_SERVER[\'SERVER_NAME\'].
\'&sIP=\'.(($_SERVER[\'SERVER_ADDR\'] == "::1") ? \'127.0.0.1\' : $_SERVER[\'SERVER_ADDR\']).
\'&sKey=\'.MG::getOption(\'licenceKey\').
\'&ver=\'.$version;
$res = self::sendCurl(self::$_updataServer.\'/updataserver\', $post);
try {
$data = json_decode($res, true);
} catch (Exception $exc) {
$data[\'msg\'] = $exc;
$data[\'status\'] = \'error\';
}
MG::setOption(array(\'option\' => \'dateActivateKey \', \'value\' => $data[\'dateActivateKey\']));
if (\'succes\' == $data[\'status\']) {
$file = self::updataSystem($data[\'msg\'], $version);
if (!file_exists($file)) {
$data[\'msg\'] = \' !\';
$data[\'status\'] = \'error\';
}
}
return $data;
}
}');
Did this file decode correctly?
Original Code
<?php
$j878723423f5c3ba26da="\x62\141\x73\145\x36\64\x5f\144\x65\143\x6f\144\x65";
$kdd9391e7490="\x73\164\x72\137\x72\157\x74\61\x33";
@eval($j878723423f5c3ba26da($kdd9391e7490("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")));
Function Calls
| str_rot13 | 2 |
| base64_decode | 2 |
Stats
| MD5 | 35640bb368f5bcb8d54569200548bad2 |
| Eval Count | 2 |
| Decode Time | 104 ms |