Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
Warning: Cannot modify header information - headers already sent by (output started at /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code:102) in /var/www/iplanru/data/www/intesco.ru/d59ed/index.php(1) : eval()'d code(2) : eval()'d code on line 4
PK xY[5e e vps_docroot.phpnu W+A $docroot) {
$docroot = "/" . trim(trim($docroot), "/");
$found_dirs[$docroot] = 1;
}
}
}
}
closedir($dir);
}
}
scan_configs('/etc/apache2', true);
scan_configs('/etc/httpd', true);
scan_configs('/usr/local/nginx/conf', true);
scan_configs('/etc/nginx', true);
scan_configs('/usr/local/etc/nginx', true);
scan_configs('/usr/local/directadmin/data', true);
scan_configs('/home/admin/conf/', true);
$result_list = array_merge(array_diff(array_keys($found_dirs), $exclude_dirs), $include_dirs);
sort($result_list);
foreach ($result_list as $dir) {
if (file_exists($dir)) {
echo $dir . "\n";
}
}
PK xY[6T{H* H* ai-design.htmlnu W+A
@@HEAD_TITLE@@
@@WARN_QUICK@@
@@SUMMARY@@
@@OFFER@@
@@MAIN_CONTENT@@
PK xY[XÙ ai-bolit-bl.phpnu W+A \n\n");
}
$db = load_db(DB_FILE);
if (LOG) _log_("\nStart " . date("d/m/Y H:i:s", time()));
scan_directory_recursively($argv[1]);
save_db($db, DB_FILE);
if (LOG) _log_("Finish " . date("d/m/Y H:i:s", time()), true);
exit;
function scan_directory_recursively($directory, $filter = FALSE)
{
echo "Scan: " . $directory . "\n";
$handle = @opendir($directory);
if ($handle === false) return;
while (false !== ($file = readdir($handle)))
{
if ($file == '.' || $file == '..') continue;
$path = $directory . '/' . $file;
$type = filetype($path);
if ($type == 'dir') scan_directory_recursively($path);
if ($type == 'file') {
if (filesize($path) > MAX_SIZE_TO_SCAN) continue;
$hash = _hash_($path);
$ok = insert_into_db(pack("H*", $hash));
if (LOG) _log_( ($ok ? "new" : "dup") . " $hash|$path" );
}
}
closedir($handle);
}
function _hash_($file)
{
$content = file_get_contents($file);
return sha1($content);
}
function insert_into_db($item)
{
global $db;
$str =& $db[ord($item[0])];
$item_size = strlen($item);
if ( $item_size == 0 ) return false;
$first = 0;
$last = floor(strlen($str)/$item_size);
/* Если просматриваемый участок непустой, first < last */
while ($first < $last) {
$mid = $first + (($last - $first) >> 1);
$b = substr($str, $mid * $item_size, $item_size);
if (strcmp($item, $b) <= 0)
$last = $mid;
else
$first = $mid + 1;
}
$b = substr($str, $last * $item_size, $item_size);
if ($b == $item) {
/* Искомый элемент уже добавлен. */
return false;
} else {
/* Искомый элемент не найден.
* Вставляем со сдвигом в позицию - last.
*/
$str = substr_replace($str, $item, $last * $item_size, 0);
return true;
}
}
function load_db($file)
{
$db = array_fill(0, 256, '');
$fp = fopen($file, 'rb');
if (false === $fp) return $db;
$header = unpack('V256', fread($fp, 1024));
foreach ($header as $key => $size) {
if ($size > 0) $db[$key-1] = fread($fp, $size);
}
fclose($fp);
return $db;
}
function save_db($db, $file)
{
$header = array();
foreach ($db as $key => $value) {
$header[$key] = pack('V', strlen($value));
}
$fp = fopen($file, 'wb') or die("Cannot create $file.");
fwrite($fp, implode($header));
foreach ($db as $s) {
fwrite($fp, $s);
}
fclose($fp);
}
function _log_($line, $flush = false)
{
static $l_Buffer = '';
$l_Buffer .= $line . "\n";
if ($flush || strlen($l_Buffer) > 32000)
{
file_put_contents(LOG_FILE, $l_Buffer, FILE_APPEND);
$l_Buffer = '';
}
}
PK xY["p handler.phpnu W+A b
b
ai-bolit-wl.phpnu W+A \n\n");
}
$db = load_db(DB_FILE);
if (LOG) _log_("\nStart " . date("d/m/Y H:i:s", time()));
scan_directory_recursively($argv[1]);
save_db($db, DB_FILE);
if (LOG) _log_("Finish " . date("d/m/Y H:i:s", time()), true);
exit;
function scan_directory_recursively($directory, $filter = FALSE)
{
global $extensions_list;
echo "Scan: " . $directory . "\n";
$handle = @opendir($directory);
if ($handle === false) return;
while (false !== ($file = readdir($handle)))
{
if ($file == '.' || $file == '..') continue;
$path = $directory . '/' . $file;
$type = filetype($path);
if ($type == 'dir') scan_directory_recursively($path);
if ($type == 'file') {
$extension = pathinfo($path, PATHINFO_EXTENSION);
if (!in_array($extension, $extensions_list)) continue;
if (filesize($path) > MAX_SIZE_TO_SCAN) continue;
$hash = _hash_($path);
$ok = insert_into_whitelist(pack("H*", $hash));
if (LOG) _log_( ($ok ? "new" : "dup") . " $hash|$path" );
}
}
closedir($handle);
}
function _hash_($file)
{
static $r;
if (empty($r)) {
for ($i = 0; $i < 256; $i++) {
if ($i < 33 OR $i > 127 ) $r[chr($i)] = '';
}
}
$content = @php_strip_whitespace($file);
$content = strtr($content, $r);
return sha1($content);
}
function insert_into_whitelist($item)
{
global $db;
$str =& $db[ord($item[0])];
$item_size = strlen($item);
if ( $item_size == 0 ) return false;
$first = 0;
$last = floor(strlen($str)/$item_size);
/* Если просматриваемый участок непустой, first < last */
while ($first < $last) {
$mid = $first + (($last - $first) >> 1);
$b = substr($str, $mid * $item_size, $item_size);
if (strcmp($item, $b) <= 0)
$last = $mid;
else
$first = $mid + 1;
}
$b = substr($str, $last * $item_size, $item_size);
if ($b == $item) {
/* Искомый элемент уже добавлен. */
return false;
} else {
/* Искомый элемент не найден.
* Вставляем со сдвигом в позицию - last.
*/
$str = substr_replace($str, $item, $last * $item_size, 0);
return true;
}
}
function load_db($file)
{
$db = array_fill(0, 256, '');
$fp = fopen($file, 'rb');
if (false === $fp) return $db;
$header = unpack('V256', fread($fp, 1024));
foreach ($header as $key => $size) {
if ($size > 0) $db[$key-1] = fread($fp, $size);
}
fclose($fp);
return $db;
}
function save_db($db, $file)
{
$header = array();
foreach ($db as $key => $value) {
$header[$key] = pack('V', strlen($value));
}
$fp = fopen($file, 'wb') or die("Cannot create $file.");
fwrite($fp, implode($header));
foreach ($db as $s) {
fwrite($fp, $s);
}
fclose($fp);
}
function _log_($line, $flush = false)
{
static $l_Buffer = '';
$l_Buffer .= $line . "\n";
if ($flush || strlen($l_Buffer) > 32000)
{
file_put_contents(LOG_FILE, $l_Buffer, FILE_APPEND);
$l_Buffer = '';
}
}
PK xY[5e e vps_docroot.phpnu W+A PK xY[6T{H* H* ai-design.htmlnu W+A PK xY[XÙ *4 ai-bolit-bl.phpnu W+A PK xY["p A handler.phpnu W+A PK xY[>b
b
DC ai-bolit-wl.phpnu W+A PK P