Баг-фикс Недостаточная фильтрация входящих данных
- Баг-фиксы DLE и модулей
Проблема: Недостаточная фильтрация входящих данных.
Ошибка в версии: 7.5
Степень опасности: Низкая
Дистрибутив версии 7.5 обновлен.
Для исправления скачайте и скопируйте на свой сервер патч: http://dle-news.ru/files/dle75_path.zip
Автор: celsoft
Исправления в ручном режиме от kavadims
engine/modules/register.php
ищем (~264 строка)
$user_arr = explode( "||", base64_decode( rawurldecode( $_POST['id'] ) ) );
заменить на
$user_arr = explode( "||", base64_decode( @rawurldecode( $_POST['id'] ) ) );
найти (~366 строка)
$user_arr = explode( "||", base64_decode( rawurldecode( $_REQUEST['id'] ) ) );
заменяем на
$user_arr = explode( "||", base64_decode( @rawurldecode( $_REQUEST['id'] ) ) );
engine/modules/static.php
ищем (~21 строка)
$name = $db->safesql( $_GET['page'] );
заменяем на
$name = @$db->safesql( $_GET['page'] );
engine/print.php
найти (~123-126 строки)
if( isset( $_REQUEST['month'] ) ) $month = $db->safesql( strip_tags( str_replace( '/', '', $_GET['month'] ) ) ); else $month = '';
if( isset( $_REQUEST['day'] ) ) $day = $db->safesql( strip_tags( str_replace( '/', '', $_GET['day'] ) ) ); else $day = '';
if( isset( $_REQUEST['user'] ) ) $user = $db->safesql( strip_tags( str_replace( '/', '', urldecode( $_GET['user'] ) ) ) ); else $user = '';
if( isset( $_REQUEST['news_name'] ) ) $news_name = $db->safesql( strip_tags( str_replace( '/', '', $_GET['news_name'] ) ) ); else $news_name = '';
заменяем на
if( isset( $_REQUEST['month'] ) ) $month = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['month'] ) ) ); else $month = '';
if( isset( $_REQUEST['day'] ) ) $day = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['day'] ) ) ); else $day = '';
if( isset( $_REQUEST['user'] ) ) $user = @$db->safesql( strip_tags( str_replace( '/', '', urldecode( $_GET['user'] ) ) ) ); else $user = '';
if( isset( $_REQUEST['news_name'] ) ) $news_name = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['news_name'] ) ) ); else $news_name = '';
engine/rss.php
найти (~95-98 строки)
if( isset( $_REQUEST['month'] ) ) $month = $db->safesql( strip_tags( str_replace( '/', '', $_GET['month'] ) ) ); else $month = '';
if( isset( $_REQUEST['day'] ) ) $day = $db->safesql( strip_tags( str_replace( '/', '', $_GET['day'] ) ) ); else $day = '';
if( isset( $_REQUEST['user'] ) ) $user = $db->safesql( strip_tags( str_replace( '/', '', urldecode( $_GET['user'] ) ) ) ); else $user = '';
if( isset( $_REQUEST['news_name'] ) ) $news_name = $db->safesql( strip_tags( str_replace( '/', '', $_GET['news_name'] ) ) ); else $news_name = '';
заменить на
if( isset( $_REQUEST['month'] ) ) $month = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['month'] ) ) ); else $month = '';
if( isset( $_REQUEST['day'] ) ) $day = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['day'] ) ) ); else $day = '';
if( isset( $_REQUEST['user'] ) ) $user = @$db->safesql( strip_tags( str_replace( '/', '', urldecode( $_GET['user'] ) ) ) ); else $user = '';
if( isset( $_REQUEST['news_name'] ) ) $news_name = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['news_name'] ) ) ); else $news_name = '';
найти (через 2 строки, ~101 строка)
if( isset( $_REQUEST['category'] ) ) $category = $db->safesql( strip_tags( str_replace( '/', '', $_GET['category'] ) ) ); else $category = '';
заменить на
if( isset( $_REQUEST['category'] ) ) $category = @$db->safesql( strip_tags( str_replace( '/', '', $_GET['category'] ) ) ); else $category = '';
admin.php
найти (~92 строка)
$system_modules = array
добавит ПЕРЕД (в 90 строку вставьте)
if (is_array($mod)) die ( "Hacking attempt!" );
Всё!
Ключевые слова по теме Баг-фикс Недостаточная фильтрация входящих данных: Баг-фикс, Недостаточная фильтрация входящих данных
Муфта с конической резьбой ems-ancon.com |