pikachu靶场练习——SSRF详解

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

1、SSRF漏洞介绍:

SSRF漏洞(服务器端请求伪造):是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)。

2、SSRF漏洞原理:

SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。利用的是服务端的请求伪造。SSRF是利用存在缺陷的web应用作为代理攻击远程和本地的服务器。
各个协议调用探针:http,file,dict,ftp,gopher等。

3、SSRF漏洞利用手段:

(1)可以对外网、内网、本地进行端口扫描,某些情况下端口的Banner会回显出来(比如3306的);
(2)攻击运行在内网或本地的有漏洞程序(比如溢出);
(3)可以对内网Web应用进行指纹识别,原理是通过请求默认的文件得到特定的指纹;
(4)攻击内网或外网有漏洞的Web应用;
(5)使用file:///协议读取本地文件(或其他协议)

4、SSRF漏洞绕过方法:

(1)@          http://abc.com@127.0.0.1
(2)添加端口号      http://127.0.0.1:8080
(3)短地址        https://0x9.me/cuGfD
(4)可以指向任意ip的域名  xip.io
(5)ip地址转换成进制来访问 192.168.0.1=3232235521(十进制)
(6)非HTTP协议
(7)DNS Rebinding

一、SSRF(curl)

我们先看下curl的用法:https://www.runoob.com/php/php-ref-curl.html

PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。

libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP基于表单的上传、代理、cookies和用户名+密码的认证。

在这里插入图片描述
我们依次点击,发现这里出现了一个url地址http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php
在这里插入图片描述
因为curl支持很多协议,我们就可以做以下尝试:

1、通过网址访问链接

比如说修改url为:url=http://www.baidu.com,访问百度页面:
在这里插入图片描述

2、利用file协议查看本地文件

修改url为:url=file:///d:/test.txt,查看文件的内容:
在这里插入图片描述

3、dict协议扫描内网主机开放端口

使用dict协议可以获取内网主机开放端口相应服务的指纹信息,比如说内网主机开了http端口的话,
可以修改url为:url=dict://192.168.198.1:21
在这里插入图片描述

代码:

在这里插入图片描述

二、SSRF(file_get_content)

跟上关类似,url变成了file
在这里插入图片描述
我们先看下file_get_content()的用法:https://www.runoob.com/php/func-filesystem-file-get-contents.html

file_get_contents() 把整个文件读入一个字符串中。
语法:file_get_contents(path,include_path,context,start,max_length)
在这里插入图片描述

1、file读取本地文件

修改file为:file=file:///D:/test.txt,查看文件的内容:在这里插入图片描述

2、http协议请求内网资源

修改file为:file=http://127.0.0.1/pikachu/vul/sqli/1.php,查看文件的内容:
在这里插入图片描述

  • 16
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值