Перейти к содержанию
Официальный форум поддержки Simpla

Серьёзная уязвимость


Рекомендуемые сообщения

Нашли серьёзную уязвимость. Через дефолтный загрузчик файлов в визульном редакторе легко загружаются php файлы и так же легко выполняются. Через него легко залить шелл и получить доступ ко всему серверу не говоря уже про сам сайт. В таком случае разграничения прав не имеют значения если у пользователя есть доступ визуальному редактору в любом разделе.

Особенно эта уязвимость касается тех кто предоставляет демо админки с какой-то доработкой. Через заливку шелла можно легко выкачать весь сайт и сделать дамп базы данных. К тому же можно получить доступ к другим сайтам на сервере.

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

Собственно пруф. За 1 минуту залил шелл и получил доступ к сайту демки Simpla.

2018_01_22_133808.jpg

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

Да создатели плагина даже и не скрывали такое дело — скрин из доки плагина:

 

 

Да это ладно. Загрузить то можно. Скрипт не должен выполняться из папки /files/uploads

Почему-то .htaccess в паке files не запрещает выполнение. В старых версиях эта уязвимость вроде не работает.

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

Если заменить содержимое файла .htaccess в паке files

 

на 

php_flag engine 0
AddType "text/html" .php .cgi .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp

То всё ок.

Файл выполняется как html

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

Если заменить содержимое файла .htaccess в паке files

 

на 

php_flag engine 0
AddType "text/html" .php .cgi .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp

То всё ок.

Файл выполняется как html

 

я также прочитал ту же статью на Хабре и так уже делал, но у меня срабатывает все равно

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

я также прочитал ту же статью на Хабре и так уже делал, но у меня срабатывает все равно

 

На демке закрылась уязвимость. Видимо дело в разных серверах.  

Ссылка на сообщение
Поделиться на другие сайты

На демке закрылась уязвимость. Видимо дело в разных серверах.  

 

да, на недели вообще на Nginx перенесу,позже убью эту проблемку...

Ссылка на сообщение
Поделиться на другие сайты

да, на недели вообще на Nginx перенесу,позже убью эту проблемку...

 

Лучше всего сразу обновить TinyMCE и сменить загрузчик на responsive filemanager.

Ссылка на сообщение
Поделиться на другие сайты

 

Лучше всего сразу обновить TinyMCE и сменить загрузчик на responsive filemanager.

 

думаете достаточно? Дайте доступ к админке и я вам и там загружу 

Ссылка на сообщение
Поделиться на другие сайты

думаете достаточно? Дайте доступ к админке и я вам и там загружу

По крайней мере там не разгружаются php.

 

Есть какое-то лучше решение?

Можно то загрузчик вообще отключить.

Ну это не поможет так как нужно защитить всю директорию files. Так как залить можно и через цифровые товары.

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

На демке закрылась уязвимость. Видимо дело в разных серверах.  

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

 

/simpla/design/js/tiny_mce/plugins/smexplorer/php/action.php

найти action = upload и добавить проверку.

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

Изменено пользователем a13x
Ссылка на сообщение
Поделиться на другие сайты

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

 

/simpla/design/js/tiny_mce/plugins/smexplorer/php/action.php

найти action = upload и добавить проверку.

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

 

Без доступа к админке этот файл под защитой http авторизации.

А вот если авторизовался то почти полный карт-бланш

Изменено пользователем yr4ik
Ссылка на сообщение
Поделиться на другие сайты

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

 

/simpla/design/js/tiny_mce/plugins/smexplorer/php/action.php

найти action = upload и добавить проверку.

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

 

Дело в том что в папке files есть .htaccess с содержимым 

RemoveType .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml

Который должен запрещать выполнение перечисленных файлов из этой директории. Но видимо это работает не на всех серверах.

Файл можно залить не только через загрузчик. 

 

У меня получилось запретить доступ в такой способ:

<FilesMatch ".(htaccess|ini|phps|fla|psd|log|sh|php)$">
 Order Allow,Deny
 Deny from all
</FilesMatch>

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

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

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

 

/simpla/design/js/tiny_mce/plugins/smexplorer/php/action.php

найти action = upload и добавить проверку.

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

 

Методов как залить файл без загрузчика тоже хватает. К примеру добавление цифрового товара. Сначала заливаем пустой .htaccess он заменяет существующий, потом заливаем шелл, и всё можно выполнять из папки files/downloads если .htaccess в папке files не работает.

Админку тоже можно взломать. В Simpla это не так сложно. Проблема будет в том что через шелл можно получить доступ к всему серверу и к другим сайтам если он не один.

Изменено пользователем STM
Ссылка на сообщение
Поделиться на другие сайты

Да это ладно. Загрузить то можно. Скрипт не должен выполняться из папки /files/uploads

Почему-то .htaccess в паке files не запрещает выполнение. В старых версиях эта уязвимость вроде не работает.

Загрузить можно и не только в /files/uploads/

Можно хоть в корень сайта

Ссылка на сообщение
Поделиться на другие сайты

Загрузить можно и не только в /files/uploads/

Можно хоть в корень сайта

Кокретней можно? Это как бы далеко не шутки. Для интернет магазина который связан с онлайн оплатами такие дырки недопустимы.
Ссылка на сообщение
Поделиться на другие сайты

Без доступа к админке этот файл под защитой http авторизации.

А вот если авторизовался то почти полный карт-бланш

Кто вам это сказал? Покажите мне в файле строчку где показано что там авторизация сработает? Либо прописана какая то переменная от авторизации и условие на её проверку.

Ссылка на сообщение
Поделиться на другие сайты

Кто вам это сказал? Покажите мне в файле строчку где показано что там авторизация сработает? Либо прописана какая то переменная от авторизации и условие на её проверку.

 

вы серьезно? весь каталог /simpla/  под авторизацией

Ссылка на сообщение
Поделиться на другие сайты

Кто вам это сказал? Покажите мне в файле строчку где показано что там авторизация сработает? Либо прописана какая то переменная от авторизации и условие на её проверку.

проверьте подхватывается ли .htaccess с папки симпла. Иначе у вас полигон для всех проверок уязвимостей

Изменено пользователем yr4ik
Ссылка на сообщение
Поделиться на другие сайты

проверьте подхватывается ли .htaccess с папки симпла. Иначе у вас полигон для всех проверок уязвимостей

Нет, не подхватывается. Я на нгиксе сижу  :rolleyes:  + авторизацию переписал давно на сессионную + не использую дефолтные визивиг редакторы

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...