Добро пожаловать, Гость!
Тема закрыта для обсуждения
Уязвимость всего Социала смотрите - Страница 2
Баги/обновления движка | Уязвимость всего Социала смотрите
Энмеркар :
8888 ббббббббббббббббббб
P.S. by Simptom
Я отредачил текст темы, дабы читабельно было!
Суть темы проста, есть бб тэг [size=][/size] и если указать size=100000, будет бардак на сайта.
Решение я написал в данной теме.
Уязвимость всего Социала смотрите
24 Июля 20188888 ббббббббббббббббббб
P.S. by Simptom
Я отредачил текст темы, дабы читабельно было!
Суть темы проста, есть бб тэг [size=][/size] и если указать size=100000, будет бардак на сайта.
Решение я написал в данной теме.
Комментарии:
SimptomFD 26 Июля 2018
kantry, Никто и не говорит, что мое решение единственное) Есть можешь предложить, предлагай, пользователи смогут выбирать что им по душе. В том и смысл поддержки.
В твоём варианте расброс размеров большой.
Я не любитель данных мероприятий, но да, можно строчно его впаять)
kantry, Никто и не говорит, что мое решение единственное) Есть можешь предложить, предлагай, пользователи смогут выбирать что им по душе. В том и смысл поддержки.
В твоём варианте расброс размеров большой.
Я не любитель данных мероприятий, но да, можно строчно его впаять)
kantry 26 Июля 2018
Энмеркар, Привет! Чего мне проверять то свои теории?.ржу. и при чем тут спейс?
Я специально написал простой регексп, что бы понятно было как такие вещи решаются. Вот еще понятнее, только ты уж сам "теорию" проверяй))
$bbcode['/[size=([5-9]|(?# от 5 до 9 или)[1-2][d]|(?# любая цифра или)3[0-2](?# не более 2-х))](.+)[/size]/isU'] = '<span style="font-size:$1px;">$2</span>';
Можешь просто скопировать к себе в бб-коды, и проверить.
Добавлено:
SimptomFD, колбек конечно хорошо, меня даже заинтересовало, но.. не профит))
scrot_2018-07-26_691x341 (56.57Kb)
Энмеркар, Привет! Чего мне проверять то свои теории?.ржу. и при чем тут спейс?
Я специально написал простой регексп, что бы понятно было как такие вещи решаются. Вот еще понятнее, только ты уж сам "теорию" проверяй))
$bbcode['/[size=([5-9]|(?# от 5 до 9 или)[1-2][d]|(?# любая цифра или)3[0-2](?# не более 2-х))](.+)[/size]/isU'] = '<span style="font-size:$1px;">$2</span>';
Можешь просто скопировать к себе в бб-коды, и проверить.
Добавлено:
SimptomFD, колбек конечно хорошо, меня даже заинтересовало, но.. не профит))
SimptomFD 25 Июля 2018
Вот вам решение данной проблемы:
Открываем файл /sys/fnc/bbcode.php и ищем строку:
<?
if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>';
?>
Удаляем ее.
Спускаем чуть ниже по коду и ищем код:
<?
if (count($bbcode))$msg= preg_replace(array_keys($bbcode), array_values($bbcode), $msg);
?>
После этого кода прописываем код:
<?
if ($conf['bb_size'])
{
$msg = preg_replace_callback('/[size=([0-9]+)](.+)[/size]/isU', 'bb_size', $msg);
}
?>
Внизу файла, после закрытия функции BBcode() пишем код:
<?
function bb_size($text)
{
if ($text[1] < 10 || $text[1] > 20)
{
$text[1] = 14;
}
return '<span style="font-size: '.$text[1].'px;">'.$text[2].'</span>';
}
?>
Где 10 -минимальный размер, 20 - максимальный размер, 14 - размер по умолчанию.
Само условие редактируем по своему усмотрению.
Профит!
Вот вам решение данной проблемы:
Открываем файл /sys/fnc/bbcode.php и ищем строку:
<?
if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>';
?>
Удаляем ее.
Спускаем чуть ниже по коду и ищем код:
<?
if (count($bbcode))$msg= preg_replace(array_keys($bbcode), array_values($bbcode), $msg);
?>
После этого кода прописываем код:
<?
if ($conf['bb_size'])
{
$msg = preg_replace_callback('/[size=([0-9]+)](.+)[/size]/isU', 'bb_size', $msg);
}
?>
Внизу файла, после закрытия функции BBcode() пишем код:
<?
function bb_size($text)
{
if ($text[1] < 10 || $text[1] > 20)
{
$text[1] = 14;
}
return '<span style="font-size: '.$text[1].'px;">'.$text[2].'</span>';
}
?>
Где 10 -минимальный размер, 20 - максимальный размер, 14 - размер по умолчанию.
Само условие редактируем по своему усмотрению.
Профит!
Энмеркар 25 Июля 2018
Автор темы
______________________
꧁༺Энмеркар༻꧂
Автор темы
kantry (25 Июля 2018):
Энмеркар, не надо там ничего убирать, квантификатор замени, и все.
/[size=([0-9]{1,2})](.+)[/size]/
kantry, Здорова,, а смысл какой!? проверь сам свою теорию! Я за неё не чего хорошего и плохого скажу,, моё дело было это показать что баг есть во всех движках и релизах это ещё с 64 движка идёт,, на спейсе уже давно от этого тега отказались и сайтом там всё нормик и без негоЭнмеркар, не надо там ничего убирать, квантификатор замени, и все.
/[size=([0-9]{1,2})](.+)[/size]/
______________________
꧁༺Энмеркар༻꧂
kantry 25 Июля 2018
/[size=([0-9]{1,2})](.+)[/size]/
Энмеркар (24 Июля 2018):
Parviz, В bbcode.php а именно в этом коде
// if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>'; решение простое убрать его к чёрту я его убрал и всё стало нормально
Энмеркар, не надо там ничего убирать, квантификатор замени, и все.Parviz, В bbcode.php а именно в этом коде
// if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>'; решение простое убрать его к чёрту я его убрал и всё стало нормально
/[size=([0-9]{1,2})](.+)[/size]/
SimptomFD 25 Июля 2018
Я чёт тоже не допер в каком месте это уязвимость.
Размер шрифта обычный.
А во избежание подобных случаев можно просто прописать условия на проверку с минимальным и максимальным размером.
Я чёт тоже не допер в каком месте это уязвимость.
Размер шрифта обычный.
А во избежание подобных случаев можно просто прописать условия на проверку с минимальным и максимальным размером.
Энмеркар 24 Июля 2018
Автор темы
Parviz, В bbcode.php а именно в этом коде
// if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>'; решение простое убрать его к чёрту я его убрал и всё стало нормально
______________________
꧁༺Энмеркар༻꧂
Автор темы
Parviz, В bbcode.php а именно в этом коде
// if ($set['bb_size'])$bbcode['/[size=([0-9]+)](.+)[/size]/isU']='<span style="font-size:$1px;">$2</span>'; решение простое убрать его к чёрту я его убрал и всё стало нормально
______________________
꧁༺Энмеркар༻꧂