The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Уязвимости в MyBB, позволяющие загрузить PHP-код на сервер

12.06.2019 21:46

В движке для создания web-форумов MyBB выявлено несколько уязвимостей, позволяющих организовать многоступенчатую атаку для выполнения произвольного PHP-кода на сервере. Проблемы устранены в выпуске MyBB 1.8.21.

Первая уязвимость присутствует в модулях публикации и отправки приватных сообщений, и позволяет осуществить подстановку JavaScript-кода (XSS), который будет выполнен в браузере при просмотре публикации или полученного сообщения. Подстановка JavaScript возможна из-за некорректного преобразования в HTML вложенных BBCode. В частности, тег "[video]" преобразуются в iframe с передачей указанных в BBCode атрибутов. При этом "[video]" обрабатывается отдельно от остальных BBCode, что позволяет в имени видео использовать ещё один BBCode "[url]", который будет раскрыт после формирования iframe и из-за перекрытия двойных кавычек может подставить атрибут onLoad для подключения своего обработчика события.

Например, можно указать ссылку на видео в форме


[video=youtube]youtube.com/xyz[url]http://onload=evilCode()[/url][/video]

и она при обработке BBCode "[video]" будет преобразована в тег


<iframe src="youtube.com/xyz[url]http://onload=evilCode()[/url]"></iframe>

, а после обработки остальных BBCode в


<iframe src="youtube.com/xyz<a href="http://onload=evilCode()">.."></iframe>

Соответственно двойная кавычка в 'href="' закрывает атрибут "src" и onLoad обрабатывается в контексте iframe.

Вторая уязвимость позволяет при наличии прав администратора форума сохранить в файловую систему web-сервера PHP-скрипт и организовать его выполнение. Проблема присутствует в коде управления стилями для активной темы оформления, который позволяет генерировать новые CSS-файлы. Подобные файлы сохраняются с добавлением расширения ".css", но размер поля в БД с именем файла ограничен 30 символами. Соответственно можно назвать файл "26символов.php.css". При записи в БД будут отрезаны лишние символы и в конечном счёте сохранится имя "26символов.php". Далее через панель администратора форума можно сгенерировать новый стиль и файл будет записан в каталог "cache" с расширением php.

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

  1. Главная ссылка к новости (https://blog.ripstech.com/2019...)
  2. OpenNews: В поставке открытого форума MyBB обнаружен вредоносный код
  3. OpenNews: Форумный движок MyBB переходит на GNU GPL v3
  4. OpenNews: Инфраструктура свободного проекта phpBB подверглась взлому
  5. OpenNews: Уязвимость в движке для создания форумов phpBB
  6. OpenNews: Уязвимости в PHP и PHPMailer
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50859-mybb
Ключевые слова: mybb
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (8) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 08:42, 13/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Сдаётся мне, что в phpBB и vBulletin есть та же проблема с вложенными  bb-кодами, так как они одну и ту же реализацию кода video между собой портировали.
    https://www.phpbb.com/community/viewtopic.php?t=2156491
     
  • 1.2, Аноним (-), 09:30, 13/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Надо бы писать на plain text, html в notepad.eye... Ахх, нет, там же, по слухам, remote уязвимость... Короче! Переходим на telnet + BBS-ki! Fido forever!
     
     
  • 2.3, 1 (??), 10:18, 13/06/2019 [^] [^^] [^^^] [ответить]  
  • +/
    FIDO теперь гипертекстовый и там тоже небось тэг video присутствует
     

  • 1.4, Аноним (4), 10:48, 13/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    вот жопокупие программеры.
    какой-то bb-парсер даже написать не могут, как вообще это поделие получило такую популярность
     
  • 1.5, Аноним (5), 11:04, 13/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    это какой-то флешбэк из 2001
     
  • 1.6, Аноним (6), 08:36, 14/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это ж как надо с головой не дружить, чтобы на сервере не ограничить пути для исполнения php?
     
     
  • 2.7, Аноним (6), 08:37, 14/06/2019 [^] [^^] [^^^] [ответить]  
  • +/
    (вопрос, конечно, к эксплуатирующим софт, кого мог бы коснуться второй баг)
     

  • 1.8, Аноним (8), 03:50, 29/06/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    пэхапэ тут, конечно же, не при чем!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру