提前防范风险:PHP 跨站请求伪造(CSRF)的前瞻性防范策略
常见的CSRF攻击类型1.表单提交CSRF攻击这种攻击类型是通过欺骗受害者点击伪造的链接或按钮,导致受害者的浏览器向攻击者的网站发送POST请求,从而执行攻击者预期的操作。2.GET请求CSRF攻击GET请求CSRF攻击通过欺骗受害者点击伪造的链接或图像,导致受害者的浏览器向攻击者的网站发送GET请求,从而执行攻击者预期的操作。3.JSON请求CSRF攻击JSON请求CSRF攻击通过欺骗受害者点击伪造的链接或按钮,导致受害者的浏览器向攻击者的网站发送jsON请求,从而执行攻击者预期的操作。4.AJAX请求
常见的CSRF攻击类型
1. 表单提交CSRF攻击
这种攻击类型是通过欺骗受害者点击伪造的链接或按钮,导致受害者的浏览器向攻击者的网站发送POST请求,从而执行攻击者预期的操作。
2. GET请求CSRF攻击
GET请求CSRF攻击通过欺骗受害者点击伪造的链接或图像,导致受害者的浏览器向攻击者的网站发送GET请求,从而执行攻击者预期的操作。
3. JSON请求CSRF攻击
JSON请求CSRF攻击通过欺骗受害者点击伪造的链接或按钮,导致受害者的浏览器向攻击者的网站发送jsON请求,从而执行攻击者预期的操作。
4. AJAX请求CSRF攻击
ajax请求CSRF攻击通过欺骗受害者点击伪造的链接或按钮,导致受害者的浏览器向攻击者的网站发送AJAX请求,从而执行攻击者预期的操作。
防范CSRF攻击的先锋策略
1. 使用CSRF令牌
CSRF令牌是一种随机字符串,它在服务器端生成并存储在客户端的Cookie中。在发送请求时,客户端会将CSRF令牌作为Http请求头的一部分发送给服务器。服务器会检查CSRF令牌是否有效,如果有效,则执行请求的操作;如果无效,则拒绝请求。
代码示例:
2. 使用SameSite属性
SameSite属性可以防止浏览器在跨站请求中发送Cookie。它可以设置为以下三个值之一:
- Lax:浏览器会在跨站请求中发送Cookie,但仅限于同源请求。
- Strict:浏览器不会在跨站请求中发送Cookie。
- None:浏览器会在跨站请求中发送Cookie,无论请求是否同源。
代码示例:
3. 使用Content-Security-Policy (CSP)头
CSP头可以防止浏览器加载来自第三方网站的资源。它可以设置为允许或阻止某些类型的资源,例如脚本、样式表和图像。
代码示例:
4. 使用跨域资源共享 (CORS)头
CORS头允许浏览器向其他域发送跨域请求。它可以设置为允许或拒绝某些类型的请求,例如GET、POST、PUT和DELETE。
代码示例:
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















