我是靠谱客的博主 风趣鲜花,最近开发中收集的这篇文章主要介绍CSRF-跨站请求伪造,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

任何网站的本质是数据包的传递 

XSS:窃取Cookie(可以获取)

CSRF:利用Cookie(不能获取,只能借用)

CSRF本质:

浏览器在你不知情的情况下偷偷发送数据包(Ajax异步传输),通过JS去发送请求,然后获取信息

至于浏览器为什么会偷偷发送数据包,这里面涉及到一个信任机制,浏览器会认为你主动访问某一个网站,代表你信任那个网站

利用CSRF方法:

        1、存在CSRF

        2、需要自己做一个貌似合理的页面骗受害者点击

        3、目标登陆过存在CSRF的这个网站,并且权限没有掉

CSRF防御方法

        网站:token(唯一解,Cookie里面有一段随机值)

        用户:开启无痕浏览、隐私模式

CSRF常见的地方:

        1、CMS(源码是固定的,数据包可以构建)

        2、用户改用户

CSRF检测方法:

        找到一个站,登录A用户,修改自己的账号密码,把数据包做成CSRF,换一个浏览器,登录  B,点击做好的CSRF,只要能修改密码,就存在CSRF

CSRF成因:

        1、Cookie不过期

        2、网站没有进一步验证用户信息

        3、用户安全意识薄弱,访问了恶意站点

我们进入靶场:

这次的靶场是一个CMS,首先我们需要本地安装一个dedecms,然后登录后台,在后台的文件式管理器处新建一个文件666.php,内容为一句话木马,点击保存,然后Burp抓包,我们会得到一个数据包,然后鼠标右键,选中图示功能处,生成一个CSRF的页面

 我们将这个生成的HTML代码复制到我们安装dedecms的目录下,命名为1.html,我们访问这个1.html,可以看到有一个按钮,我们点击之后,他会生成一个文件,文件为666.php,这个文件我们在网站后台处也能看到,但是这个需要用户点击之后才能生成一个木马文件,非常的不方便,所以我们需要在生成的这个HTML代码中加一段新的代码

 在图中我们可以看到用红色框中的代码就是我们新加入的,这个是自动点击的,aaa这个可以自己命名,如果要重新命名,记得红色箭头标中的两个都要改,然后我们再访问这个1.html文件的时候,它就会自动提交并生成一个666.php文件

 

我们在本地做好了CSRF需要的文件,我们现在到靶场验证一下,首先需要把我们本地的地址改为靶场的地址,然后验证靶场的/dede/file_manage_control.php这个文件夹,看看存不存在,发现页面空白,那我们访问一个/dede/file_manage_control2.php,发现页面报错,所以我们判断靶场是存在这个文件夹的

 

然后就是路径,靶场的路径不可能和咱们自己搭建的一样,所以我们需要试一试,一般是试一下默认的文件夹,我们看到网站的URL栏上面有一个newcsrf,所以我们可以试一下在后面加一个uploads,可以看到有内容 ,所以这个路径是存在的,我们需要改一下HTML的这个路径

 改好的代码如下图,我们将地址和路径改了之后就是这样的

 这样全都做好了之后,把这个1.HTML放到我们自己的公网服务器上面,然后想办法让网站管理员访问我们发的链接,然后就可以直接菜刀连马了

最后

以上就是风趣鲜花为你收集整理的CSRF-跨站请求伪造的全部内容,希望文章能够帮你解决CSRF-跨站请求伪造所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部