ssrf和csrf漏洞详解

ssrf

原理

SSRF(Server-Side Request Forgery:服务器端请求伪造)是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF是要目标网站的内部系统。(因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统,也就是把目标网站当中间人)

形成原因

SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,文档,等等。

实验

在这里插入图片描述
分析这段源码可以看到虽然禁用了diet端口探测,file文件的关键字段,但是在下面一段发现可以查看php的版本。
在这里插入图片描述
在php的信息里可以看到主机的信息,这就可以用bp来抓包爆破剩下的主机
在这里插入图片描述

发现开放了3个服务器我们进行以此访问,发现在2的时候显示了go,away。
在这里插入图片描述
我们再来利用bp来抓包用暴力破解模块看一下发现6379端口暴露了
在这里插入图片描述
这个是redis服务的端口
接下来就可以利用redis未授权的漏洞来访问,由于这台内网主机上还存在一个http服务,我们可以将webshell写入其web目录,然后利用ssrf漏洞进行访问。但是我们尝试发现不能直接在/var/www/html目录下写文件,我们继续用bp的破解模块来查看有啥目录,发现有个upload目录。
然后利用工具生成一段代码
在这里插入图片描述
将生成的这段代码进行url encode加密,最后进行提交,我们发现在upload下面生成了对应的php代码,然后就可以进行访问了。
在这里插入图片描述

csrf

什么是csrf

跨站请求伪造,冒用Cookie中的信息,发起请求攻击。CSRF(Cross-site request forgery)跨站请求伪造:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证,达到冒充用户对被攻击的网站执行某项操作的目的

实验

dvwa靶场下的csrf(high)

<?php
 
$change = false;
$request_type = "html";
$return_message = "Request Failed";
 
if ($_SERVER['REQUEST_METHOD'] == "POST" && array_key_exists ("CONTENT_TYPE", $_SERVER
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值