51mee - AI智能招聘平台Logo
模拟面试题目大全招聘中心会员专区

请解释HTTP协议中的CSRF(跨站请求伪造)漏洞的原理,并说明如何利用该漏洞获取用户权限,以及常见的防御措施有哪些?

360助理安全研究员(漏洞挖掘与利用)难度:中等

答案

1) 【一句话结论】CSRF(跨站请求伪造)是攻击者利用用户已登录的会话状态,通过伪造用户浏览器发送的HTTP请求,诱导目标网站执行非授权操作(如转账、点赞等),核心是利用浏览器自动提交Cookie等会话信息。

2) 【原理/概念讲解】当用户登录网站时,服务器会返回一个会话标识(如Cookie),后续所有请求都会自动携带这个Cookie。攻击者构造一个包含恶意请求的网页或链接(如隐藏表单),用户访问后,浏览器会自动将Cookie等会话信息附加到请求中,导致服务器误认为请求来自合法用户,执行操作。类比:就像你拿着银行卡(会话Cookie),点击一个伪造的转账链接,银行(目标网站)会自动处理转账,因为你的卡信息(Cookie)已经验证过。

3) 【对比与适用场景】

对比项CSRF(跨站请求伪造)XSS(跨站脚本攻击)
定义攻击者伪造用户请求,诱导目标网站执行操作攻击者注入恶意脚本,在用户浏览器执行
核心利用会话状态(Cookie等)浏览器执行能力(DOM操作)
攻击目标服务器端操作(如转账、点赞)用户浏览器(显示恶意内容、窃取数据)
使用场景用户已登录的网站,需服务器验证操作用户访问的任何网站,可注入脚本
注意点需用户登录状态,请求自动提交需用户访问页面,脚本执行

4) 【示例】假设用户登录后,网站有“点赞”按钮(URL:/api/like?id=123),攻击者构造一个表单:

<form action="/api/like?id=123" method="POST">
    <input type="hidden" name="csrf_token" value="invalid_token">
    <button type="submit">点击执行点赞</button>
</form>

用户点击后,浏览器自动发送POST请求,携带Cookie(包含会话ID),服务器验证后执行点赞。

5) 【面试口播版答案】
CSRF是跨站请求伪造,核心是利用用户已登录的会话,攻击者伪造请求诱导目标网站执行操作。原理是用户登录后,浏览器自动携带Cookie等会话信息,攻击者构造恶意请求(如表单),用户点击后,浏览器自动提交,导致服务器误认为合法请求。比如用户登录银行后,点击攻击者链接,银行自动转账。防御措施包括CSRF Token(每次请求验证Token)、SameSite Cookie属性(如Strict,禁止跨站提交)、验证码等。具体来说,服务器生成随机Token,客户端存入Cookie或隐藏表单字段,请求时服务器验证Token是否匹配且未过期;SameSite=Strict时,浏览器不会在跨站请求中发送Cookie。这些措施能有效防止CSRF攻击。

6) 【追问清单】

  • 问:CSRF Token如何生成和验证?
    答:服务器生成随机字符串,客户端存入Cookie或隐藏表单字段,请求时服务器验证Token是否匹配且未过期。
  • 问:SameSite属性的作用?
    答:控制Cookie在跨站请求中的发送,如Strict禁止跨站提交,Lax允许同站内跨域(如iframe),None需配合Secure标志。
  • 问:如何绕过CSRF Token的防御?
    答:攻击者可能通过窃取Token(如Cookie泄露)、利用同源策略漏洞或利用其他漏洞(如XSS窃取Token)。
  • 问:CSRF和XSS的区别?
    答:CSRF利用会话状态,XSS利用浏览器执行脚本,前者是服务器端操作,后者是客户端操作。
  • 问:常见的防御措施中,为什么Cookie要设置HttpOnly?
    答:防止JavaScript访问Cookie,避免XSS窃取Token,但HttpOnly不影响CSRF防御(CSRF是请求自动提交,与JavaScript无关)。

7) 【常见坑/雷区】

  • 误将CSRF与XSS混淆,认为防御措施相同(如设置HttpOnly,其实HttpOnly针对XSS,CSRF用Token或SameSite)。
  • 忽略SameSite属性的具体值(如Strict vs Lax),导致防御不彻底。
  • 认为CSRF不需要用户登录状态,实际上需要用户已登录的会话。
  • 忘记说明攻击者如何构造恶意请求(如表单、链接),导致原理不清晰。
  • 防御措施中,混淆CSRF Token与CSRF Header(如WASL,但通常用Token)。
51mee.com致力于为招聘者提供最新、最全的招聘信息。AI智能解析岗位要求,聚合全网优质机会。
产品招聘中心面经会员专区简历解析Resume API
联系我们南京浅度求索科技有限公司admin@51mee.com
联系客服
51mee客服微信二维码 - 扫码添加客服获取帮助
© 2025 南京浅度求索科技有限公司. All rights reserved.
公安备案图标苏公网安备32010602012192号苏ICP备2025178433号-1