本文共 734 字,大约阅读时间需要 2 分钟。
SSRF(Server-Side Request Forgery)与CSRF的区别就是"请求伪造"发生在服务器端
CSRF是发生在客户端,强制客户机发送一个攻击者的请求
这个漏洞叫做"服务器端请求伪造"
强制服务器发送一个攻击者的请求
互联网上很多Web应用提供了从其他服务器(也可以是本地)获取数据的功能。
使用用户指定的URL,Web应用可以获取图片、文件资源等
如果Web应用对用户提供的URL和远端服务器返回的信息没有进行合适的验证或者过滤,就可能存在"请求伪造"的缺陷
是一种攻击者发起的伪造有服务器端发起请求的一种
例如
百度识图,提交一个照片的链接,百度服务器载入图片内容,实际上就是服务器发送一个请求
SSRF常见代码PHP实现,让服务器发送一个请求
通过PHP语言和curl拓展实现改功能
通过phpinfo()函数查看对curl拓展的支持,现在大部分wamp(Windows、apache、MySQL、PHP)套件均支持curl拓展
访问phpinfo.php
文件查看是否开启curl拓展
创建文件index.php
写下代码
然后浏览器
php脚本为我们发送一个请求,访问百度首页
会在服务器生成一个请求缓存文件
访问正常文件
端口扫描
查看服务器开放的端口,扫描内网的机器读取系统本地文件
内网Web应用指纹识别
攻击内网应用
SSRF漏洞的挖掘
参考:B站千峰
转载地址:http://felr.baihongyu.com/