SSRF攻击原理
2024-08-31 02:31:40
什么是SSRF
一个对外的Web接口,改接口能让用户控制curl命令,去访问别的web服务。
简图如下
想象一下当用户请求的baidu.com/x.php?image=google.com/1.jpg
改成 baidu.com/x.php?image=private.com/php.info
,是不是觉得原本不可能访问到内网的主机,现在就很容易就能做到了。
原理
PHP代码演示:
$url = $_GET['URL'];
curl($url);
function curl($url){
$ch = curl_init(); // 初始化curl会话对象
curl_setopt($ch,CURLOPT_URL,$url); // 抓取URL并把它传递给浏览器
curl_setopt($ch,CURLOPT_HEADER,0);
curl_exec($ch); // 执行请求
curl_close($ch);
}
1.查看代码的时候检查是否使用curl_setopt( )函数;
2.在看传入的url是否是来自外部;
防护
跳转的url参数只能是白名单里面的url。
最新文章
- MongoDB安装与故障
- HTML 5 的自定义 data-* 属性和jquery的data()方法的使用
- 1125mysqbinlog日志
- jqGird 学习记录
- Java设计模式6:策略模式
- hdu–2369 Bone Collector II(01背包变形题)
- 数组第K小数问题 及其对于 快排和堆排 的相关优化比较
- C# 实现抓取网站页面内容
- ***PHP请求服务curl以及json的解析
- VJ1061迎春舞会之三人组舞
- 关于android 自己实现 back键 home键
- 《Programming WPF》翻译 第8章 6.我们进行到哪里了?
- Matlab最新的官方文档中文翻译
- Qt:添加点击事件的Label并显示图片
- 配置nginx支持path_info模式
- rem的在vue项目中使用配置,,浏览器的兼容性之Mate标签
- Spring Boot 全文搜索引擎 ElasticSearch
- D. Vasya and Triangle
- 从零搭建和配置OSX开发环境
- 通过改变unity中物体的alpha值实现若隐若现的效果
热门文章
- hdu5402 Travelling Salesman Problem
- 病毒侵袭持续中 HDU - 3065 AC自动机
- 一篇文章图文并茂地带你轻松学完 JavaScript 闭包
- ElasticSearch 搜索引擎概念简介
- Docker网络模式详解
- 【原创】k8s之job和Cronjob
- 牛客网多校第3场 C-shuffle card 【splay伸展树】
- 一个操作系统的实现sudo mount -o loop pm.img /mnt/floppy mount point /mnt/floppy does not exist losetup device is busy
- POJ - 3665 icow
- Celery&;Flower文档笔记