Как защитить Joomla 1.5 от взлома хакерами
15.12.10 19:09
Целью написание данной статьи явилась потребность защиты CMS Joomla 1.5 от взлома забугорными хакерами. Так как в 2010 году участились массовые взломы сайтом работающие на Joomla 1.5 в доменной зоне RU.

Рассказ про то что Joomla бесплатная и у неё открытый исходный код , который известен всем в том числе и хакерам я упущу. Думаю эту подноготную вы и так сами знаете, так что сразу перейдём к техническим моментам.

Часть 1 Как хакеры находят свою жертву

Давайте начнём с того , что на сегодняшний день хакерам известны ряд способов взлома Джумлы (об этих способов я расскажу позже детально), и из этого можно сделать вывод если хакеры знают уже готовые способы взлома сайта им остаётся найти всего лишь своё жертву работающую на CMS Joomla чтобы воплотить свой ритуал. Каким образом они это делают ? Способов очень много один из самых распространённых способов - это поиск через поисковую систему с указанием особых параметров ( которые отвечают за cms) и региона сайта. После чего им выдаются результаты поиска где в списке все сайты работающие Joomla такой то версии в такой то стране. Вот так ваши сайты попадают в поле зрение хакеров.
Из этого можно сделать вывод самое первое средство защиты от взлома это скрыть информацию о cms работающей на вашем сайте от различных публичных сервисов и поисковиков, чтобы не попасть в список потенциальных жертв.
Теперь каким образом наш сайт на Джумле сообщает поисковикам и прочим сервисам интернета что «Я Джумла 1.5» а самым простым если вы откроете исходный код в страничке браузера любого сайта на Джумле то в самом верху кода вы найдёте такую строчку
<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />
да это именно мета тег, который сообщает с помощью какого скрипта была создана (сгенерирована страница), именно по этому мета тегу злоумышленники и находят ваш сайт и тысячи других. Конечно существует ещё способы нахождения сайта работающего на CMS Joomla но эти способы более сложны и применяются очень редко хакерами для поиска жертвы. 

И так как скрыть ярлык что наш сайт работает на Джумле, для этого нам надо отредактировать файл head.php который даёт именно этот выхлоп в шаблон джумлы, он находиться /libraries/joomla/document/html/renderer/head.php
Открыв его находим код (район 83 строки)
$strHtml .= $tab.'<meta name="generator" content="'.$document->getGenerator().'" />'.$lnEnd;
и удаляем его от греха подальше.

После того как вы удалили этот код то можно сказать на 90% вы обезопасили себя от попадания вашего сайта в поле зрение хакеров а значит от взлома. Ну если конечно ваш сайт не заказали кто нибудь то данная процедура вам не поможет. (это моё личное мнение)

P.S. Моя компания обслуживает множество сайтов на Джумле и когда какой нибудь сайт взламывают хакеры то владелец сайта спрашивает меня чем же мой сайт так привлёк хакеров? Я всегда отвечаю ваш сайт не имеет глобального политического или экономического значение , а значит его хакеры взломали «просто так для спортивного интереса» а взломали ваш именно потому что он просто попался в поиске как потенциальная жертва вот и всё.


Часть 2 Основные методы взлома сайта

И так если ваш сайт всё таки хакеры обнаружили и решились взяться за взлом они начнут его через уязвимости которые больше всего известны им.

Получение административного доступа (Метод сброса пароля)
SQL инъекция
Ввод методом POST через CURL кода на определённую страницу(по заранее известному коду)


Самый распространённый способ взлома это получение доступа к учётной записи администратора , методом восстановление пароля .Как это происходит ?
В джумле есть функция восстановления пароля, даже если у вас на сайте на стороне фрондтенда нету опубликованной ссылки на восстановления пароля простая ссылка всегда работает сама /index.php?option=com_user&view=reset

Именно по этой ссылки хакеры и могут удалённой методом POST ввести напрямую на сервер свой код, в последствии чего им будет предложено ввести новый пароль и всё пароль от учётки администратора получен. За эту операцию отвечает файл reset.php который находиться в данной директории /components/com_user/models
Что бы исключить эту возможность за получение административной учётки хакерами я предлагаю этой файл удалить ,ну это на тот случай если на фронтенде сайта нету сервиса авторизации , ну бывает же много сайтов визиток где нет авторизации и регистрации а удаление этого файла самый верный способ сократить шансы на взлом.

Следующий вариант взлома Джумлы это SQL инъекция , про него я особо много я рассказывать не буду, так как это отдельная тема дя разговора. Но отмечу что почва для взлома сайта таким методом есть , так как дырки в коде всегда найдутся. Те кому интересна эта тема могут почитать про SQL инъекции тут http://webew.ru/articles/2078.webew
И как же вы скажете с этой порукой бороться ? Простому обывателю мало разберющемся в php и sql есть один подходящий вариант это компонент jFireWall Lite (http://www.jfirewall.com/) на сегодняшний день именно только этот компонент может сам бороться с SQL инъекциями и блокировать нападающего. От себя хочу сказать что работает данный компонент очень эффективно , особенно требуется установка такого компонента на сайты на которых крутятся различные стронции расширения, которые создаются одним или несколькими программистами и в процессе создания не особо уделяется сторона безопасности и грамотного алгоритмического написания кода.

Часть 3 Защита файлов и доступа

Одним из важных моментов защиты Джумлы является правильное выставление прав доступа к папкам и файлам на хостинге (сервере). Выше я описывал различные методы взлома и получения доступа к сайту, обычно все те действия которые я рассказал сопровождаются загрузкой различных хакерских вредоносных файлов и прочих утилит которые помогают злоумышленнику получить доступ. Ниже я приведу оптимальные права доступа папки и файлы Джумлы которые усложнят хакерам работу и укрепят защиту вашего сайта.

Первым делом на все папки и файлы выставляем права доступа 755 и 644 соответственно (рекурсивно).
На на отдельные папки я рекомендую поставить следующие права
templates 555 (рекурсивно)
на файлы в корневой директории 444
на папку tmp 705
на папку logs 705

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

AuthType basic /*тип аунтификации, он у нас один*/
AuthName "123456" /*сообщение при обращении*/
AuthUserFile /абсолютный путь до папки администратор/administrator/.htpasswd /*указание на файл с паролями*/
Require valid-user

Как вы ведите нам осталось ещё создать один файл в котором только будет указанно имя пользователя и пароль чтобы происходила аутентификация.
Файл .htpasswd тоже должен располагаться в папки администратор но в нём имя пользователя и пароль должни быть написаны в MD5 шифре.

Для облегчения данной работы я нашёл сайт где в режиме он лайн можно создать эти два файла автоматически а потом поместить их себе на сайт вот

http://www.ifstudio.org/seo/crypt.php


В итоги что надо сделать чтоб защитить свой сайт на Джумле

1.Удалить reset.php (чтоб исключить угон учётки админа)
2.Удалить <meta name="generator" content="Joomla! 1.5 - Open Source Content Management" /> чтобы исключить попадания вашего сайта в область поиска хакеров своей жертвы
3.Установить и настроить jFireWall Lite
4.Выставить нужные права на файлы и папки
5.Установить пароль на директорию посредством веб сервер апатч
Последнее обновление 29.08.12 15:29
 

Комментарии  

 
0 #180 Gerard 18.10.2021 18:54
You actually make it seem really easy along with your
presentation however I find this matter to be actually one
thing which I believe I would never understand.
It kind of feels too complicated and extremely wide
for me. I am taking a look ahead on your next
publish, I will attempt to get the hold of it!

my blog post zp (Violette: https://squareblogs.net/downdajuju1985/very-loving-family)
Цитировать
 
 
0 #179 Royal 18.10.2021 18:33
I really like it when people come together and share
opinions. Great blog, keep it up!

Here is my page ... om - https://blogfreely.net/: https://blogfreely.net/tentrolehan1998/the-flintstones-wilma-goes-wild-ch -
Цитировать
 
 
0 #178 Chara 17.10.2021 18:13
What's up, its fastidious post concerning media print, we all be aware of media is a great source of
data.

Also visit my page :: Wc; unsplash.com: https://unsplash.com/@kicktosafin1992,
Цитировать
 
 
0 #177 Nate 17.10.2021 16:11
I'd like to find out more? I'd love to find out more details.


my web blog: Ww (https://anotepad.Com: https://anotepad.com/notes/cyywxpjf)
Цитировать
 
 
0 #176 Hermelinda 17.10.2021 10:46
A fascinating discussion is worth comment.

I believe that you ought to publish more on this issue, it
may not be a taboo matter but generally people don't
talk about these subjects. To the next! All
the best!!

Also visit my web site rj; Gabriel: https://unsplash.com/@neycalhyness1999,
Цитировать
 
 
0 #175 Claudia 17.10.2021 03:08
Thanks very nice blog!

My page :: qk (https://Pastelink.Net/: https://pastelink.net/zb898234)
Цитировать
 
 
0 #174 Chelsea 16.10.2021 23:36
An outstanding share! I've just forwarded this onto a colleague who has been doing a little homework
on this. And he actually bought me lunch simply because I found
it for him... lol. So allow me to reword this.... Thank YOU for the
meal!! But yeah, thanks for spending time to talk about this subject here on your web page.


Feel free to surf to my homepage: up (pastelink.net: https://pastelink.net/petc33nw)
Цитировать
 
 
0 #173 Marisa 14.10.2021 15:57
Лапки плавно раздвигаются, а когда тыльная часть авто подставка для
телефона: https://www.ozon.ru/product/plastiny-kruglye-dlya-smartfona-dlya-telefona-magnitnogo-avto-derzhatelya-5-sht-40-x-40-sm-serebro-251097925/?sh=VUGWGEGw нажимает на кнопку
в центре, резко сдвигаются.
Цитировать
 
 
0 #172 Kris 13.10.2021 05:26
I've read a few excellent stuff here. Certainly value bookmarking for revisiting.
I wonder how so much attempt you place to make this
sort of great informative web site.

My site ... pu [https://disqus.com/by/disqus_N1GeeNcLSa/about: https://disqus.com/by/disqus_N1GeeNcLSa/about/]
Цитировать
 
 
0 #171 Adrianne 13.10.2021 03:49
I must thank you for the efforts you have put in writing
this site. I'm hoping to view the same high-grade blog posts by you in the
future as well. In fact, your creative writing abilities
has inspired me to get my own website now ;)

Look into my webpage - bw; https://devpost.com: https://devpost.com/diabackmentu1993,
Цитировать
 
 
0 #170 Pearline 13.10.2021 03:16
I go to see daily a few sites and websites to read articles or reviews, except this weblog presents quality based content.


my webpage ... jw (https://www.behance.Net/jodycarpenter: https://www.behance.net/jodycarpenter)
Цитировать
 
 
0 #169 Harry 13.10.2021 02:02
When some one searches for his required thing, thus he/she needs to be available that in detail, so
that thing is maintained over here.

Here is my web-site ... us (www.cplusplus.com: http://www.cplusplus.com/user/hampmountmato1973/)
Цитировать
 

Добавить комментарий


Наверх