1、xml配置文件泄漏问题
问题描述: 可访问localhost:8080/web-inf/web.xml获取xml配置信息
问题所在: 应用中客户端可访问的目录下存在敏感配置文件,攻击者可以直接访问到这些配置文件,获取配置文件中的敏感信息。
解决方法: 禁止服务器访问/web-inf/路径
操作步骤:
nginx配置文件中nginx.conf添加
location ~ ^/(WEB-INF|META-INF)/* {
deny all;
}
具体配置如下:
#user nobody;
worker_processes 1;
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
client_max_body_size 800m;
upstream backend{
_BALANCE_
#_BACKEND_;
check interval=3000 rise=2 fall=5 timeout=1000 type=http;
}
server {
listen _PORT_;
server_name localhost;
#charset koi8-r;
access_log logs/host.access.log main;
location /nginx_status {
check_status;
}
location ~ ^/(WEB-INF|META-INF)/* {
deny all;
}
location / {
root _FRONTEND_;
index index.html index.htm;
}
location /# {
proxy_pass http://backend;
}
}
}
2、允许TRACE方法
问题描述: 可通过trace方式请求localhost:8080/dist
问题所在: 可以通过TRACE Method返回的信息了解到网站前端的一些信息,如缓存服务器
解决方法: 服务器配置禁止使用trace方法
操作步骤: apache配置文件中httpd.conf添加TraceEnable off
3、目录浏览漏洞
问题描述: 可通过get方式请求localhost:8080
问题所在: 服务器开启了目录浏览功能,攻击者可以通过浏览Web应用的目录获取应用的目录结构,搜寻应用中暴露的敏感文件
解决方法: 关闭Web服务器的目录浏览功能
操作步骤: apache配置文件中httpd.conf将Options Indexes FollowSymLinks
改为Options FollowSymLinks