Forum. MyNuke.ru
Forum. MyNuke.ruСообщения за сегодняПерсональные сообщения

Навигация  
Вернуться   Forum. MyNuke.ru > PHP-NUKE > Безопасность
Ник
Пароль
Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Soniks вне форума      Старый Обновляем форум phpBB 2.0.13 до 2.0.14 #1  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
16.04.2005, 14:47

Обновляем форум phpBB версии 2.0.13 до версии phpBB 2.0.14

Откройте modules/Forums/admin/admin_styles.php
Найдите:
PHP код:
 include($phpbb_root_path"templates/" $install_to "/theme_info.cfg"); 

Замените на:
PHP код:
 include($phpbb_root_path"templates/" basename($install_to) . "/theme_info.cfg"); 

Найдите:
PHP код:
 $fp = @fopen($phpbb_root_path 'templates/' $template_name '/theme_info.cfg''w'); 

Замените на:
PHP код:
 $fp = @fopen($phpbb_root_path 'templates/' basename($template_name) . '/theme_info.cfg''w'); 

Откройте modules/Forums/admin/page_header_admin.php
Найдите:
PHP код:
 $useragent = (isset($_SERVER["HTTP_USER_AGENT"]) ) ? $_SERVER["HTTP_USER_AGENT"] : $HTTP_USER_AGENT

Замените на:
PHP код:
 $useragent = (isset($HTTP_SERVER_VARS['HTTP_USER_AGENT'])) ? $HTTP_SERVER_VARS['HTTP_USER_AGENT'] : getenv('HTTP_USER_AGENT'); 

Откройте modules/Forums/admin/page_footer_admin.php
Найдите:
PHP код:
 'PHPBB_VERSION' => '2' $board_config['version'], 

Замените на:
PHP код:
 'PHPBB_VERSION' => ($userdata['user_level'] == ADMIN && $userdata['user_id'] != ANONYMOUS) ? '2' $board_config['version'] : ''

Откройте db/postgres7.php
Найдите:
PHP код:
 $query preg_replace("/LIMIT ([0-9]+),([ 0-9]+)/""LIMIT \\2 OFFSET \\1"$query); 

После добавьте:
PHP код:
 $query preg_replace('#(.*WHERE.*)(username|user_email|ban  _emai l) = \'(.*)\'#ise'"\"\\1LOWER(\\2) = '\" . strtolower('\\3') . \"'\""$query); 

Откройте includes/page_header.php
Найдите:
PHP код:
 $useragent = (isset($_SERVER["HTTP_USER_AGENT"]) ) ? $_SERVER["HTTP_USER_AGENT"] : $HTTP_USER_AGENT

Замените на:
PHP код:
 $useragent = (isset($HTTP_SERVER_VARS['HTTP_USER_AGENT'])) ? $HTTP_SERVER_VARS['HTTP_USER_AGENT'] : getenv('HTTP_USER_AGENT'); 

Найдите:
PHP код:
 if (!empty($_SERVER['SERVER_SOFTWARE']) && strstr($_SERVER['SERVER_SOFTWARE'], 'Apache/2')) 

Замените на:
PHP код:
 if (!empty($HTTP_SERVER_VARS['SERVER_SOFTWARE']) && strstr($HTTP_SERVER_VARS['SERVER_SOFTWARE'], 'Apache/2')) 

Откройте includes/sessions.php
Найдите (58 строка):
PHP код:
 $session_id ''


После добавьте:
PHP код:
 $page_id = (int) $page_id

Найдите:
PHP код:
 // No match; don't login, set as anonymous user 
$login 0
$enable_autologin 0
$user_id $userdata['user_id'] = ANONYMOUS

После добавьте:
PHP код:
 $sql 'SELECT * FROM ' USERS_TABLE ' WHERE user_id = ' ANONYMOUS
$result $db->sql_query($sql); 
$userdata $db->sql_fetchrow($result); 
$db->sql_freeresult($result); 

Найдите:
PHP код:
 // Autologin is not set. Don't login, set as anonymous user 
$login 0
$enable_autologin 0
$user_id $userdata['user_id'] = ANONYMOUS

После добавьте:
PHP код:
 $sql 'SELECT * FROM ' USERS_TABLE ' WHERE user_id = ' ANONYMOUS
$result $db->sql_query($sql); 
$userdata $db->sql_fetchrow($result); 
$db->sql_freeresult($result); 

Найдите:
PHP код:
 // 
// Does a session exist? 
// 

До этого добавьте:
PHP код:
 $thispage_id = (int) $thispage_id

Откройте modules/Forums/modcp.php
Найдите:
PHP код:
 message_die(GENERAL_MESSAGE'Topic_post_not_exist'); 

$topic_row $db->sql_fetchrow($result); 

После добавьте:
PHP код:
 if (!$topic_row

     
message_die(GENERAL_MESSAGE'Topic_post_not_exist'); 


Найдите:
PHP код:
 message_die(GENERAL_MESSAGE'Forum_not_exist'); 

$topic_row $db->sql_fetchrow($result); 

После добавьте:
PHP код:
 if (!$topic_row

     
message_die(GENERAL_MESSAGE'Forum_not_exist'); 


Откройте modules/Private_Messages/index.php
Найдите:
PHP код:
 if ( !$board_config['allow_html'] ) 
    { 
     if ( 
$user_sig != '' && $privmsg['privmsgs_enable_sig'] && $userdata['user_allowhtml'] ) 

Замените на:
PHP код:
 if ( !$board_config['allow_html'] || !$userdata['user_allowhtml']) 

     if ( 
$user_sig != ''

Найдите:
PHP код:
 if ( !$html_on 
     { 
         if ( 
$user_sig != '' || !$userdata['user_allowhtml'] ) 

Замените на:
PHP код:
 if ( !$html_on || !$board_config['allow_html'] || !$userdata['user_allowhtml'] ) 
     { 
         if ( 
$user_sig != '' 

Откройте modules/Forums/search.php
Найдите:
PHP код:
 $search_author str_replace('*''%'trim($search_author)); 

До этого добавьте:
PHP код:
 if (preg_match('#^[\*%]+$#'trim($search_author)) || preg_match('#^[^\*]{1,2}$#'str_replace(array('*''%'), ''trim($search_author)))) 

$search_author ''


Найдите:
PHP код:
 for($i 0$i count($split_search); $i++) 
         { 

После добавьте:
PHP код:
 if (preg_match('#^[\*%]+$#'trim($split_search[$i])) || preg_match('#^[^\*]{1,2}$#'str_replace(array('*''%'), ''trim($split_search[$i])))) 
            { 
             
$split_search[$i] = ''
             continue; 
            } 

Найдите:
PHP код:
 // Author name search 
// 
if ( $search_author != '' 


После этого добавьте:
PHP код:
 if (preg_match('#^[\*%]+$#'trim($search_author)) || preg_match('#^[^\*]{1,2}$#'str_replace(array('*''%'), ''trim($search_author)))) 
         { 
            
$search_author ''
         } 

Откройте modules/Forums/viewtopic.php
Найдите:
PHP код:
 if ( !$board_config['allow_html'] ) 

     if ( 
$user_sig != '' && $userdata['user_allowhtml'] ) 

Замените на:
PHP код:
 if ( !$board_config['allow_html'] || !$userdata['user_allowhtml']) 

     if ( 
$user_sig != '' 

Найдите:
PHP код:
 $user_sig str_replace('\"''"'substr(preg_replace('#(\>(((?>([^ ><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 
      } 

      
$message str_replace('\"''"'substr(preg_replace('#(\>(((?>([^ ><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 

Замените на:
PHP код:
 $user_sig str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 
     } 
 
     
$message str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 

Выполните SQL запрос:
Код:
UPDATE nuke_bbconfig SET config_value='.0.14' where config_name='version'

заменив nuke_ на свой префикс!

Все обновление Выполнено!

Последний раз редактировалось Soniks, 16.04.2005 в 18:26.
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".


BriaN вне форума      Старый #2  
Аватара для BriaN
BriaN
Великий MODер
Регистрация: 28.02.2005
Сообщения: 88


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для BriaN Найти все сообщения от BriaN Добавить BriaN в список друзей  
16.04.2005, 18:04

Цитата Откройте includes/sessions.php

Найдите:

PHP код:
 $session_id ''



После добавьте:

PHP код:
 $page_id = (int) $page_id



$session_id = ''; эту строку надо найти и добавить после неё $page_id = (int) $page_id; где то на 58 строке так как приблизительно на 272 строке есть ещё одна переменная $session_id = ''; там не надо добовлять $page_id = (int) $page_id;.


Цитата Найдите:

PHP код:
 $user_sig str_replace('\"''"'substr(preg_replace('#(\>(((?>([^ ><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 



Замените на:

PHP код:
 $user_sig str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 
     } 

     
$message str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 



Тут небольшая ошибка соника надо заменить не только строку:

PHP код:
 $user_sig str_replace('\"''"'substr(preg_replace('#(\>(((?>([^ ><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 


а и строку

PHP код:
 $message str_replace('\"''"'substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 


так что правельно будет заменить вот так:

Найдите:

PHP код:
 $user_sig str_replace('\"''"'substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1));
     }

     
$message str_replace('\"''"'substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se'"preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 


Замените на:

PHP код:
 $user_sig str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $user_sig '<'), 1, -1)); 
     } 

     
$message str_replace('\"''"'substr(@preg_replace('#(\>(((?>([ ^><]+|(?R)))*)\<))#se'"@preg_replace(\$orig_word, \$replacement_word, '\\0')"'>' $message '<'), 1, -1)); 



Всё остальное как надо

Последний раз редактировалось BriaN, 16.04.2005 в 18:13.
 
Не задавай глупых вопросов, если сам можешь на них ответить. [url]www.GTA.ru[/url] - лучший сайт по GTA в Россие!


Soniks вне форума      Старый #3  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
16.04.2005, 18:27

BriaN спасибо, подправил!
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".


Ответ


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновляем форум phpBB 2.0.16 до 2.0.17 Soniks Безопасность 4 24.07.2005 18:50
Обновляем форум phpBB 2.0.15 до 2.0.16 Soniks Безопасность 0 28.06.2005 13:03
Обновляем форум phpBB 2.0.11 до 2.0.12 Soniks Безопасность 38 23.06.2005 23:18
Обновляем форум phpBB 2.0.14 до 2.0.15 BriaN Безопасность 2 22.05.2005 23:17
Обновляем форум phpBB 2.0.12 до 2.0.13 Soniks Безопасность 0 28.02.2005 12:44


Часовой пояс GMT +4, время: 21:58.


На Верх
Рейтинг@Mail.ru