无名草
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9

前言
CSRF是什么:
CSRF(Cross-site request forgery)跨站请求伪造:也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用,伪造利用其它用户来完成请求操作,简单来说就是让别人来进行我想要的操作。
CSRF漏洞成因及操作过程:
CSRF漏洞成因
Cookie没有过期,没有进行进一步的验证用户信息,没有安全意识访问了恶意站点。
CSRF操作过程:
生成一个脚本或链接,当你操作时触发,就获得你在目标网站上的cookie把数据提交到目标地址,当你访问或者操作时,浏览器偷偷执行了攻击者的操作。
浏览器的Cookie机制
1.本地Cookie(持久性Cookie)
2.临时Cookie(Session Cookie)
区别:
持久性Cookie是服务器端脚本语言向客户端发送Cookie时制定了时效,也就是 Expire 字段,而且会存储于本地,当 Expire 所制定的时效过期后,Cookie失效。而Session Cookie则没有制定Expire时效,是存储在浏览器内存中的,当浏览器关闭后,Session Cookie也会随之消失。
CSRF与XSS和SSRF的区别:
CSRF与XSS的区别:
CSRF伪造请求XSS为跨站脚本攻击,一个为伪造cookie等验证信息,一个则是使用一个脚本攻击。
XSS 核心是操作目标网站的HTML代码 窃取Cookie
CSRF 核心是在非目标网站的HTML代码做手脚 让受害者浏览器偷偷的去访问目标网站。
CSRF与SSRF的区别:
CSRF为跨站请求伪造,SSRF为服务器请求伪造,CSRF的核心是让客户端的浏览器去访问,SSRF核心是让服务器去访问。
怎么快速利用CSRF
利用BurpSuite可以快速生成CSRF PoC。
CSRF的危害:
以你名义发送邮件,发消息,转账,修改密码,越权,甚至于购买商品,虚拟货币转账......
如何防御CSRF:
1.可以强行用 验证码(强制用户必须和应用进行交互,但是体验性太差了)
2.请求中加随机 Token值
Token就是一段字母数字的随机值,访问时服务端会生成一个随机的token值并传回到前端的表单里,当我们提交表单时,token会作为一个参数提交到服务端进行验证,这样攻击者因为不知道 Token 而无法构造出合法的请求进行攻击。
3.检测 referer
Refer记录了该http请求的来源地址,访问一个安全受限页面请求必须来自同一个网站,如果不是则请求不合法无法生效。
注:谷歌浏览器 对于前端漏洞可能有防护,复现漏洞尽量不要用谷歌浏览器。
CSRF实战演示
1.发现目标站点为CMS,我们可以先本地搭建一个一样的CMS来检测漏洞
2.获取织梦CMS的源码,登入管理端,发现文件管理器,可以上传和写入文件,
(1) 试着上传一个txt文件,抓包发现这里并没有 token值,所以可以尝试CSRF
注:抓本地的包要用内网ip
(2) 试着上传一句话木马进行本地测试
木马生效,本地测试成功。
3.burp抓包 构造Csrf Poc
添加自动触发代码并修改与目标同一路径:
4.在目标上传html文件
文件上传成功
5.将获取到的文件路径传入留言板
等待管理员小姐姐访问
6.管理员访问了,木马上传成功
7.蚁剑连接木马得到FALG
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)

