Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
netadmin.ws
Панель управления Регистрция свободна! Календарь Список пользователей Часто задаваемые вопросы Поиск по форуму Архив скриптов Главная   
Форум сетевых администраторов
Форум сетевых администраторов Форум сетевых администраторов » Веб Форумы » Другие » Для всех, у кого phpbb v.2.0.5 (ВАЖНО)
Предыдущая тема     Следующая тема
Автор
Тема    Новая тема     Ответить на эту тему
w00fer
LOL
Средний рейтинг: 3.67 | Оценок: 18
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: May 2002
Место проживания: Ленинград
Публикаций: 448
Статус: w00fer в оф-лайне
Exclamation Для всех, у кого phpbb v.2.0.5 (ВАЖНО) [сообщение #47650]

Значится так....
в файле viewtopic.php ищем код:


code:

if ( isset($HTTP_GET_VARS[POST_TOPIC_URL]) ) 
{ 
      $topic_id = intval($HTTP_GET_VARS[POST_TOPIC_URL]); 
} 
else if ( isset($HTTP_GET_VARS['topic']) ) 
{ 
      $topic_id = intval($HTTP_GET_VARS['topic']); 
} 



и перед этим кодом вставляем:


code:
$topic_id = $post_id = false; 



далее... в файле в этом же файле ищем:


code:
$join_sql_table = ( !isset($post_id) ) ? '' : ", " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2 "; 
$join_sql = ( !isset($post_id) ) ? "t.topic_id = $topic_id" : "p.post_id = $post_id AND t.topic_id = p.topic_id AND p2.topic_id = p.topic_id AND p2.post_id <= $post_id"; 
$count_sql = ( !isset($post_id) ) ? '' : ", COUNT(p2.post_id) AS prev_posts"; 

$order_sql = ( !isset($post_id) ) ? '' : "GROUP BY p.post_id, t.topic_id, t.topic_title, t.topic_status, t.topic_replies, t.topic_time, t.topic_type, t.topic_vote, t.topic_last_post_id, f.forum_name, f.forum_status, f.forum_id, f.auth_view, f.auth_read, f.auth_post, f.auth_reply, f.auth_edit, f.auth_delete, f.auth_sticky, f.auth_announce, f.auth_pollcreate, f.auth_vote, f.auth_attachments ORDER BY p.post_id ASC"; 



и вместо него вставляем:


code:
$join_sql_table = ( empty($post_id) ) ? '' : ", " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2 "; 
$join_sql = ( empty($post_id) ) ? "t.topic_id = $topic_id" : "p.post_id = $post_id AND t.topic_id = p.topic_id AND p2.topic_id = p.topic_id AND p2.post_id <= $post_id"; 
$count_sql = ( empty($post_id) ) ? '' : ", COUNT(p2.post_id) AS prev_posts"; 

$order_sql = ( empty($post_id) ) ? '' : "GROUP BY p.post_id, t.topic_id, t.topic_title, t.topic_status, t.topic_replies, t.topic_time, t.topic_type, t.topic_vote, t.topic_last_post_id, f.forum_name, f.forum_status, f.forum_id, f.auth_view, f.auth_read, f.auth_post, f.auth_reply, f.auth_edit, f.auth_delete, f.auth_sticky, f.auth_announce, f.auth_pollcreate, f.auth_vote, f.auth_attachments ORDER BY p.post_id ASC"; 



тем самым мы избавляемся от возможности SQL-инъекции
благодарю за внимание!

__________________
Чему **censored**, того не миновать

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 05-07-2003 10:32
Нажмите сюда для просмотра профайла w00fer Отправить Персональное сообщение w00fer Посетить домашнию страничку w00fer! Найти сообщения от w00fer Добавить w00fer в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Jovani
Участник
Средний рейтинг: 4.5 | Оценок: 8
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Dec 2001
Место проживания: дома
Публикаций: 239
Статус: Jovani в оф-лайне
[сообщение #53690]

Вот еще исправление некоторых уязвимостей найденых при обработке BB-кодов. Касается версий 2.0.4, 2.0.5 и 2.0.6.

Открыть includes/bbcode.php.

Найти:


code:

$bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']); 
   $bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\5', $bbcode_tpl['url4']);



Заменить:


code:
$bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']); 
   $bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\3', $bbcode_tpl['url4']);





Найти:


code:
// matches a xxxx://www.phpbb.com code.. 
   $patterns[] = "#\[url\]([\w]+?://.*?[^ \"\n\r\t<]*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url1']; 

   // www.phpbb.com code.. (no xxxx:// prefix). 
   $patterns[] = "#\[url\]((www|ftp)\.([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^ \"\n\r\t<]*)?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url2']; 

   // phpBB code.. 
   $patterns[] = "#\+?://.*?[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url3']; 

   // [url=www.phpbb.com]phpBB code.. (no xxxx:// prefix). 
   $patterns[] = "#\+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^ \"\n\r\t<]*)?)\](.*?)\[/url\]#is";
   $replacements[] = $bbcode_tpl['url4'];




Заменить:



code:
// matches a [url]xxxx://www.phpbb.com code.. 
   $patterns[] = "#\[url\]([\w]+?://[^ \"\n\r\t<]*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url1']; 

   // www.phpbb.com code.. (no xxxx:// prefix). 
   $patterns[] = "#\[url\]((www|ftp)\.[^ \"\n\r\t<]*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url2']; 

   // phpBB code.. 
   $patterns[] = "#\+?://[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url3']; 

   // [url=www.phpbb.com]phpBB code.. (no xxxx:// prefix). 
   $patterns[] = "#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is"; 
   $replacements[] = $bbcode_tpl['url4'];






Найти:


code:
// matches an "xxxx://yyyy" URL at the start of a line, or after a space. 
   // xxxx can only be alpha characters. 
   // yyyy is anything up to the first space, newline, comma, double quote or < 
   $ret = preg_replace("#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret); 

   // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing 
   // Must contain at least 2 dots. xxxx contains either alphanum, or "-" 
   // zzzz is optional.. will contain everything up to the first space, newline, 
   // comma, double quote or <. 
   $ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);





Заменить:


code:
// matches an "xxxx://yyyy" URL at the start of a line, or after a space. 
   // xxxx can only be alpha characters. 
   // yyyy is anything up to the first space, newline, comma, double quote or < 
   $ret = preg_replace("#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret); 

   // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing 
   // Must contain at least 2 dots. xxxx contains either alphanum, or "-" 
   // zzzz is optional.. will contain everything up to the first space, newline, 
   // comma, double quote or <. 
   $ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 13-10-2003 22:23
Нажмите сюда для просмотра профайла Jovani Отправить Персональное сообщение Jovani Посетить домашнию страничку Jovani! Найти сообщения от Jovani Добавить Jovani в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Boxa
Распиздяй
Средний рейтинг: 2.67 | Оценок: 24
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Jul 2003
Место проживания:
Публикаций: 250
Статус: Boxa в оф-лайне
[сообщение #53692]

Мда, дыр много. =)

__________________
**censored** || www.xxs.ru

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 13-10-2003 22:43
Нажмите сюда для просмотра профайла Boxa Отправить Персональное сообщение Boxa Посетить домашнию страничку Boxa! Найти сообщения от Boxa Добавить Boxa в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Jovani
Участник
Средний рейтинг: 4.5 | Оценок: 8
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Dec 2001
Место проживания: дома
Публикаций: 239
Статус: Jovani в оф-лайне
[сообщение #53697]

Boxa
В версии 2.06 дыр как раз мало, во всяком случае известных опасных уже нету.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 14-10-2003 06:51
Нажмите сюда для просмотра профайла Jovani Отправить Персональное сообщение Jovani Посетить домашнию страничку Jovani! Найти сообщения от Jovani Добавить Jovani в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя



Формат времени GMT. Текущее время 11:33.
Новая тема   Ответить на эту тему [ Версия для печати Печать | Отправить эту страницу другу/знакомому! Отправить | Получать уведомления об обновлении этой темы Подписка ] Предыдущая тема     Следующая тема
Навигация по форуму:
Оценка темы:

Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения.
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
 

Page generated in 0.01058888 seconds (53.97% PHP - 46.03% MySQL) with 26 queries.


  Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
©NetAdmin.ws, 2001-2026.
Powered by: vBulletin
Copyright ©2000, 2001, Jelsoft Enterprises Limited.