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端口。

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

相关推荐
wuicer2 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
玩转以太网3 小时前
基于W55MH32Q-EVB 实现 HTTP 服务器配置 OLED 滚动显示信息
服务器·网络协议·http
小晶晶京京4 小时前
day34-LNMP详解
linux·运维·服务器
画个太阳作晴天4 小时前
A12预装app
linux·服务器·前端
fengyehongWorld4 小时前
Linux crontab定时任务
linux·运维
碎像5 小时前
Linux上配置环境变量
linux·运维·服务器
sunflower_w7 小时前
linux I2C核心、总线与设备驱动
linux·运维·服务器
myzzb7 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa
Ronin3057 小时前
【Linux系统】进程间通信:System V IPC——共享内存
linux·服务器·system v 共享内存
网硕互联的小客服8 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php