1、漏扫时发现直接访问http://ip:port/actuator会显示很多信息,如下图所示
2、在Spring Boot应用中,Actuator端点提供了丰富的运行时信息以方便监控和故障排查。然而,这些信息如果被不恰当暴露,可能会造成安全风险,需要在服务的配置文件中添加如下配置:
management: endpoint: health: enabled: false # 禁用健康检查端点 info: enabled: false # 禁用信息端点 # 其他端点也可以这样逐一禁用... endpoints: web: exposure: include: '' # 如上所述,禁用所有web端点暴露 jmx: exposure: include: '' # 禁用所有JMX端点暴露
3、配置结束后验证时,虽然减少了内容的展示,但仍保留了一条内网的信息,这仍然是非常危险的
4、考虑到web是使用nginx配置的,于是问题就变成了配置访问特定页面时显示404,配置如下
server { listen 80; server_name example.com; location /actuator { # 特定条件,例如请求一个不存在的文件 if (!-e $request_filename) { # 返回404状态码 return 404; } # 其他配置... } # 通过添加特定的头部信息来阻止Nginx版本信息显示在错误页面上 error_page 404 @404_custom; location @404_custom { # 清除Nginx服务器名称 server_tokens off; # 添加一个空的内容体来避免显示Nginx默认的错误页面内容 add_header Content-Length 0; add_header Content-Type text/plain; return 404 'Not Found'; } }
问题解决
还没有评论,来说两句吧...