Вирусы на сайте на Joomla и других CMS. Вирус на сайте joomla
Безопасность сайтов на Joomla или как бороться с вирусами на сайте
Давно хотел написать статью, посвященную безопасности сайтов на Joomla. В последнее время участились взломы сайтов на Joomla, и не только на ней. Взлому подвергаются любые CMS (например: Обнаружена опасная уязвимость в кеширующих плагинах для WordPress). Методы заражения всегда однотипные: это заражения сайтов вирусами-троянцами, установка бекдоров (backdoor). С этим бороться можно, и довольно просто. Есть ряд решений по безопасности для сайтов на Joomla. Итак, обсудим.
Безопаность сайта на Joomla стоит разделить на части:
- Настройка .htaccess.
- Настройка веб-сервера Apache.
- Права файловой системы.
- Обновление CMS Joomla.
- Удаление неиспользуемых расширений Joomla.
- Обновление расширений Joomlа.
- Не используйте варезные расширения.
- Установка расширений безопаности.
- Сложные пароли к учетной записи администраторов.
- Создание страницы 404.
Безопасная настройка сервера/хостинга
Это самая важная часть, Многие сайтостроители не задаются вопросом безопасности самого хостинга, где размещаются сайты. А это распространенное заблуждение. Это надо делать в первую очередь. Все хостинги предоставляют услугу, как есть. Только на некоторых площадках уже сделана тонкая настройка хостинга/сервера.
Используйте .htaccess
Блокировать типичные попытки эксплоита можно с помощью файла .htaccess, который должен находится в корне сайта. По умолчанию эта функция не включена на всех серверах. Используя файл .htaccess, вы сможете защитить с его помощью важные директории, например, такие, как administrator, можно блокировать доступ на сайт с определенных IP-адресов. И еще много чего можно сделать, об этом напишем чуть ниже.
Сам дистрибутив Joomla уже идет в комплекте с настроенным файлом .htaccess, остается только переименовать его из htaccess.txt в .htaccess. И начнем настройку.
Перед внесением изменений в файл .htaccess, сделайте его резервную копию.Обратите внимание, если после переименования файла, сайт покажет 500 страницу, значит хостинг не поддерживает .htaccess. Обратитесь в администрацию хостинга.Если при внесении нижеследующих инструкций вы снова увидите 500 страницу, значит хостинг не поддерживает какие-либо команды из этого файла.
Запрет исполнения файлов в корне сайта
## Начало - Запрет на выполнение php-скриптов в корне сайта <Filesmatch ".(php)$"> order deny,allow deny from all </Filesmatch> <Filesmatch "^index.php"> order allow,deny allow from all </Filesmatch> <Filesmatch "^index2.php"> order deny,allow allow from all </Filesmatch> ## Конец - Запрет на выполнение php-скриптов в корне сайтаЗапрет доступа к xml-файлам расширений
## Код запрета доступа к xml-файлам расширений (раскомментируйте для активации) <Files ~ "\.xml$"> Order allow,deny Deny from all Satisfy all </Files> ## Конец кода запрета доступа к xml-файламБлокирование прямого доступа к ядру
Данное решение закроет доступ к бекдорам, тем самым увеличивая безопасность сайта на Joomla. По личному опыту, часто сайт заражается бекдором под названием FileMan. При удаленном вызове вы получаете полный доступ к файловой системе, вы можете изменять любые файлы, при этом оставляя дату последнего изменения, а не текущих. Нашли такие бекдоры в папке modules. Примеры:
- /modules/mod_system/mod_system.php
- /modules/mod_systems/mod_system.php
- /modules/mod_article/mod_system.php
- /modules/mod_articles/mod_system.php
- /modules/mod_articless/mod_system.php
Создать новый файл .htaccess. Добавить инструкцию, которая указана нижне. Она запрещает выполнение скриптов. Добавить его во все папки корня сайта.
## Блокирование прямого доступа к ядру <Files ~ ".(php)$"> Deny from all </Files>Настройка Apache
Теперь перейдем к настройке безопасности веб-сервера Apache, он обрабатывает PHP-код и возвращает браузеру HTML-код. Его тоже надо настроить. Тут может возникнуть ряд трудностей, так как не на всех серверах есть доступ к файлу php.ini (в нем хранится конфигурация Apache). Можно попробовать сконфигурировать через .htaccess.
Установите модуль mod_security
ModSecurity – модуль Apache, добавляющий возможности обнаружения и предотвращения вторжения на Web-сервер.
К сожалению вы сами не сможете этого сделать, советуем обратиться к администрации хостинга или к администратору выделенного/вирутального сервера. Они должны установить и сконфигурировать этот модуль.
Используйте PHP версии 5.0 и выше.
Версия 4.0 уже считается устаревшей, и некоторые функции считаются небезопасными.
Не стоит бояться включить, например, версию 5.3 для Joomla ветки 1.5. CMS будет превосходно работать.
Используйте локальный php.ini
Некоторые хостинги позволяют использовать собственный файл конфигурации Apache, который находится в корне сайта. Если такая возможность есть, не упустите ее.
Настройка php.ini
Настройка простая. Вот рекомендуемые настройки безопасности Apache. Все описывать детально не буду, более подробную документацию сможете найти на сайте docs.joomla.org.
disable_functions = show_source, system, shell_exec, passthru, exec, phpinfo, popen, proc_open open_basedir = /home/users/you/public_html:/tmp magic_quotes_gpc = 0 safe_mode = 0 register_globals = 0 allow_url_fopen = 1 allow_url_include = 0Если нет возможности настроить php.ini, то можно попробовать прописать в .htaccess.
php_flag register_globals Off php_flag file_uploads On php_flag allow_url_fopen off php_flag magic_quotes_gpc On php_flag magic_quotes_runtime OffПрава в файловой системе
Если дистрибутив Joomla установлен на веб-сервере Apache с mod_php, то все виртуальные хосты на этом сервере работают в том же контексте, что и Joomla. Если файлы принадлежат другим пользователем, например «nobody» или «wwwrun», самым безопасным решением будет сменить владельца, используя FTP-клиенты (FilleZill, Total Commander и etc) и установить правильные права доступа. Они такие:
- Корневая директория 750 (например public_html)
- Файлы 644
- Директории 755 (711 если вы параноик, но не для директорий, которые должны быть перечислены, например images)
Обновление CMS Joomla
Очень важный шаг. Обновить систему надо, так как разработчики периодически закрывают дырки в ядре. Например, последний билд для 1.5 является 1.5.26. Скачать релизы обновлений можно на сайте joomla.org. Там же найдете пакеты обновления и для более новых версий.
Перед обновлением обязательно создайте резервную копию всего сайта, используя инструменты, которые предоставляет хостинг или воспользуйтесь компонентом Akeeba Backup.Удаление неиспользуемых расширений Joomla
Многие сайтостроители ставят подряд все расширения, которые находят. По большей части все они бесполезны и имеют кучу дыр, через которые злоумышленник может получить полный доступ к сайту или заразить сайт на Joomla вирусом. Так что надо определиться, нужен ли вам виджет часов на сайте? Лучше удалить неиспользуемые расширения и оставить только действительно полезные.
Обновление расширений Joomlа
Обязательно следить за релизами, особенно актуально для Joomla 1.5. В версии 1.6 и выше уже создана система репозиториев, которые позволят автоматически обновлять расширения. Одно из часто взламываемых расширений — это устаревший визуальный редактор JCE. Есть более современный, удобный и бесплатный редактор JoomlaCK для всех версий Joomla.
Не используйте варезные расширения
Часто заражения сайта на Joomla происходит через расширения, скачанные с варезных сайтов. В 100% случаев вы уже там найдете вирус. Так что ищите бесплатные аналоги у авторов, либо покупайте. Расширения не всегда дорого стоят. 10-15$ вас не разорят, зато это сделает ваш сайт более безопасным, заодно получите самую последнюю версию.
Установка расширений безопасности
Есть ряд полезных расширений для Joomla, который значительно повысит безопасность вашего сайта. Приведу их список.
- Admin Tools — шикарный инструмент реальной безопасности. При этом я рекомендую купить профессиональную версию (она стоит всего 20 Евро), зато вы получите почти максимальную безопасность. Сравнение версий
- jHackGuard — интересный плагин от SiteGround, позволяющий существенно повысить безопасность сайта. HackGuard обеспечивает защиту от таких видов взлома, как: SQL-инъекции, удаленные включения URL/файлов, удаленное выполнение кода, а также защиту от XSS-атак.
- AI-Bolit — Скрипт (не расширение) для поиска вирусов и вредоносных скриптов на сайте. Инструкция по его использованию — в коробке.
- Shell and Backdoor Script Finder — вирусный сканер сайта, у него более продвинутые базы, чем у AI-Bolit.
Сложные пароли к учетной записи администраторов
У меня есть увереность, что большинство сайтов на Joomla можно взломать с помощью пары логина admin и паролья 1234. Это недопустимая халатность. Такой пароль с логином подбирается в считанные секунды. Если вы испытываете трудности с генерацией сложных паролей, то воспользуйтесь сервисом pasw.ru.
Создание страницы «404»
Ну, об этом я писал уже дважды: Посадочная 404 страница и Как создать 404 страницу в Joomla 1.5.xx. Вы же не хотите увидеть вот такую скучную страницу:
Вот, в принципе и все. Этих нескольких простых действий достаточно, чтобы ваш сайт жил и процветал. Безопасность превыше всего.
Следующая статья Посадочная 404 страницаCtrl + →
Добавить комментарий
palpalych.ru
Вирусы на Joomla. Методы защиты сайта
CMS Joomla уже 10 лет успешно используется по всему миру для создания как сложных веб-ресурсов, так и элементарных домашних страниц. Несмотря на почтенный возраст платформы и ее надежность, реальность такова – здесь, как и в любой другой CMS, находятся слабые места, которыми спешат незамедлительно воспользоваться хакеры.
Вирусы на Joomla – что стоит знать об этом
Именно вирусы считаются одним из самых опасных и непредсказуемых методов атак на Joomla.
Одним из самых распространенных способов проникновения вируса на сайт является уязвимость в скриптах cms, дополнениях и шаблонах. Иногда, заражение происходит через локальную машину, которую используют для FTP - доступа к веб-ресурсу. Когда вирус попадает на компьютер, вредоносное ПО сканирует программы компьютера, в которых стандартно могут храниться адреса ftp серверов и пароли. Получив эту информацию, программы-боты с ее помощью заходят по FTP -адресам, находят корневые файлы и добавляют в них вредоносные коды.
Присутствие вирусов на Joomla: основные признаки
Наиболее опасными принято считать так называемые «скрытые» признаки, на которые многие владельцы сайта длительное время вообще не обращают внимание, например:
- сайт стал более медлительным;
- помимо основной информации на нем стал появляться несуществующий ранее «мусор»;
- были обнаружены новые пользователи, уровень доступа которых администратор/супер администратор.
Явными признаками, которые не оставляют сомнений, что Ваше «детище» подверглось вирусным атакам, являются:
- случаи, когда вместо Вашей страницы отображается реклама, ссылки на иные источники, а порой даже оскорбительная информация;
- ситуации, когда на Вашем веб-ресурсе появляются чужеродные элементы, замещающие первоначальную структуру страницы целиком или частично;
- при поисковой выдаче страницы открывается чужой сайт, если же вбить адрес сайта вручную, непосредственно в строке набора адреса, он отображается корректно;
- происходит спам рассылка через ваш сайт, обычно сообщение о спам рассылке отправляет хостинг-провайдер, предварительно отключив возможность отправки писем с вашего аккаунта;
- происходит редирект пользователей мобильных устройств на вредоносные сайты;
- Яндекс и Google в поисковой выдаче отмечают сайт, как вредоносный, тем самым блокируют переходы пользователей на ваш сайт.
Как осуществляется защита Joomla
Давно известно, что именно вакцинация (в нашем случае своевременная профилактика) является лучшим лекарством от заражений. Поэтому позаботьтесь заранее о наличии надежного антивируса на своем компьютере и вместе с этим:
- следите, чтобы на сайте была установлена именно последняя версия Joomla и все необходимые для ее корректной работы расширения;
- не пренебрегайте выполнением регулярного резервного копирования;
- не храните пароли от кабинета хостинга в любой из FTP -программ или браузере;
- безопасность скриптов сможет усилить и грамотная конфигурация сайта: правильно прописанные права на директории и файлы, дополнительная защита на вход панели администратора, запрет в директориях загрузки на выполнение скриптов и т.д.
«Вирус Детект» – Ваш надежный помощник!
Что делать, если собственных знаний и умений оказывается недостаточно, чтобы обеспечить сайту достойную безопасность? Ответ прост – обратитесь к квалифицированным специалистам. Компания «Вирус Детект», имея солидный опыт работы с Joomla, выполнит все необходимые действия для того, чтобы максимально обезопасить Ваш сайт от вредоносных вирусов.
Добавить комментарий
virus-detect.ru
Сайт на Joomla взломали, лечение сайта от вирусов, защита сайта от взломов, RSFirewall, фаерволл для Joomla
Joomla — не только одна из самых популярных CMS в сети Интернет. К глубокому сожалению, эта система управления контентом наиболее подвержена атакам хакеров. Сегодня мы поговорим о том, что делать, если ваш сайт на Joomla взломан, а также рассмотрим меры профилактики и борьбы со злоумышленниками.
Общение с читателями заставило дописать абзац. Мы не осуществляем бесплатные или платные консультации, связанные со взломом вашего сайта, но готовы платно оказать услугу лечения и восстановления сайта после атаки хакеров.
Актуальная стоимость работ указана на странице: «Лечение сайтов (CMS Joomla) от вирусов».
Не буду рассматривать экзотические случаи, когда атака на сайт происходит целенаправлено в целях добычи информации. Ибо при размещении конфиденциальных данных в сети Интернет, используется что угодно, только не Joomla. Мотивация современных взломщиков достаточно понятна и ее можно разбить на три основных раздела.
Продвижение сайта злоумышленника.
Внедряются скрипты, которые наполняют ваши странички ссылками на сайт злоумышленника. Возможен вариант редиректа, когда посетитель сразу отправляется в нужном взломщику направлении.
Нередки случаи, когда злоумышленник получает доступ к базе данных и в административную панель, а вы обнаруживаете чужие статьи и новости в списке материалов.
Взлом для повышения самооценки хакера
Файлы Joomla могут быть или полностью удалены или заменены скриптами злоумышленника. Есть высокая вероятность, что посетитель увидит нечто в красно-темных тонах, где будет написано, что взлом совершен замечательным парнем из Турции.
Рассылка спама «от лица» вашего сайта.
В 2015 году по этой причине происходило большинство взломов.
Каков алгоритм работы вредоносных скриптов и злоумышленников?
Атака на сайт осуществляется через уязвимость CMS Joomla либо компонента. Бывают случаи, когда вредоносный код изначально присутствует в установленном расширении.
Это касается тех компонентов, плагинов, модулей, которые были скачены нелегально.
Результат проникновения на сайт — появление многочисленных файлов скриптов в разных каталогах Joomla.
Имена файлов и их размещение в каталогах таковы, что на первый взгляд отличить вредоносные скрипты от «родных» файлов Joomla непросто. По этой причине нередко «лечение» сайта оказывается неполным и спустя несколько дней или недель от имени вашего домена уходит очередная порция спама.
Практически сразу от техподдержки хостинга в ваш адрес летит грозное письмо, где предлагают решить проблему с безопасностью. Бездействие грозит блокированием аккаунта и отключением сайта.
Начало вашей войны с вредоносными скриптами начнется с хостинг-провайдера. Скорее всего, именно его письмо даст отмашку военным действиям
Успешность их в немалой степени зависит от того, какие инструменты предоставляет в ваше распоряжение хостинг компания. Перечислю основные:
-
Встроенный в хостинг панель антивирус. Он, как правило, не производит лечение, но поможет найти значительную часть вредоносных скриптов
-
Доступ по SSH. Без него говорить о полноценной борьбе с вирусами невозможно
-
Оперативная и квалифицированная техподдержка
-
Ежедневное резервное копирование. Идеальный вариант - возможность восстановить или скачать копию месячной давности
Если ваш хостинг провайдер не предоставляет антивирусное программное обеспечение (оно может быть встроено в хостинг панель, либо запускаться самостоятельно хостинг провайдером по вашей просьбе) — хватайте в охапку свой зараженный сайт и меняйте компанию, предоставляющую услугу хостинга. Рынок просто изобилует подобными предложениями.
Большинство сайтов размещено на виртуальном хостинге, и твердую пятерку по всем перечисленным четырем пунктам я бы поставил компании, ссылка на которую ниже:
ООО «Регистратор доменных имён РЕГ.РУ»
Совершенно другая история, если вы арендуете сервер целиком. Первый, третий и четвертый пункты будут целиком на вашей совести. А пункт два будет самим собой разумеющимся.
Порядок действий при взломе
Шаг 1. Очищаем сайт от вредоносных файлов
Как правило, проходит не так много времени от взлома до письма от техподдержки хостинга. В редких случаях владелец сайта сам обнаруживает взлом.
Самый простой способ — это восстановить сайт из незараженной резервной копии. Однако, он годится только в том случае, если на сайте длительное время не проводилось никаких изменений.
На регулярно обновляемом сайте поиск придется проводить вручную. И делать это посредством SSH. Задача будет предельно простой. Необходимо выяснить: какие файлы изменялись за последнее время. Например, за неделю. Для операционной системы Debian команда будет выглядеть так:
find /каталог, где осуществляется поиск/ -type f -mtime -7
Согласно этой команде система отобразит те файлы, что изменялись за последние 7 дней. Обращаем внимание на файлы с расширением PHP.
Именно они несут угрозу. При этом вы должны понимать, что часть отображенных файлов может оказаться незараженными и принадлежать самой Joomla. Поэтому у вас под рукой должен быть исходный дистрибутив той версии, что работает в данный момент.
На скриншоте мы видим два файла. Первый — вероятнее всего вирус. Второй — это системный файл Joomla.
Откуда такие выводы?
Дело в том, что в каталоге /components/com_weblinks/views/category/ никакого файла start.php не должно присутствовать в принципе.
А файл error.php в каталоге /logs/ является частью CMS. Впрочем, если конкретно он будет удален, ничего критичного не произойдет, поскольку служит хранилищем логов Joomla.
При этом я настоятельно рекомендую открывать каждый файл посредством FTP менеджера. Если это системный файл Joomla, то стоит просмотреть его на наличие изменений, сравнив с оригиналом из дистрибутива.
Шаг 2. Защищаем сайт от взломов
Предположим, вы успешно справились с удалением всех вредоносных скриптов. Техподдержка хостинга и антивирус отрапортовали: «да, все чисто». Что необходимо сделать, чтобы предотвратить подобное?
Обновление Joomla и расширений до последней актуальной версии
Если ваш сайт работает на версии Joomla до 3.X — есть очередной повод задуматься об обновлении. Последнее время на этом настаивают и многие хостинг провайдеры.
Это не решит проблему безопасности на 100 процентов, но в будущем у вас появится возможность оперативно обновлять систему, кликом одной кнопки устанавливать патчи безопасности, которые последнее время выходят практически каждую неделю.
Особое внимание хочу уделить установленным расширениям на вашем сайте. Каждый компонент, плагин, модуль должен быть также обновлен до самой свежей версии. Проведите ревизию в административной панели своего сайта.
Все ли расширения используются?
В силу низкой квалификации современные веб мастера решают любой вопрос установкой плагина или модуля, хотя достаточно добавить пару строчек в код шаблона сайта. Или подправить CSS.
Чем меньше на вашем сайте дополнительных расширений, тем меньше вероятность взлома!
Независимо от содержимого, сайт, работающий под управлением CMS Joomla, ежедневно подвержен атакам. Подбор хакерами пароля к административной панели и попытки внедрить вредоносный код происходят с пугающей регулярностью. В одиночку противостоять атакам и внедрениям — невозможно.
Обращаю ваше внимание на компонент, который решает огромное количество задач, связанных с безопасностью сайта. Имя ему - «RSFirewall».
Рассмотрим вкратце основные возможности, функции и задачи, решаемые RSFirewall:
-
Проверка вашей системы на наличие уязвимостей. Осуществляется анализ базы данных, файлов, а также среды, в которой работает сайт
-
Сравнение файлов вашей системы с оригинальным дистрибутивом Joomla. Это существенно облегчает поиск зараженных файлов.
-
Анализ прав на каталоги и файлы.
-
Поиск файлов с вредоносным кодом. После того, как список будет выведет вам придется вручную проанализировать каждый файл, поскольку часть из них может оказаться вполне обычным рабочим кодом расширений Joomla
-
Логирование попыток входа в административную панель Joomla и возможность блокирования пользователей, которые ввели неверно логин и пароль определенное количество раз
-
Логирование любых посещений сайта и возможность блокирования IP адресов, с которых осуществлялась попытка взлома
-
Запрет доступа к сайту из указанных стран.
Компонент платный. Актуальная версия доступна исключительно для Joomla версий 3.X
На момент создания этой статьи распространяется в трех вариантах. Ниже дана таблица, где указана стоимость, условия подписки и ссылка на страницу, где данная подписка приобретается.
RSFirewall — лицензия на один домен с подпиской на год
Стоимость: 49 ЕВРО
Приобрести лицензию
|
RSFirewall — лицензия на полгода с подпиской на неограниченное количество сайтов
Стоимость: 99 ЕВРО
Приобрести лицензию |
RSFirewall — лицензия на год с подпиской на неограниченное количество сайтов
Стоимость: 169 ЕВРО
Приобрести лицензию |
Исследовать RSFirewall будем при локализации «по умолчанию». То есть, языком интерфейса останется английский.
Установка компонента стандартная, осуществляется через менеджер расширений. После того, как компонент установлен, заходим «Компоненты — RSFirewall — System Check»
Откроется страница, где нам будет предложено проверить конфигурацию Joomla и сервера на предмет устойчивости ко взломам. Также будет осуществлен поиск:
-
файлов Joomla, которые подвергались изменению и отличаются от аналогов из оригинального дистрибутива
-
вредоносных файлов
-
будет осуществлена проверка прав на каталоги и файлы
Для того, чтобы проверка началась, достаточно нажать кнопку «Perform the System Check».
Рассмотрим результат анализа.
В верхней части можно наблюдать количество баллов или процентов, которые компонент выставляет после проверки сайта. Значение «100» - высшая оценка. На данный момент тестируемый сайт оценен всего на 84 балла. Давайте разберемся — почему.
Текст выделенный красным цветом — это рекомендации, к которым стоит прислушаться. И выполнить их. Чем меньше таких рекомендаций, тем выше балл.
Рассмотрим подробно полностью список, не исключая и текст выделенный зеленым цветом.
Раздел Joomla Configuration
Checking if you have the latest Joomla! Version — Проверка: является ли установленная версия Joomla самой последней. Как видим, с этим все в порядке. На момент написания статьи таковой была версия Joomla 3.4.8
Checking if you have the latest RSFirewall! Version — Проверка: является установленная версия компонента RSFirewall самой последней. Это важная характеристика безопасности вашей системы, поскольку от версии к версии компонент не только обрастает базой данных вредоносных скриптов, но постоянно меняется функционально согласно обнаруженным в Joomla уязвимостям.
Checking if you have a weak database password — В данном случае компонент проверяет взломоустойчивость пароля к базе данных.
Checking if the default 'admin' user is active. - Логин супер администратора сайта в целях безопасности должен отличаться от широкораспространенного «admin». Если компонент находит в базе данных пользователя с таким логином, появится предупреждение.
Checking if you have set your FTP password — На этапе установки Joomla или редактировании ее настроек, допускается фатальная ошибка. Доступ по протоколу FTP указывается в конфигурационном файле Joomla. Имеет место быть и не менее трагичный вариант. При сохранении общих настроек Joomla в поле доступа по FTP записывается логин и пароль к административной панели. Поэтому следим, чтобы в файле configuration.php соответствующие параметры были пустыми.
Checking if you have Search Engine Friendly URLs enabled — Проверка: включена ли в общих настройках Joomla поддержка SEF URL.
Checking the integrity of configuration.php — Проверка файла configuration.php на корректность и целостность.
Checking if any admin users have weak passwords — Проверка всех паролей супер администраторов вашего сайта на взломоустойчивость
Checking your session lifetime — Проверка времени жизни сессии, что задается в общих настройках Joomla. Если оно превышает 15 минут, то появится предупреждение.
Checking if there are any files left in the Joomla! temporary folder — В данном случае проверяется: располагаются ли файлы во временном каталоге Joomla. По умолчанию таким каталогом является папка «tmp». Нужно следить за чистотой данного каталога, поскольку после установки расширений или обновления Joomla там могут находиться лишние архивы и скрипты.
Checking for .htaccess — Проверка на существование файла .htaccess. После установки Joomla в корне сайта по умолчанию создается файл htaccess.txt. Ваша задача переименовать его в .htaccess. Именно так, как написан, с точкой в начале и без .txt в конце
Checking if the Joomla! temporary folder is publicly accessible — Проверяется: доступен ли каталог для временных файлов Joomla для открытого доступа. Что подразумевается под этим? Проще говоря, возможно ли набрать в адресной строке браузера ссылку вида www.ваш сайт.com/tmp.
Не все знают, что разместить временный каталог возможно так, что доступ к нему будут получать исключительно скрипты Joomla. Достаточно создать папку с произвольным именем уровнем выше каталога, где расположен сайт и прописать путь к этой папке в файле configuration.php
Checking your Session Handler — Проверка типа обработчика сессий. Нам рекомендуют поставить значение «Нет». Сделать это можно в общих настройках Joomla
Раздел Server Configuration
Перейдем к исследованию следующего раздела, где проводился анализ конфигурации сервера.
Мы видим, что конфигурационные директивы PHP с точки зрения компонента не настроены должным образом.
Разбираться в том какая директива за что отвечает необходимости нет. Однако, предварительно нужно решить вопрос со временным каталогом Joomla, про который я писал выше.
Далее нажимаем на кнопку «Attemp to Fix PHP Configuration», после чего в корне вашего сайта будет создан файл php.ini
Скопируйте его на жесткий диск своего компьютера, а из корня сайта удалите, ибо он носит исключительно информативный характер и сообщает значение директив PHP, которые вы должны вставить в свой php.ini
Как его найти на сервере и разрешен ли туда доступ, следует уточнить у вашего хостинг провайдера. Нередко директивы PHP меняются путем изменения настроек хостинг панели. Поэтому универсального рецепта здесь нет.
Далее вам необходимо конфигурировать PHP так, как было указано в файле.
Раздел Scan Result
Здесь представлены результаты сканирования вашей системы. Предлагаю изучить их результат.
Scanning the integrity of your Joomla! (CMS) files — в данном разделе будет показан результат сканирования файлов CMS Joomla и сравнение с оригинальным дистрибутивом на целостность и возможное изменение файлов. Сравниваться будут не только скрипты, но также файлы изображений, CSS. В общем, все.
Scanning your folders — сканирование по протоколу FTP посетить каждый и убедиться, что он чист от вредоносных скриптов
Scanning your files — в данном случае идет речь о правах на файлы. Действия должны быть аналогичными, как в случае с каталогами
Scanning your files for common malware — сканирование на предмет наличия вредоносного кода. Как видим, RSFirewall нашел один файл и при его анализе в текстовом редакторе, он был признан действительно вредоносным и удален мной с сервера.
Претворение всех рекомендаций компонента RSFirewall, а также чистка сайта от вредоносных скриптов — это важный, но не последний этап укрепления системы безопасности Joomla.
К сожалению, в рамках одного материала охватить все возможности и настройки компонента RSFirewall не представляется возможным. В следующем материале мы займемся исследованием конфигурации компонента.
Если вы не готовы самостоятельно решить вопрос со взломом сайта, напишите через раздел «Контакты», либо в чат в правом нижнем углу экрана.
Лечение сайта осуществляется платно.
Актуальная стоимость работ указана на странице: «Лечение сайтов (CMS Joomla) от вирусов»
С уважением, Владимир Егоров
sitogon.ru
Вирусы на сайте на Joomla и других CMS: советы и современные решения
C ноября 2012-го года Joomla бьет рекорды заражаемости, в связи с этим много людей обращается за очисткой сайта от вирусов. И каждый раз неприятным сюрпризом для них становится то, что очистка с гарантией — это не бесплатно, не всегда моментально и не всегда без побочных эффектов. А ведь и заражения, и расходов на лечение можно было избежать, если позаботиться о безопасности ДО того, как появились проблемы.
Люди недооценивают безопасность сайта, потому что мало кто знает, какая ситуация в мире по этой теме. Восполнить этот пробел призвана данная статья.
Как действует злодей?
Никто не идёт целенаправленно ломать конкретный сайт, это не выгодно (за исключением тех дел, где замешаны спецслужбы и пр.). Конкретный сайт обычно не взламывают интеллектуально, а временно выводят из строя, перегружая многочисленными запросами (DDOS). Или пытаются подобрать пароль — меняйте, если у вас короткий. В общем, если сайт взломан — это 99% не злые конкуренты, а просто оптовая раздача. Ничего личного.
По сути, большинство хакеров ищет, что «плохо лежит». Есть давно известные уязвимости популярных движков, таких как Joomla, WordPress, DLE, ShopScript. Они опубликованы на сайтах поддержки, на форумах по безопасности, но их не читает никто. Кроме хакеров.
Дальше дело техники. Простой способ — искать в Гугле по фразам наподобие "inurl:id=", где вместо id — переменная, упомянутая в описании уязвимости. Это даст список сайтов, у которых движок принимает через адресную строку нужные переменные. В которые можно попробовать подставить не обычную цифру, а гадкий код, основанный опять же на общеизвестном описании уязвимости. Более продвинутый вариант — делать роботов, которые обходят сеть и ищут уязвимые движки. Такие роботы в случае с Joomla проверяют, есть ли на сайте папка /administrator/. Постоянно ходят по сети и роботы, которые нащупывают утилиту phpmyadmin. Именно поэтому ни в коем случае нельзя размещать её в папках с очевидным названием phpmyadmin, myadmin и тому подобными — все эти слова есть в словарях роботов. Давно существуют весьма продвинутые, готовые программы для этого дела.
Иногда, найдя уязвимый сайт, хакер закрывает уязвимость. Чтобы коллеги не лезли. Но главное — злодей всегда старается закрепиться на взятом рубеже, и здесь прилагаются гениальные усилия. В дело идёт бэкдор — задний ход, дающий хакеру доступ к файлам сайта.
Да, проводятся даже соревнования на самый короткий бэкдор, на самый незаметный бэкдор, с заманчивыми призами. Обычно таких бэкдоров на взломанном сайте помещается несколько. При оптовом, автоматическом заражении бэкдор часто пишется просто во все файлы подряд. При «ручной работе» бэкдоры прячутся редко, но метко. Высший пилотаж: альтернативный синтаксис php, а ещё круче — «размазывание» кода бэкдора по всему движку, так что строки зловреда перемешиваются с кодом сайта и ничем не выделяются. Последняя разновидность, самая коварная и неуловимая, обычно встречается в зануленных движках. По этой причине специалисты Kraftwork обычно берутся за очистку нулёных сайтов, но не дают гарантию на них (в то время, как гарантия после очистки сайтов на лицензионных движках — 1 год).
Закрепившись на объекте, хакер обычно выжидает пару недель — чтобы даже самые старые бэкапы сайта были с бэкдорами. Затем наступает время монетизации. На сайт помещается «боеголовка» вируса — редирект на вредоносный сайт, попап или попандер, загрузчик троянов, или ещё что-нибудь, приносящее деньги.
Почему так?
Возьмем, для примера, знаменитый случай со Skype. Программист нашел в нем уязвимость: можно сменить пароль любого пользователя и взломать любой аккаунт. Он честно сообщил об этом разработчикам, но те не почесались. И он выложил информацию об уязвимости в сеть. Миллионы аккаунтов были взломаны, и разработчикам пришлось-таки отложить выполнение задач отдела маркетинга и уязвимость закрыть.
В интернете приоритеты расставляют продажники, а у них задача одна: рост продаж. Или хотя бы показателей:
Вопросам безопасности, сохранения уже имеющегося, да и вообще элементарным бэкапам, в этой схеме места нет.
Удаление вируса: работа над ошибками
Почти все владельцы сайтов уверены в двух вещах:
1. «Сайт по умолчанию в безопасности. Беспокоиться стоит только, если появились враги-конкуренты».
— Это не совсем так.
2. «Если что, всегда есть автоматические антивирусные сканеры, которые бесплатно или за малую копейку удалят любой вирус».
— Это совсем не так.
Как только появляются проблемы, владельцы сайтов обычно сначала обращаются к хостеру, к своему разработчику или в антивирусную фирму подешевле. Происходит удаление «боеголовки», и вроде бы можно успокоиться. Но самое главное — бэкдоры, дающие злодею доступ к сайту, остались на месте. И в любой момент злодей может прийти и разместить новую «боеголовку», и монетизировать сайт снова. Обычно при повторных, как правило, уже ручных заражениях «боеголовка» прячется лучше и действует умнее. Например, редирект на зловредный сайт идёт только для мобильных броузеров, платные ссылки показываются только роботу Яндекса, и т. д.
Будет повторное заражение или нет — зависит от сайта, вероятность процентов 60, что будет. Не заражают повторно только те сайты, которые получили своё оптом, и у которых нет посещаемости — нет смысла возиться. Достается и соседям: если на одном хостинг-аккаунте несколько сайтов, зараза для всех одна. Вебшелл или бэкдор на php видит файлы остальных сайтов и вписывает в них вредоносный код точно так же, как и во взломанный сайт. Вероятность того, что соседи затронуты, примерно 50%. По этой причине Кролики не берутся чистить один из сайтов площадки, не трогая остальные. Остальные могут заразиться бэкдорами от него, а он от них. При повторных заражениях и по сайтам с приличной посещаемостью (больше 500 в день) вероятность заражения соседей почти 100%.
Видимую часть вируса — «боеголовку» — действительно иногда можно удалить полуавтоматическими методами. С бэкдорами не так просто. Это творчество, не зря ведь соревнования проводят. И противопоставить этому тоже можно только творческий подход к поиску. Причём изобретать надо на скорость, время ограничено. Тут как со Змей-Горынычем, если хоть один бэкдор останется не удаленным, мигом вырастут новые, взамен «отрубленных». Если вам повезло, и злодей оказался лентяем, то удалить бэкдоры поможет простой способ — скачать себе файлы сайта и проверить их антивирусом. Простецкая и старая зараза, уже осевшая во всех антивирусных базах, будет вырезана таким способом. Жаль, что такой простой и древней заразы в практике мало. Потому что имеются платные сервисы для хакеров для опробования новых вирусов. Эти сервисы проверяют вирус всеми антивирусными базами с особой тщательностью и полной имитацией «жертвы» — более долго и обстоятельно, чем бесплатные антивирусные сервисы для людей. Только опробованный на таком полигоне вирус, неуловимый для всех существующих алгоримов, выпускается в сеть. Хорошо, что хоть у некоторых злодеев не хватает денег и трудолюбия свои вирусы предварительно опробовать.
В сложившейся ситуации остается действовать радикальными методами. Закрывать ftp (оставив sftp), закрывать возможность записи в файлы, фильтровать все, приходящие от пользователей, данные на предмет попыток использования бэкдоров. Обычно это происходит незаметно для посетителей, временные неудобства могут быть только у менеджеров, работающих в админке сайта. Непоправимые побочные эффекты бывают не от лечения, а от самого вируса: иногда хакер безвозвратно затирает код сайта, вставляя заразу туда. Хорошо, если движок сравнительно стандартный, — тогда можно взять файл с аналогичного сайта. Если нет — то только очень дорогая и долгая ручная работа.
FTP доступ желательно закрывать везде и всегда, он плохо совместим с безопасностью. Под закрытием подразумевается либо ограничение ftp доступа по ip, либо полное закрытие.
SFTP (с использованием реквизитов ssh доступа) тоже лучше бы ограничивать по ip, или делать авторизацию сертификатом, плюс обязательным является fail2ban на ssh — это когда при трех неправильных попытках авторизации ip банится на 15 минут. Впрочем, если ваши разработчики хотя бы используют sftp вместо ftp и не хранят пароли в файл-менеджере, а копи-пастят их из блокнота или ворда, — это уже огромный шаг вперед.
Закрытие записи в файлы на шаред-хостингах основано на том, что там есть пользователь-клиент, от которого работает ssh и ftp, и обычный пользователь www-data, от которого работает apache и (если есть) nginx. Бэкдор может писаться в те файлы, которые принадлежат пользователю www-data. Поэтому желательно установить владельцем всех файлов ssh/ftp пользователя, а не пользователя www-data. При этом придётся сделать исключение для тех файлов, в которые движку необходимо делать запись.
Аналогично и с директориями. Поскольку придётся оставить некоторые директории доступными на запись для пользователя www-data, то в эти директории необходимо положить закрывающий .htaccess. Если это папки загрузки изображений, и картинки эти раздаются апачем, а не nginx, то надо отключить php в этой папке. Другие языки лучше отключить в рамках всего хостинг-аккаунта, если они не используются в движке вашего сайта. Для сайтов на Joomla и других популярных движках это так.
Ещё один миф: по логам можно всё отследить
Если бы! Обычно логи хранятся неделю. А хакер, как упоминалось в этой статье, обычно ждет хотя бы пару недель. То есть логов просто нет, и смотреть нечего. Но вот, допустим, вам повезло, и у хостера есть логи доступа двухнедельной давности.
Потратив вечер, можно там найти, что с такого-то малайского ip адреса к папке /administrator/ был сделан POST запрос. И через секунду с панамского ip был сделан POST запрос на /index.php. Кто эти люди? Что именно засунули в сайт в теле POST запроса? Это кануло в Лету, остается только локти кусать.
При проведении очисток в Kraftwork всегда настраивают лог самого содержимого post запросов, а не просто их наличия. Это действительно помогает работать не вслепую и отследить злодейские действия. И всё же: узнать ip и прийти домой к злодею — это из области анекдотов про Путина.
А вот банить злодейские ip — не такая уж плохая идея, особенно, когда дело касается защиты от DDOS. Потому что да, их может быть очень много, десятки и даже сотни тысяч, если хакер богат, но всё же не до бесконечности. Из них, в лучшем случае, пару тысяч адресов будут русские ip. То есть можно спокойно банить их, не опасаясь отрезать основную аудиторию российских пользователей.
И что, я могу потерять сайт из-за вируса?
У нас всегда очистка очищала, а гарантия гарантировала, победа оставалась за нами, и все бэкдоры и вирусы удалялись с сайтов навсегда. Правда, бывали трудные случаи. По опыту Кролики не склонны недооценивать противника и снимают шляпу перед изобретательностью и упорством, движимых жаждой наживы, талантливых джентльменов удачи.
Потерять сайт — это вряд ли. Потерять позиции в поисковиках, аудиторию сайта и деньги — это да, часто случается из-за вирусов.
Что же делать?
Всегда лучше быть на шаг впереди. Профилактика — лучшее лечение. Сайты с постоянной, добросовестной техподдержкой остаются чистыми от вирусов всегда. Безопасность — не так сложно, достаточно просто не сделать цепочку грубых ошибок.
Следить за сообщениями на сайте поддержки CMS сайта, выполнить простые рекомендации насчет ftp из этой статьи, иметь бэкапы за пару месяцев — и вероятность проблем стремится к нулю. Конкретно по Joomla обязательный пакет — это права на файлы и дополнительная http-авторизация на админку.
Если вирусных проблем ещё нет, можно договориться на укрепление защиты сайта — это всегда намного дешевле, чем очистка. Даже если сайтов много, и все на одном shared аккаунте. Бэкапы тоже можно заказать, они идут почти по цене проезда в общественном транспорте.
Если сайт хоть для чего-то нужен, оно того стоит.
krwork.ru