漏洞描述
错误页面由服务器产生400、403、404、500等错误时,返回详细错误信息。报错信息中可能会包含服务器代码信息、服务器版本信息、模板类型、数据库连接信息、SQL语句或者敏感文件的路径。
修复
修改nginx配置
# 其他配置...
server {
# 其他配置...
# 指定 400 错误页面
error_page 400 /400.html;
location = /400.html {
root xxx/html; # 根据你的 HTML 文件存放目录
internal; # 确保这个位置只能被内部调用
}
# 代理请求到 Tomcat
location /aitrs-manage/ {
# 其他配置...
# 捕获 Tomcat 的 400 错误
proxy_intercept_errors on; # 启用错误拦截
}
# 其他 location 配置...
}
创建错误页面
进入到xxx/html
目录下,然后创建400.html
文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>400 Bad Request</title>
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
margin: 50px;
}
h1 {
color: #ff0000;
}
</style>
</head>
<body>
<h1>400 Bad Request</h1>
<p>抱歉,您的请求无效。请检查您的请求并重试。</p>
</body>
</html>
然后重启Nginx
即可。