Уважаемые античатовцы! Нужна помощь в реверсинге и объяснения бага Unserialize в PHP. Имею скрипт с такой функцией PHP: function retrieveFromCacheArray($type,$identity,$validtime = 0) { if (!$this->activated) return false; $thisFile = empty($type) ? $this->jCacheDir.$identity.".php" : $this->jCacheDir.$type."/".$identity.".php"; if (!empty($validtime)) { $lastMod = @filemtime($thisFile); if (time() > ($lastMod+($validtime * 60))) return false; } $fp = @fopen($thisFile, "r"); if ($fp && @flock($fp, LOCK_SH)) { $contents=''; while ($data=fread($fp, 4096)) { $contents .= $data; } $contents = str_replace("<"."?php exit; ?".">","",$contents); fclose($fp); return unserialize($contents); } @fclose($fp); return false; } Пытался разобраться в материалах http://www.xakep.ru/post/51883/default.asp http://www.xakep.ru/post/52128/default.asp но не понимаю куда смотреть - толи на UNSERIALIZE то ли на эту функцию PHP: function __construct($mask = null, $prefix="general") { $yyyymmdd = date("Ymd"); $_conf = array('mode' => 0775, 'timeFormat' => '%Y-%m-%d:%H:%M:%S'); if (!is_dir(VANDA_LOGDIR)) @mkdir(VANDA_LOGDIR, 0755, TRUE); $_logFile = VANDA_LOGDIR.$prefix."_".$yyyymmdd.".log"; $this->_log = &Log::singleton('file', $_logFile, $prefix, $_conf); if (isset($mask)) $this->_log->setMask($mask); } и как они между собой должны быть связаны. Вообщем хотелось бы поработать со спецом, который смог бы объяснить и помочь раскрутить эту багу в моем скрипте (если бага там есть). Естественно, готов оплатить затраченное время на такой урок (за помощь). Если кто готов помочь с этим - пожалуйста в личку скиньте асю или жабу. Или давайте разберем пример тут Всем огромное спасибо!