13 Январь 2010
Категория: joomla, Безопасность

Решил опубликовать полезную статейку о защите Joomla

Измените установленный по умолчанию префикс (jos_) к таблицам в базе данных
Большинство SQL инъекций, которые написаны для взлома сайтов на Joomla! пытаются получить данные из таблицы jos_users. Таким образом, они могут получить имя пользователя и пароль для супер администратора сайта. Изменение стандартного префикса оградит вас от (большинства / всех) SQL инъекций.

Вы можете задать префикс базы данных при установке Joomla! Если вы уже установили и хотите изменить свой префикс, выполните следующие действия:

  • Войдите в панель управления Joomla!
  • Зайдите в «Общие настройки»->«Сервер» и найдите панель «Установки базы данных».
  • Там измените ваш префикс на любой произвольный (например: fdasqw_) и нажмите кнопку Сохранить.
    *Когда вы это сделаете, сайт на время выйдет и строя, но следующее действие исправит это.
  • Зайдите в PhpMyAdmin для доступа к базе данных.
  • Перейдите на вкладку экспорт, оставить все значения по умолчанию и нажмите кнопку «Пуск/Пошел». Экспорт данных может занять некоторое время.
  • Когда все будет сделано, выделите весь код и скопируйте его в блокнот (или любой другой текстовый редактор), на всякий случай сохраните файл.
  • В PhpMyAdmin выберите все таблицы, и удалите их. Обязательно убедитесь, что вы сохранили экспортированный до этого код, иначе потеряете данные сайта!
  • В редакторе, выполните поиск и замену (как правило, Ctrl + H). Сделайте поиск по jos_ и измените его на ваш новый префикс (например: fdasqw_). Нажмите «Заменить все».
  • Выберите все в редакторе и скопируйте. В PhpMyAdmin, перейдите на SQL, вставьте запросы (то, что вы скопировали в редакторе) и нажмите кнопку Пуск.

Удалите номера версий / название расширений
Большинство уязвимостей проявляются только в конкретном выпуске конкретных расширений. Показывать номер версии расширения это действительно плохо. Вы можете сократить такие сообщения только до названия расширения, выполнив следующие действия:

  • Скачайте нужные файлы расширений с вашего сервера.
  • Откройте редактор кода.
  • Откройте любой из файлов расширений, которые вы только что загрузили на ваш компьютере.
  • И начните поиск необходимого вам словосочетания, где указана версия расширения. Если вы не знаете в каком конкретно файле искать, то можно воспользоваться поиском по всему каталогу расширений.
  • Установите параметры поиска по словосочетанию «Версия мое расширения 2.14»(Это для примера) и нажмите «ОК».
  • Когда найден искомый запрос, удалите номер версии.
  • Загрузка измененный файл на сервер и убедиться, что были внесены изменения.

Используйте SEF компоненты
Большинство хакеров используют «Google inurl: команду» для поиска уязвимостей для эксплойтов. Используйте Artio, SH404SEF или другой компонент SEF для того, чтобы переписать ссылки и помешать хакерам найти возможность эксплойта. Кроме того, вы получите более высокий ранг в Google при использовании дружественных URL для поисковика. (я бы рекомендовал для этих целей использовать стандартный SEF Joomla с mod_rewrite – прим.Sulpher)
Используйте самые свежие версии Joomla! и расширений
Это очевидно. Всегда проверяйте наличие обновлений для Joomla! и расширений, которые вы используете. Многие уязвимости в большинстве случаев устраняются в более поздних версиях.
Используйте правильный CHMOD для каждой папки и файла
Установка CHMOD 777 или 707 для файлов или папок необходима только тогда, когда скрипт должен записать что-либо в этот файл или каталог. Все остальные файлы должны иметь следующую конфигурацию:
* PHP-файлы: 644
* Файлы конфигурации: 666
* Другие папки: 755
Удаляйте остатки файлов
Когда вы установили расширение, которое вам не понравилось, не оставляйте расширение просто неопубликованным. Если вы так сделаете, уязвимые файлы будут по-прежнему на вашем сайте. Поэтому просто воспользуйтесь деинсталлятором для полного удаления расширения.

Измените ваш .htaccess файл
Добавьте следующие строки в .htaccess файл, чтобы заблокировать некоторые основные эксплойты.

########## Начинаем запись правил чтобы заблокировать основные эксплойты
#
# Блокируем любой скрипт пытающийся получить значение mosConfig через URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# Блокируем любой скрипт пытающийся отправить любое дерьмо чере base64_encode по URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# Блокируем любой скрипт который содержит тег < script> в URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# Блокируем любой скрипт, который пытается установить глобальную переменную PHP через URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# Блокируем любой скрипт пытающийся изменить _REQUEST переменную через URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [OR]
# Блокируем любой скрипт, который пытается установить CONFIG_EXT (баг в com_extcal2)
RewriteCond %{QUERY_STRING} CONFIG_EXT([|%20|%5B).*= [NC,OR]
# Блокируем любой скрипт, который пытается установить sbp or sb_authorname чере URL (баг simpleboard)
RewriteCond %{QUERY_STRING} sbp(=|%20|%3D) [OR]
RewriteCond %{QUERY_STRING} sb_authorname(=|%20|%3D)
# Отправляем все заблокированный запросы на главную с ошибкой 403 Forbidden!
RewriteRule ^(.*)$ index.php [F,L]
#
########## Заканчиваем запись правил чтобы заблокировать основные эксплойты
(оригинал http://joomlaforum.ru/index.php/topic,95611.0.html)
/home/devul2/devul.ru/www/assets/

К записи оставлено 30 коммент.

у меня на сайте по умолчанию уже всё это есть только файл .htaccess переименован htaccess.txt Это правильно?

Извиняюсь. Забыл сказать спасибо!

Спасибо большое

с котами хорошо)))

Спасибо!

Nikolai25, не правильно, так как он должен выглядеть именно вот так .htaccess

вставил себе код в htacess
сайт потух ошибка 500 :)

вставил себе код в htacess
сайт потух ошибка 500

Если сайт потух значит какойта код косячит,нужно просто по чоереди закоментирвать каждую строку и поверить таким образом что строка гасит сайт
Автору спасибо,полезная статья

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

Мне хакеры постоянно взламывали сайт, суки, а когда я поменял стандартный префикс jos_ и добавил в .htaccess строки, которые прописал автор, то с тех пор сайт не взламывался! Так что спасибо автору статьи!
Лично у меня проблемы возникли вот с этой строкой:

# Блокируем любой скрипт, который пытается установить CONFIG_EXT (баг в com_extcal2)
RewriteCond %{QUERY_STRING} CONFIG_EXT([|%20|%5B).*= [NC,OR]

Когда я её удалил, всё заработало. И спасибо кто там писал за коммент:
Если сайт потух значит какойта код косячит,нужно просто по чоереди закоментирвать каждую строку и поверить таким образом что строка гасит сайт

Степан ВСЕГДА при установке новой джумлы надо менять префикс, это прям на автомате должно быть))

Большое спасибо!!!!!!

Огромное спасибо.

Sulpher молодца! Неоднократно выручает!

всегда пожалуйста) если есть что то о чем хотели бы прочесть на страницах блога пишите)

У меня на сайте такая штука

В админке пробывал исправить выдает «Возникла ошибка! Не могу открыть конфигурационный файл на запись!»
CHMOD файла конфигурации 644.

на время изменения конфигурации поставьте права 775 но не забудьте изменить обратно.

У меня взломали сайт, я все содержимое удалила и залила поновой, а когда попыталась зайти в панель управления- меня не пустили…пишет «Имя пользователя и пароль не совпадают «Подскажите, пожалуйста, что делать?

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

Огромное спасибо автору! Я начинающий и по этому вся инфа оч к стати!

Большое (огромное) спасибо за статью.
Но как быть с обновлениями на новые версии Joomla и её расширений?

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

ГК Гермес предлагает широкий выбор оригинальных и oem запасных частей со склада и под заказ из Европы,Америки и Японии.Запчасти на заказ New Holland.Доставка в регионы, услуги растаможивания,страхование груза, низкие цены

Профессиональный фотограф – Фотографии Подмосковье.Снимаю в разных жанрах, но особое предпочтение уделяю свадебной, творческой фотографии.Работы печатались в журнале “Потребитель”,в каталоге «Лучшие фотографии России-2010»

Дизайн студия DK Сайт бесплатно.Предоставляем весь спектр услуг по проектированию,продвижению и сопровождению ресурсов в сети Интернет.В нашу специализацию входит:создание сайтов любой сложности,техническая поддержка и раскрутка .

Профессиональный фотограф Тая Невская – фотосессия в студии,фотосессия в студии , фотосессия лав стори, рекламная фотосъемка и т.д. в Москве и Санкт-Петербурге.Солидный опыт, высокое качество и положительные отзывы

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

Спасибо огроменное!

попробьуем!!!

Есть отличный сервис http://nazamok.com для мониторинга сайта от взлома хакеров, который определяет любые сторонние проникновения на сайт.

Опубликовать новый комментарий: