使用nginx做代理使用tomcat部署javaweb项目APPscan扫描出漏洞 CORS策略根据任意初始头进行设置修改access-control-allow-origin头以进获取允许的站点172161589和172161587
要使用Nginx作为代理,并使用Tomcat部署Java Web项目,可以通过修改Nginx的配置文件来设置CORS策略。
首先,确保已经安装了Nginx和Tomcat,并将Java Web项目部署到Tomcat中。
然后,在Nginx的配置文件中添加以下内容:
http {
...
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://localhost:8080; # 将请求转发到Tomcat的地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 设置CORS策略
if ($http_origin ~* "(https?://(172\.16\.15\.89|172\.16\.15\.87))$") {
add_header 'Access-Control-Allow-Origin' "$http_origin" always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
}
# 其他代理相关配置
...
}
}
...
}
在上面的配置中,proxy_pass指令将请求转发到Tomcat的地址(默认为localhost:8080)。proxy_set_header指令用于设置代理请求头,以便正确获取客户端的真实IP地址。
接下来,通过正则表达式匹配$http_origin请求头,如果请求的来源是172.16.15.89或172.16.15.87,则在响应中添加Access-Control-Allow-Origin和Access-Control-Allow-Credentials头,以允许来自这些站点的跨域请求。
最后,根据实际情况进行其他代理相关配置,并重新启动Nginx服务。
完成以上步骤后,再次运行APPscan扫描,应该不再报告CORS策略的漏洞
原文地址: http://www.cveoy.top/t/topic/id16 著作权归作者所有。请勿转载和采集!