网站路径泄露风险问题修复建议#
以下建议将有助于确保潜在攻击者不会从显示的任何错误消息中得到有价值的信息。
统一的错误代码:确保您不会使用不一致或“冲突的”错误消息而在无意中将信息提供给攻击者。例如,请不要通过错误消息(如“拒绝访问”)泄漏非预期信息,这样也会让攻击者知道他搜索的文件确实存在。对于存在、不存在以及拒绝读取权限的文件和文件夹,应使用一致的术语。
信息性错误消息:确保错误消息不会泄漏过多信息。完整或部分路径、变量和文件名、表中的行和列名称以及特定的数据库错误切不可泄漏给最终用户。请记住,攻击者将收集尽可能多的信息,然后将一些表面上无害的信息整合到一起即可策划攻击方法。 适当的错误处理:使用常规错误页面和错误处理逻辑向最终用户通知潜在问题。不要提供可供攻击者在策划攻击时使用的系统信息或其他数据。
修复措施:
将所有错误页面引导到一个指定的html页面;
我的apache服务器:修改http.conf
取消注释行
ErrorDocument 404 /missing.html
编写文件到网站根目录下存放
实例:
<!DOCTYPE html>
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>页面不存在</title>
<nav data-state="closed">
<h1>404</h1>
<p>您所寻找的页面不存在。你可以点击下面的按钮,返回主页。
</p>
<a href="http://你的域名地址m.cn"><button class="btn green">返回首页</button></a>
</div>
</div>
</div>
</main>
</body></html>
效果图