网站如何防止CSRF攻击

VSole2021-11-12 07:20:53
### CSRF(跨站请求伪造)概述
– Cross-site request forgery 简称为“CSRF”,在CSRF的攻击场景
中攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标
用户进行点击,用户一旦点击了这个请求,整个攻击就完成了。所以CSRF
攻击也称为"one click"攻击。很多人搞不清楚CSRF的概念,甚至有时候
会将其和XSS混淆,更有甚者会将其和越权问题混为一谈,这都是对原理没
搞清楚导致的。

– CSRF与XSS的区别:CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限,然后实施破坏。
– 因此,网站如果要防止CSRF攻击,则需要对敏感信息的操作实施对
应的安全措施,防止这些操作出现被伪造的情况,从而导致CSRF。比如:
1. 对敏感信息的操作增加安全的token;
2. 对敏感信息的操作增加安全的验证码;
3. 对敏感信息的操作实施安全的逻辑流程,比如修改密码时需要
先校验旧密码等。

CSRF的实现过程:

接下来实际在靶场当中实践一下:

CSRF(get)

1.先点一下提示

找到有哪些用户

2.登录vince


3.修改个人信息,burp抓包

4.生成csrf poc

copy html放到网站目录下(先建txt,粘贴后改后缀为html)


5.登录kevin用户,然后访问csrf poc

访问后点击,发现kevin用户信息已经被更改

到这就实际体验了文章开头的csrf 流程

顺带提一下渗透测试中两个常见的名词:

POC:全称 ' Proof of Concept ',中文 ' 概念验证 ' ,常指一段漏洞证明的代码。

EXP:全称 ' Exploit ',中文 ' 利用 ',指利用系统漏洞进行攻击的动作。

CSRF(post)

先对比着看一下get和post的数据包区别:

get:

post:

可以看到:

GET请求参数是通过URL传递的,多个参数以&连接,POST请求放在request body中。

1.接着上面抓到的post数据包,生成csrf poc

2.copy html放到网站目录下


3.登录lili用户

初始用户信息

4.不退出用户,直接访问csrf poc


点击后发现用户信息已被修改

CSRF(token)

先抓包看看数据包有何不同

试试csrf能否实现

1.登录lili

原始用户信息

2.访问csrf poc


不能实现csrf,增加了token验证机制,无法绕过

总结:

CSRF广义上存在于任何增删改操作中,根据经验常见的有:
1)冒充身份:订阅/关注/转发/投票操作,删除文件,更改配置等
2)帐户接管:密码修改,邮箱绑定,第三方帐户关联
3)其他:登录/注册/注销/注册
4)安全设计原则:CSRF登录后令牌未更新、登出后未注销等

漏洞防御:

1) 验证header字段

常见的是Referer和Origin,Referer容易绕过,且会包含有一些敏感信息,可能会侵犯用户的隐私,而Origin字段代表最初请求,更建议使用。

2) Token令牌机制

当前最成熟的防御机制,但若存在验证逻辑及配置问题则存在绕过风险。Token的生成机制通常和session标识符挂钩,将用户的token与session标识符在服务端进行匹配当下已经有很多开源库和中间件都可以实现token生成。

3) 验证自定义header

如基于cookie的csrf保护,验证cookie中的某些值和参数必须相等

软件csrf
本作品采用《CC 协议》,转载必须注明作者和本文链接
印度渗透测试工程师 Vishal Bharad因在上报告了存储的跨站点脚本漏洞而从Apple获得了5,000美元的奖励。当 Bharad 发现一个存储的XSS漏洞时,他正在Apple * *网站上搜索跨站点请求伪造,不安全的直接对象引用和其他漏洞。登录后,他将有效负载插入到各处,并寻找在其中反映了有效负载或字符串的网页。可以通过诱骗目标用户访问“设置”菜单中的“浏览所有版本”功能来完成攻击。单击“浏览所有版本”后,恶意有效负载将在受害者的浏览器中执行。
Aqua Nautilus近日发现了一起新的攻击活动,该活动利用今年5月披露的Openfire漏洞(CVE-2023-32315)来部署Kinsing恶意软件和加密货币挖矿软件。该漏洞导致路径遍历攻击,从而授予未经身份验证的用户访问Openfire安装环境。随后,这让威胁分子得以创建一个新的管理员用户,并上传恶意插件。最终,攻击者可以全面控制服务器。我们在这篇博文中解释了这个漏洞、Kinsing的
2017 OWASP十大关键Web应用安全风险简析 受越来越短的软件项目生命周期影响,有些应用面临损及金融、医疗、零售业和其他行业数字安全的风险。开发人员和经理必须了解这些最常见的风险,才能保护自己的应用。为此,开放网页应用安全计划(OWASP)定期发布十大最关键Web应用安全风险。 该计划从专精应用安全的公司企业收集40多份数据,数据涵盖数百家公司处收集的漏洞信息,涉及10万个应用和API。 O
Web 应用通常用于对外提供服务,由于具有开放性的特点,逐渐成为网络攻击的重要对象,而漏洞利用是实现 Web 攻击的主要技术途径。越权漏洞作为一种常见的高危安全漏洞,被开 放 Web 应 用 安 全 项 目(Open Web Application Security Project,OWASP) 列 入 10 个 最 关 键Web 应用程序安全漏洞列表。结合近几年披露的与越权相关的 Web 应用通
虽然Rapid7表示这些漏洞不太可能被广泛利用,但众所周知,F5产品包含关键漏洞并吸引威胁行为者。此外,Rapid7的“2021年漏洞情报报告”包括很多被认为是广泛威胁的F5产品实例。披露流程问题虽然Rapid7对F5在处理和解决问题方面的工作表示赞赏,但这些研究人员不认同该供应商对本地权限提升和SELinux安全控制绕过的严重性的评定。此外,Beardsley表示,企业可以通过基本的缓解措施避免所有缺陷。
趋势科技的研究人员跟踪了CopperStealer幕后组织的最新部署,这次是通过基于Chromium的恶意浏览器扩展程序窃取加密货币和用户的钱包帐户信息。这些API密钥允许扩展程序执行交易并将加密货币从受害者的钱包发送到攻击者的钱包。第一个是对http:///traffic/chrome的GET请求,可能是出于统计目的。显示要求输入身份验证代码的模式窗口模式窗口有输入框并侦听oninput事件。
虽然电子商务的增长改善了在线交易,但它也同样吸引了不良行为者的注意。电子商务网络犯罪报告显示,该行业是网络犯罪中最脆弱的行业之一。
Web安全是网络渗透中很重要的一个组成部分,今天跟大家聊一下,如何在三个月内从零基础掌握Web安全。
近日,谷歌正在测试一项新功能,以防止恶意公共网站通过用户浏览器攻击内部专用网络上的设备和服务。新版本将能够检测并阻止恶意分子通过网络钓鱼等手段试图控制用户局域网内其他设备的行为。
VSole
网络安全专家