CSRF,全称Cross-Site Request Forgery跨站请求伪造,经常配合XSS来进行攻击。
CSRF与XSS的区别:
XSS主要利用用户对站点的信任,而CSRF主要是利用站点对已知身份认证的信任。换句话说,XSS是用户自己点击链接来访问相应的网页的,而CSRF是在用户并不知情的情况下来提交请求的。另外,两者的产生的原因也不一样,CSRF的是因为采用了隐式的认证方式,而XSS的是因为对用户输入没有进行有效的过滤。
CSRF与XSS的关系:
均利用用户的会话执行某些操作;若一个站点存在XSS漏洞,则很大可能也存在CSRF漏洞;若CSRF的恶意代码存在于第三方的站点,即使能有效地过滤用户的输入而防止XSS,也未必能防御CSRF。
产生CSRF漏洞的原因:
由于程序员的不严谨导致Web应用程序存在漏洞
Web浏览器对Cookie和HTTP身份验证等会话信息的处理存在缺陷
漏洞利用的前提:
用户已经完成身份认证
新请求的提交不需要重新身份认证或确认机制
攻击者必须了解Web APP请求的参数构造
用户会被吸引去点击链接
几种常见的CSRF方式:
<img>标签属性
<iframe>标签属性
<script>标签属性
JavaScript方法:Image对象、XMLHTTP对象
Low级:
进入相应的页面可以看到提示直接输入新密码以及确认新密码的两项输入进行更改密码的操作而不需要重新确认一遍当前的密码:
填写相应的数据,用Burpsuite抓包来获取相应的变量的信息:
关闭OpenVas的服务让80端口处于空闲的状态:
openvas-stop
启动Kali的Apache:
service apache2 start
到Kali的网页站点的根目录下新建1.html文件:
gedit 1.html
其中1.