pikachu靶场----ssrf实现

目录

ssrf简介

SSRF(curl)

1.后端代码分析

2.http协议连接本地文件

3.file协议读取C盘中的文件。

4.dict协议扫描内网其他主机的端口开放情况

5.使用burp扫描内网其他主机的端口开放情况


ssrf简介

SSRF(Server-Side Request Forgery:服务器端请求伪造)

其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制,导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据。

SSRF(curl)

点击这个连接,可以看见这个数据是从其它服务器连接过来的。

当我们改变url后面的参数时,它也是可以正常访问的,它这里不做一些安全措施的话,我们就可以进一步的干一些坏事了。

1.后端代码分析

这里我们是由于实验,先看一下后端的代码是怎么写的

前端传进来的url被后台使用curl_exec()进行了请求,然后将请求的结果又返回给了前端。

2.http协议连接本地文件

我们也可以发现可以访问这个服务器根路径文件。

3.file协议读取C盘中的文件。

这里我们通过file协议,把这个服务器当作本机一样,读取盘中的数据,也可以读取出来。

4.dict协议扫描内网其他主机的端口开放情况

我们再进一步,通过dict协议试探一下服务器的端口开放情况。

可以看见,这里有回显,只是我们没有权限,但我们已经知道了这个服务器有开放数据库的3306端口。

5.使用burp扫描内网其他主机的端口开放情况

抓包,并把抓到的包发送到攻击模块,进行端口探测。

可以看见,根据返回的长度不同,就可以看见服务器所开放的端口有哪些,就比如3306端口。

到这里,第一关就差不多好了。

相关推荐
桃花岛主7011 分钟前
Nginx搭建直播服务器,并用rtmp,http-flv,hls三种模式拉流观看直播的流程
运维·服务器·nginx
醉卧雕龙舫 、35 分钟前
Linux中安装maven
linux·运维·maven
鲸鱼姐1 小时前
在linux注册服务并开机启动springboot程序
linux·运维·服务器
jyan_敬言1 小时前
虚拟机centos_7 配置教程(镜像源、配置centos、静态ip地址、Finalshell远程操控使用)
linux·运维·服务器·c语言·数据结构·tcp/ip·centos
Licky131 小时前
Centos中dnf和yum区别对比
linux·运维·架构·centos·bash
Aomnitrix3 小时前
网络协议全景:Linux环境下的TCP/IP、UDP
linux·运维·网络·c++·网络协议·tcp/ip·运维开发
哲伦贼稳妥3 小时前
网络运维故障处理
运维·网络·经验分享·职场和发展
花花花14 小时前
Linux 文件与目录操作命令详解
linux·运维·服务器·文件·目录·命令
小故渊11 小时前
JSON对象
运维·服务器·json
Aileen_0v011 小时前
【Java宝典】——探索数组的奥秘之旅
java·运维·开发语言·windows·后端·docker·golang