做网站需注意什么,网站模板 百科,西数网站管理助手 伪静态,能查个人信息的网站1. Nginx 版本泄露
风险分析#xff1a; Nginx 默认会在响应头中返回 Server: nginx/x.x.x#xff0c;攻击者可利用该信息匹配已知漏洞进行攻击。
防御措施#xff1a;
修改 nginx.conf 配置文件#xff0c;隐藏版本信息#xff1a;server_tokens off;使用 WAF 进行信息…1. Nginx 版本泄露
风险分析 Nginx 默认会在响应头中返回 Server: nginx/x.x.x攻击者可利用该信息匹配已知漏洞进行攻击。
防御措施
修改 nginx.conf 配置文件隐藏版本信息server_tokens off;使用 WAF 进行信息隐藏。 2. Tomcat 默认报错页面
风险分析 Tomcat 默认错误页面可能会泄露服务器版本、堆栈信息等帮助攻击者制定攻击策略。
防御措施
修改 web.xml自定义错误页面error-pageerror-code500/error-codelocation/custom_500.html/location
/error-page关闭 server.xml 中的 server 头信息。 3. IIS 版本泄露
风险分析 IIS 默认会在 Server 头中返回版本信息如 Server: Microsoft-IIS/10.0帮助攻击者匹配漏洞。
防御措施
在 web.config 文件中添加system.webServersecurityrequestFiltering removeServerHeadertrue //security
/system.webServer配置 WAF 进行信息隐藏。 4. jQuery 版本泄露
风险分析 如果前端页面暴露了 jQuery 版本如 jquery-1.12.4.js攻击者可查找该版本的公开漏洞并利用。
防御措施
使用 CDN 或混淆 JavaScript 文件避免暴露版本信息。及时更新 jQuery 版本避免使用已知存在漏洞的版本。 5. X-Powered-By 信息泄露
风险分析 X-Powered-By 头通常包含服务器的运行环境如 PHP/5.4.16攻击者可利用该信息匹配已知漏洞进行攻击。
防御措施
在 Nginx 配置中移除fastcgi_hide_header X-Powered-By;在 PHP 配置文件 php.ini 中禁用expose_php Off6. X-Frame-Options 响应头丢失
风险分析 缺少 X-Frame-Options 头会使站点容易受到 Clickjacking 攻击。
防御措施
在 Nginx 配置中添加add_header X-Frame-Options DENY;在 Apache 配置中添加Header always set X-Frame-Options SAMEORIGIN7. Content-Security-Policy 头缺失
风险分析 Content-Security-Policy (CSP) 头缺失会导致网站容易受到 XSS 攻击。
防御措施
在 Nginx 配置中添加add_header Content-Security-Policy default-src self; script-src self;8. TRACE 方法启用
风险分析 TRACE 方法可被利用进行 Cross-Site Tracing (XST) 攻击泄露 HTTP 头信息。
防御措施
在 Apache 配置中禁用TraceEnable Off在 Nginx 配置中拦截if ($request_method TRACE) {return 405;
}9. 使用有漏洞的组件
风险分析 老旧或有漏洞的第三方库、框架可被攻击者利用。
防御措施
定期检查依赖组件版本如 npm audit、OWASP Dependency-Check。及时更新框架和库。 10. 缓慢的 HTTP 拒绝服务攻击Slowloris
风险分析 攻击者使用 Slowloris 发送部分 HTTP 请求占用服务器资源导致拒绝服务。
防御措施
配置 Nginx 限制请求速率limit_conn_zone $binary_remote_addr zoneconn_limit:10m;
limit_conn conn_limit 10;使用 mod_reqtimeout 模块Apache。 11. 目标服务器启用了不安全 HTTP 方法
风险分析 如果启用了 PUT、DELETE 等方法攻击者可能上传恶意文件或删除资源。
防御措施
在 Nginx 配置中仅允许安全方法if ($request_method !~ ^(GET|POST|HEAD)$) {return 405;
}在 Apache 配置中限制LimitExcept GET POSTdeny from all
/LimitExcept12. 缺少 Secure 标识
风险分析 如果 Session Cookie 没有 Secure 标识可能会在非 HTTPS 传输中被窃取。
防御措施
在 Set-Cookie 头中添加 Secure; HttpOnly; SameSiteStrict。在 nginx.conf 配置add_header Set-Cookie namevalue; Secure; HttpOnly; SameSiteStrict;13. 敏感数据 GET 传输
风险分析 如果敏感信息如 password、token通过 GET 传输可能会被日志记录或浏览器缓存暴露。
防御措施
采用 POST 方式传输敏感数据。通过 Referer-Policy 限制 Referer 头泄露add_header Referrer-Policy strict-origin;14. SSL 证书无效
风险分析 无效的 SSL 证书可能会导致用户数据被中间人攻击窃取。
防御措施
使用受信任的 CA 机构签发证书如 Lets Encrypt、DigiCert。启用 HSTS 头防止降级攻击add_header Strict-Transport-Security max-age31536000; includeSubDomains; preload;结论
以上是常见的 Web 安全“水洞”这些配置问题虽然看似微不足道但往往成为攻击者突破系统安全防线的关键点。企业应定期进行安全审计、修复漏洞确保 Web 应用的安全性。