web-ssrf

news/2024/12/23 23:54:18

目录

ssrf介绍

以pikachu靶场为例

curl

访问外网链接

 利用file协议查看本地文件

利用dict协议扫描内网主机开放端口

file_get_content

利用file协议查看本地文件:

fsockopen()    

防御方式:


ssrf介绍

服务器端请求伪造,是一种由攻击者构造形成而由服务器端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。其目标是与服务器端相连的内部网络。

以pikachu靶场为例

curl

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

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

PHP中使用cURL实现Get和Post请求的方法

curl的用法链接

https://www.runoob.com/php/php-ref-curl.html

访问外网链接

这里看到url后面跟上的是本地的php文件地址,尝试访问正常连接

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

尝试方法问百度界面,发现可以正常访问

 利用file协议查看本地文件

http://127.0.0.1/pikachu-master/vul/ssrf/ssrf_curl.php?url=file:///h:zd/6.txt

#或者

http://192.168.1.14/pikachu-master/vul/ssrf/ssrf_curl.php?url=file:///h:zd/6.txt

利用dict协议扫描内网主机开放端口

可以看到这几个长度不一样的都是开放端口的

file_get_content

               --->    将整个文件读入一个字符串

先利用大小写判断服务器的操作系统类别,在访问测试的文件判断是否存在ssrf:

测试漏洞访问的文件:
            windows --> c:\Windows\win.ini
            linux ---> /etc/passwd   or  /etc/shadow

利用file协议查看本地文件:

http://127.0.0.1/pikachu-master/vul/ssrf/ssrf_fgc.php?file=file:///c:windows/win.ini

fsockopen()    

                --->    打开一个网络连接

            ?url=www.baidu.com    //显示连接百度页面
            ?url=127.0.0.1:3306        //利用探测3306是否开启

防御方式:

    对用户的输入进行私有地址过滤。
    限制用户访问的端口,只能访问 80 和 443 端口。
    禁用不必要的协议 file dict 等。


http://www.niftyadmin.cn/n/4924544.html

相关文章

报错注入(主键重复)攻击原理

基本原理 利用数据表中主键不能重复的特点,通过构造重复的主键,使得数据库报错,并将报错结果返回到前端。 SQL说明函数 以pet数据表为例进行说明 rond(): 返回[0,1)区间内的任意浮点数。 count(): 返回每个组的列行数。 如&#xff0…

直播预告 | 博睿学院:浅析windows Hook原理和机制

Hook,一般被翻译为“钩子”或“挂钩”。Windows系统中的Hook是一种获取系统关键数据的重要手段,被广泛应用于数据采集、系统安全、游戏外挂等多个领域。 本期博睿学院将和大家一起打开Windows Hook的大门,浅析Windows Hook的原理和机制。 本…

因项目只做socket客户端,不想用workerman或者swoole框架,简单实现ws PHP客户端

D:\phpstudy_pro\Extensions\php\php7.4.3nts\composer require textalk/websocket 1、因项目只做socket客户端&#xff0c;不想用workerman或者swoole框架&#xff0c;简单实现ws PHP客户端 <?php use WebSocket\Client as WsClient;private static $worker null;public …

Kubernetes kubectl管理命令使用方法

陈述式资源管理方法&#xff08;通过命令行&#xff09; 1.kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口 2.kubectl 是官方的CLI命令行工具&#xff0c;用于与 apiserver 进行通信&#xff0c;将用户在命令行输入的命令&#xff0c;组织并转化…

Leetcode每日一题:1749. 任意子数组和的绝对值的最大值(2023.8.9 C++)

目录 1749. 任意子数组和的绝对值的最大值 题目描述&#xff1a; 实现代码与解析&#xff1a; 动态规划 分类讨论 原理思路&#xff1a; 前缀和 原理思路&#xff1a; 1749. 任意子数组和的绝对值的最大值 题目描述&#xff1a; 给你一个整数数组 nums 。一个子数组 […

电视盒子哪个牌子好?拆机达人揭晓电视盒子品牌排行榜

老赵每天会对各种类型的数码产品进行拆机&#xff0c;对硬件、品控这块非常熟悉&#xff0c;近期很多朋友问我电视盒子哪个牌子好&#xff0c;我整理了目前市面上硬件、软件都表现不错的电视盒子品牌排行榜&#xff0c;看看目前最值得入手的电视盒子都有哪些。 第一&#…

界面控件DevExpress WPF Chart组件——拥有超快的数据可视化库!

DevExpress WPF Chart组件拥有超大的可视化数据集&#xff0c;并提供交互式仪表板与高性能WPF图表库。DevExpress Charts提供了全面的2D / 3D图形集合&#xff0c;包括数十个UI定制和数据分析/数据挖掘选项。 PS&#xff1a;DevExpress WPF拥有120个控件和库&#xff0c;将…

PHP流浪动物招领网站mysql数据库web结构apache计算机软件工程网页wamp

一、源码特点 PHP流浪动物招领网站 是一套完善的web设计系统&#xff0c;对理解php编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。 下载链接 nullhttps://download.csdn.net/download/qq_41221322/88190168视频演示 …