CSRF攻击案例

本地网络设备 CSRF 攻击

一般情况下,外网不可以访问交换机等内网硬件,如果想访问内网设备,应该怎么办呢

注意,内网设备很多是默认密码的 首先,模拟正常用户身份登录->开启web管理端口的操作,用burp抓包后,抓取得到地址为

<img src=***.com

将这个攻击代码插入到想插入的地方,欺骗对方企业访问这个地址,访问之后对方设备的远程web管理端口就打开了

这段攻击代码三个功能,先开启80端口,把远程web管理IP地址改成255.255.255.255,保存

CSRF自解压案例

将攻击代码嵌入到rar压缩软件的自解压选项中,用户点击这个压缩软件后,自动解压过程中,就触发了恶意代码

补充: 在做免杀的时候也可以使用这个功能做自解压木马干掉杀毒软件 可以把一个木马进行拆分 先把注册表导入形式拆分 内存部分再拆分 启动项拆分导入形式 最后加一个自动.exe形式

burp 添加管理员账号

网站开源情况下,找到添加管理员账号的代码,模拟出添加管理员的数据包,再进行修改,只需要把地址改成要攻击网站,嵌入到恶意程序,诱骗管理员在管理状态中触发

小结

CSRF的攻击门槛不是很高,但是这种攻击一定是基于会话,也就是需要遇害者在登录状态下执行恶意代码,这也就要求我们将CSRF与其他攻击手法相结合,构造攻击代码+钓鱼执行代码

CSRF 漏洞防御

  1. referer : 使用严格的Referer验证策略来防御登陆CSRF,因为登陆的表单一般都是通过HTTPS发送,在合法请求里面的Referer都是真实可靠的。通过referer判断页面来源进行CSRF防护,该方式无法防止站内CSRF攻击及referer字段伪造。

  2. token: 通过token方式进行CSRF防护,在服务器端对比POST提交参数的token与Session中绑定的token是否一致。

  3. origin: 对于更长远的建议,我们希望能用Origin字段来替代Referer,因为这样既保留了既有效果,又尊重了用户的隐私。 最终要废除利用token来防御CSRF的方式,因为这样网站就可以更好的保护无论是HTTP还是HTTPS请求,而不用担心token是否会泄露。

  4. 业务上 验证码: 重要功能点使用动态验证码进行CSRF防护 原密码: 对于修改密码操作,推荐附加上原密码的验证 白名单: 对于那些有特定跨站需求的请求,网站应该建立一份白名单,比如主页等。

  5. 校验请求 严格区分好 POST 与 GET 的数据请求