IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 【Web安全从入门到放弃】10_SSRF漏洞 -> 正文阅读

[PHP知识库]【Web安全从入门到放弃】10_SSRF漏洞

10_SSRF漏洞

什么是SSRF漏洞?

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

漏洞原理

其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制。

导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据。

数据流:

攻击者----->服务器---->目标地址

根据后台使用的函数的不同,对应的影响和利用方法又有不一样 !

PHP中下面函数的使用不当就会导致SSRF漏洞:

file_get_contents()
fsockopen()
curl_exec()

如果一定要通过后台服务器远程去对用户指定(“或者预埋在前端的请求”)的地址进行资源请求,则请做好目标地址的过滤

pikachu例子

在这里插入图片描述
在这里插入图片描述

我们从url上可以看到,当我们点击的时候网页自动帮我们提交一个url参数(在本地用phpstudy搭建的服务器)

http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php

那么如果说我们对这个url参数进行修改的话能不能访问到其他的内容???

在这里插入图片描述
在这里插入图片描述

http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=https://www.baidu.com/

在这里插入图片描述

也能跳转到百度首页,这个就是SSRF漏洞的利用了。

pikachu后台源码

if(isset($_GET['url']) && $_GET['url'] != null){

    //接收前端URL没问题,但是要做好过滤,如果不做过滤,就会导致SSRF
    $URL = $_GET['url'];
    $CH = curl_init($URL);
    curl_setopt($CH, CURLOPT_HEADER, FALSE);
    curl_setopt($CH, CURLOPT_SSL_VERIFYPEER, FALSE);
    $RES = curl_exec($CH);
    curl_close($CH) ;
//ssrf的问是:前端传进来的url被后台使用curl_exec()进行了请求,然后将请求的结果又返回给了前端。
//除了http/https外,curl还支持一些其他的协议curl --version 可以查看其支持的协议,telnet
//curl支持很多协议,有FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE以及LDAP
    echo $RES;

}

后台没有对输入的参数进行过滤检查等一系列安全措施,完完全全的相信用户的输入。

利用SSRF漏洞访问外部文件

那么同样,我们尝试一下能不能访问到后台的文件(前提要知道文件路径)

我在pikachu的目录下新建一个1.php的文件

<?php
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
echo "SSRF测试<br>";
?>
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1/pikachu/1.php

输入浏览器进行访问

在这里插入图片描述

同样也可以利用SSRF漏洞访问后台的文件。

漏洞修复建议

1.限制请求的端口只能为Web端口,只允许访问HTTP和HTTPS的请求。
2.限制不能访问内网的IP,以防止对内网进行攻击。
3.屏蔽返回的详细信息。

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-12-16 17:27:50  更:2021-12-16 17:28:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/14 14:24:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码