如何解决错误或php + mysql代码显示给用户可以提取哪些信息以及如何防止这种情况?
| 我在Xampp上使用eclass平台。当您直接转到www.domain.com/eclass/document.php之类的文件,而没有按照现场导航进行操作时,会得到此信息。 用户可以提取哪些信息,如何避免使用,这对系统有多大危害?1146: Table \'eclass.accueil\' doesn\'t exist
select `id` from accueil
where visible=1 AND lien NOT LIKE \'%/user.php\'
ORDER BY rubrique
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\\xampp\\htdocs\\eclass\\include\\init.php on line 310
Warning: Cannot modify header information - headers already sent by (output started at C:\\xampp\\htdocs\\eclass\\include\\lib\\main.lib.php:61) in C:\\xampp\\htdocs\\eclass\\include\\baseTheme.php on line 60
解决方法
除了其他人已经提到的:
您可以检查访问者是否正在直接请求文件,或者是否以“正常方式”访问文件。\在您所有的php文件中都包括某种形式的授权。如果未经授权,将用户重定向到主页。
您可以使用.htaccess保护文件免受直接访问
, 这可能会被用来查找安全漏洞。
您可以通过在mysql_query失败时抛出Exception并捕获Exception来轻松地避免这种情况;)
您还可以捕获警告。参见
set_error_handler
和set_exception_handler
, 这同时暴露了数据库结构(的一部分)和文件系统结构。这将允许技术精湛的用户研究您正在使用的系统的已知漏洞,并且可能会失败。
更新您的php.ini以关闭display_errors
,然后重新启动XAMPP,这应该可以防止这种情况的发生。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。