Перейти к контенту
  • 0

показ ошибок SQL под 2.x


Вопрос

Здравствуйте.

Помнится была статья про запрет вывода ошибок базы для уменьшения вероятности взлома, т.к обычному юзеру эта информация совсем ни к чему.

Так вот, вроде статья там была под 1.3x, а под 2.х как?

Кстати, а как вызвать ошибку базы?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Показ ошибок SQL запросов - помощь взломщику?

 

сама статья

 

как вызвать ? просто нарушить настройки в conf_global введя неправильный пароль для базы или имя пользователя, или что нить другое касающееся настроек sql

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Показ ошибок SQL запросов - помощь взломщику?

 

сама статья

 

как вызвать ? просто нарушить настройки в conf_global введя неправильный пароль для базы или имя пользователя, или что нить другое касающееся настроек sql

 

Спасибо.

Статья то есть, но написана под 1.3

Ссылка на комментарий
Поделиться на других сайтах

  • 0

В смысле, а в чем проблема для 2.0 повторить то же самое? Вывод ошибок здесь организован в ips_kernel/class_db_mysql.php (здесь генерируется вся болтливая форма об ошибке базе данных), в admin.php и в index.php (в двух последних генерируются IPB WARNINGS).

 

Hаходим места, где ошибки выкидываются на форму (в кернеле ищем по слову «извинения», как там по-английски написано в нижней части формы? в индексе и в админке — по «IPB WARNINGS»), и комментируем их. А лучше — выводим в какой-нибудь файл, чтобы в случае чего можно было разобраться, почему форум не дышит.

 

А вместо стандартного сообщения об ошибке лучше вывести человеческие объяснения о проблеме с БД.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
В смысле, а в чем проблема для 2.0 повторить то же самое? Вывод ошибок здесь организован в ips_kernel/class_db_mysql.php (здесь генерируется вся болтливая форма об ошибке базе данных), в admin.php и в index.php (в двух последних генерируются IPB WARNINGS).

 

Hаходим места, где ошибки выкидываются на форму (в кернеле ищем по слову «извинения», как там по-английски написано в нижней части формы? в индексе и в админке — по «IPB WARNINGS»), и комментируем их. А лучше — выводим в какой-нибудь файл, чтобы в случае чего можно было разобраться, почему форум не дышит.

 

А вместо стандартного сообщения об ошибке лучше вывести человеческие объяснения о проблеме с БД.

 

==========================

Далее заменяем строчки:

 if ( !mysql_select_db($this->obj['sql_database'], $this->connection_id) )
       {
           echo ("ERROR: Cannot find database ".$this->obj['sql_database']);
       }

на

 if (!$this->connection_id)
       {    
            $this->fatal_error('ERROR: Link-ID == false, connect failed');
            return false;
       }  
  
       if ( !mysql_select_db($this->obj['sql_database'], $this->connection_id) )
       {
            $this->fatal_error("ERROR: Cannot find database ".$this->obj['sql_database']);
            return false;            
       }

==================

Все сделал, а где это править?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Эти условия отлавливают ошибки подключения к БД и выбора БД. Это, по-моему, необязательно. Поправьте меня кто-нибудь, если я не прав.
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.