5月17日java web学习笔记

Java Web 安全机制
常见 Web 攻击类型及防护
CSRF(跨站请求伪造)攻击
原理 :攻击者诱导已登录的用户点击恶意链接或提交表单,利用用户的会话或 Cookie 在目标网站上执行未授权的操作。
防护措施 :
验证 HTTP 请求头 Referer :检查请求的来源页面是否为本站页面,但 Referer 信息可能被攻击者伪造或被浏览器隐私设置屏蔽,不能完全依赖。
添加 CSRF Token :在表单中添加一个随机生成的 Token 字段,服务器在处理表单提交时验证 Token 是否有效。Token 可以存储在用户会话(Session)中或缓存中,每次请求时动态生成并验证。例如:
java

// 生成 CSRF Token 并存储到 Session
String csrfToken = UUID.randomUUID().toString();
HttpSession session = request.getSession();
session.setAttribute("csrfToken", csrfToken);
request.setAttribute("csrfToken", csrfToken);
// 在 JSP 页面的表单中添加 Token 字段

// 处理表单提交时验证 Token
String clientToken = request.getParameter("csrfToken");
String serverToken = (String) session.getAttribute("csrfToken");
if (clientToken == null || !clientToken.equals(serverToken)) {
// Token 验证失败,拒绝处理请求
response.sendError(HttpServletResponse.SC_FORBIDDEN, "CSRF Token 验证失败!");
return;
}
XSS(跨站脚本攻击)
原理 :攻击者将恶意脚本代码注入到网页中,当其他用户浏览该网页时,恶意脚本被执行,窃取用户信息或进行其他恶意操作。
防护措施 :
输入验证 :对用户输入的数据进行严格的验证和过滤,禁止包含

posted @ 2025-05-19 23:53  头发少的文不识  阅读(15)  评论(0)    收藏  举报