Команда vBulletin пересмотрела некоторые моменты по вопросу безопасности и внесла коррективы с целью повышения безопасности движка vB
В админке появилась новая опция:
Redirect Domain Whitelist
----- Как обновиться с 3.8.7 PL1 на 3.8.7 PL2 ?
Отключите форум
Сделайте резервную копию БД и файлов форума
Зайдите в members area и скачайте патч согласно своей версии форума. Внимание! Если вы используете Mobile API на движке версии 3.8.7, то вы должны скачать патч 3.8.7 PL2 MAPI
Залейте файлы, которые находятся в папке /install/ из дистрибутива 3.8.7 PL1 (почему их нет в папке с патчем я не знаю)
(если вы качаете патч из этого сообщения, то пропустите этот пункт)
Распакуйте архив с патчем и залейте содержимое архива на FTP (файлы нужно перезаписать)
Вызовите скрипт обновления в браузере /install/upgrade.php и произведите обновление форума
Удалите папку install из FTP форума
Включите форум
---
Не хотите дожидаться пока кто-то занулит патч для vB 3.8.7? Берём нижеперечисленные файлы из дистрибутива 3.8.7 PL1 и вносим изменения ручками.
Самые "ленивые" могут скачать патч и пропустить нижеприведённую информацию (не относится к обладателям 3.8.7 PL1 MAPI). Скачать vBulletin v3.8.7 PL2 Patch Only [TAIFUN]
<helptopic disp="1" act="options" opt="redirect_whitelist">
<title date="1308093536" username="vBulletin Solutions" version="3.8.7 Patch Level 2">Redirect Domain Whitelist</title>
<text date="1308335116" username="vBulletin Solutions" version="3.8.7 Patch Level 2">For advanced domain configuration only! These are domain names that point to your forum in addition to the main Forum URL configured in vBulletin settings. These domains will be considered safe and allowed as redirection targets by the vBulletin software. This option should remain blank in most installations.</text>
</helptopic>
if ($vbulletin->url)
{
$foundurl = false;
if ($urlinfo = @parse_url($vbulletin->url))
{
if (!$urlinfo['scheme'])
{ // url is made full in exec_header_redirect which stops a url from being redirected to, say "www.php.net" (no http://)
$foundurl = true;
}
else
{
$whitelist = array();
if ($vbulletin->options['redirect_whitelist'])
{
$whitelist = explode("\n", trim($vbulletin->options['redirect_whitelist']));
}
// Add $bburl to the whitelist
$bburlinfo = @parse_url($vbulletin->options['bburl']);
$bburl = "{$bburlinfo['scheme']}://{$bburlinfo['host']}";
array_unshift($whitelist, $bburl);
// if the "realurl" of this request does not equal $bburl, add it as well..
$realurl = VB_URL_SCHEME . '://' . VB_URL_HOST;
if (strtolower($bburl) != strtolower($realurl))
{
array_unshift($whitelist, $realurl);
}
$vburl = strtolower($vbulletin->url);
foreach ($whitelist AS $url)
{
$url = trim($url);
if ($vburl == strtolower($url) OR strpos($vburl, strtolower($url) . '/', 0) === 0)
{
$foundurl = true;
break;
}
}
}
}
if (!$foundurl)
{
eval(standard_error(fetch_error('invalid_redirect_url_x', $vbulletin->url)));
}
}
В первом посте явно пару важных файлов не хватает private.php и vbulletin-style.xml, и не пойму почему их в отдельном патче нету даже на офе, ведь если сравнивать целиком архивы в них есть изменения...
xorex добавил 12.07.2011 в 05:47
Цитата:
Сообщение от TAIFUN
Хм, а ты с файлами какой версии сравнивал?
Сравнивал целиком архивы 3.8.7 pl 1 и 3.8.7 pl 2
xorex добавил 12.07.2011 в 05:54
видимо я по ошибке удалил архив pl1 и сравнивал с 387beta1, проверь пожалуйста если остался старый архив. Я еще подумал дежавю, вроде секуртокен к ссылкам о прочтении уже добавляли до этого а тут снова.
Последний раз редактировалось xorex; 12.07.2011 в 05:54..
Причина: Добавлено сообщение
Терь ясно, последний нул от Макса был как раз 387бета1 и все следующие апдейты я делал вручную без замены всех файлов, соответственно и сравнивал с ним.