当前位置: 首页 > news >正文

web-ssrf

目录

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.lryc.cn/news/115207.html

相关文章:

  • 【HarmonyOS】【续集】实现从视频提取音频并保存到pcm文件功能(API6 Java)
  • MySQL为什么要使用 B+Tree 作为索引结构?
  • Three.js阴影
  • VSCode Remote-SSH (Windows)
  • 现代C++中的从头开始深度学习【1/8】:基础知识
  • Jwt(Json web token)——使用token的权限验证方法 用户+角色+权限表设计 SpringBoot项目应用
  • SpringWeb项目核心功能总结
  • Django------信号
  • HTML5 中新增了哪些表单元素?
  • [考研机试] KY20 完数VS盈数 清华大学复试上机题 C++实现
  • re学习(30)攻防世界-hackme(代码复原2)
  • Go Windows下开发环境配置(图文)
  • 【人工智能概述】python妙用 __str__()
  • android kernel移植5-RK3568
  • C++——string类介绍
  • 教雅川学缠论07-中枢实战众泰汽车000980
  • REDIS主从配置
  • 【测试】软件测试工具JMeter简单用法
  • 五个授权关键,为智能驾驶量产赋能
  • 【代码随想录-Leetcode第三题:977. 有序数组的平方】
  • [运维|中间件] Apache APISIX Dashboard部署(持续踩坑更新。。。)
  • Vue中watch监听属性新旧值相同问题解决方案
  • awk案例练习
  • Debian 12.1 正式发布
  • neo4j清空数据库
  • SpringBoot整合Mybatis-Plus
  • 在langchain中使用自定义example selector
  • pytest常用执行参数详解
  • 本地项目如何连接git远程仓库
  • 力扣 494. 目标和