前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SSRF漏洞简单分析

SSRF漏洞简单分析

作者头像
雪痕@
发布2020-09-27 10:28:36
5710
发布2020-09-27 10:28:36
举报
文章被收录于专栏:代码审计代码审计

什么是SSRF漏洞

SSRF(服务器端请求伪造)是一种由攻击者构造请求,服务器端发起请求的安全漏洞,所以,一般情况下,SSRF攻击的目标是外网无法访问的内部系统。

SSRF漏洞形成原理。

SSRF的形成大多数是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤和限制,比如操作服务端从指定URL获取网页文本,加载指定地址的图片,利用的是服务端的请求伪造。所以,SSRF是利用存在缺陷的Web应用作为代理,攻击远程和本地的服务器。 主要的攻击方式:

  • 对外网所在内网、本地进行端口扫描,获取一些服务的banner信息。
  • 攻击运行在内网或本地的应用程序。
  • 对内网Web应用进行指纹识别,识别企业内部的资产信息。
  • 利用file协议读取本地文件等等 参考文献:《Web安全攻防》

SSRF漏洞代码分析

代码语言:javascript
复制
<?php
function curl($url){
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_HEADER,0);
    curl_exec($ch);
    curl_close($ch);
}
$url = $_GET['url'];
curl($url);
?>

在ssrf页面中,程序获取GET请求url,通过curl_init()初始化curl组件后,将参数带入curl_setopt(ch,CURLOPT_URL,url),然后调用curl_exec请求该url,服务会将banner信息返回客户端。功能是获取url的内容并返回页面上。例如,请求百度。

简单利用

如果我们将url改为本地文件路径,我们可以通过file协议读取本地文件。例如我们在参数url后面接file:///c:/windows/win.ini

SSRF修复建议

  1. 限制请求的端口只能为Web端口,只允许访问HTTP/HTTPS的请求
  2. 限制不能访问内网IP
  3. 屏蔽返回的详细信息
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是SSRF漏洞
  • SSRF漏洞形成原理。
  • SSRF漏洞代码分析
  • 简单利用
  • SSRF修复建议
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档