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

学校官方网站个人信用信息服务平台

学校官方网站,个人信用信息服务平台,网站建设com,郑州展厅设计公司前言 SSRF漏洞是一种在未能获取服务器权限时#xff0c;利用服务器漏洞#xff0c;由攻击者构造请求#xff0c;服务器端发起请求的安全漏洞#xff0c;攻击者可以利用该漏洞诱使服务器端应用程序向攻击者选择的任意域发出HTTP请求。 很多Web应用都提供了从其他的服务器上…前言 SSRF漏洞是一种在未能获取服务器权限时利用服务器漏洞由攻击者构造请求服务器端发起请求的安全漏洞攻击者可以利用该漏洞诱使服务器端应用程序向攻击者选择的任意域发出HTTP请求。 很多Web应用都提供了从其他的服务器上获取数据的功能根据用户指定的URLWeb应用可以获取图片、下载文件、读取文件内容等。这种功能如果被恶意使用将导致存在缺陷的Web应用被作为代理通道去攻击本地或远程服务器。这种形式的攻击被称为服务端请求伪造攻击。 一般情况下SSRF攻击的目标是外网无法访问的内部系统 本文主要分享以下技术 一、漏洞原理 二、SSRF挖掘技巧 三、常见的SSRF攻击 3.1、针对服务器本身的SSRF攻击 3.2、针对其他后端系统的SSRF攻击 3.3、端口扫描 3.4、对内网web应用进行指纹识别及攻击其中存在漏洞的应用 3.5、文件读取和命令执行 四、绕过SSRF的常见防御 4.1、绕过利用黑名单防御 4.2、绕过利用白名单的防御 4.3、通过开放重定向绕过SSRF过滤器 五、SSRF防御 漏洞原理 SSRF的形成大多是由于服务端提供了从其他服务器获取数据的功能但是没有对目标地址进行过滤和限制。 主要攻击方式 1.对外网、服务器所在内网、本地进行端口扫描获取一些服务的banner信息。 2.攻击运行在内网或者本地的应用程序。 3.对内网的web应用进行指纹识别(通过请求默认文件得到特定的指纹)对资产信息进行识别。 4.利用file协议读取本地文件。 5.攻击内外网的web应用主要是使用HTTP GET请求就可以实现的攻击等。 比如一个正常的Web应用本应该从指定URL获取网页文本内容或加载指定地址的图片而攻击者利用漏洞伪造服务器端发起请求从而突破了客户端获取不到数据的限制如内网资源、服务器本地资源等。 如下代码 ?php$url$_GET[url];echo file_get_contents($url); ? 这段代码使用file_get_contents函数从用户指定的URL获取图片并展示给用户。此时如果攻击者提交如下payload就可以获取到内网主机HTTP服务8000端口的开放情况(http://example.com/ssrf.php?urlhttp:192.168.209.134:8000) SSRF挖掘技巧 目前常见的漏洞挖掘方式有两种 1、从web功能上挖掘 ①分享通过url地址分享网页内容 ②转码服务 ③在线翻译 ④图片的下载与加载 ⑤图片、文章收藏功能 ⑥未公开的API实现及调用URL的功能 2、从URL关键字挖掘 Share、wap、url、link、src、source、target、u、3g、display、sourceURL、imageURL、domain…… 常见的SSRF攻击 SSRF攻击通常利用信任关系来进行攻击并执行未经授权的操作。这些信任关系可能与服务器本身有关也可能与同一系统内的其他后端系统有关。 3.1、针对服务器本身的SSRF攻击 在针对服务器本身的SSRF攻击中攻击者诱使应用程序通过其环回网络接口向承载应用程序的服务器发出HTTP请求。通常这将涉及为URL提供一个主机名例如127.0.0.1(指向回送适配器的保留IP地址)或localhost(同一适配器的常用名称)。 例如一个购物应用程序该应用程序使用户可以查看特定商店中某商品是否有库存。为了提供库存信息应用程序必须根据所涉及的产品和商店查询各种后端REST API。该功能是通过将URL通过前端HTTP请求传递到相关的后端API端点来实现的。因此当用户查看某件商品的库存状态时他们的浏览器会发出如下请求 他们的浏览器会发出如下请求 POST /product/stock HTTP/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 118stockApihttp://stock.weliketoshop.net:8080/product/stock/check%3FproductId%3D6%26storeId%3D1 服务器向指定的URL发出请求检索库存状态然后将其返回给用户。 在这种情况下攻击者可以修改请求以指定服务器本身本地的URL。例如 POST /product/stock HTTP/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 118stockApihttp://localhost/admin 在这里服务器将获取/admin的内容并将其返回给用户。 现在攻击者可以直接访问/admin;但是通常只有适当的经过身份验证的用户才能访问管理功能。因此直接访问URL时将不会看到任何有价值的内容。但是当对/admin的请求来自本地计算机时将绕过常规的访问控制该应用程序授予对管理功能的完全访问权限因为该请求来自受信任的位置。 为什么应用程序会以这种方式运行并且隐式信任来自本地计算机的请求?发生这种情况可能有多种原因 1、该访问控制检查可能会在应用服务器的前面利用一个不同的组件来实现与服务器本身建立连接后将绕过检查。 2、为了灾难恢复的目的该应用程序可能允许无需登录即可对本地计算机上的任何用户进行管理访问这为管理员提供了一种在丢失凭据的情况下恢复系统的方法。这里假设是来自服务器本身的用户才能完全受信任。 3、管理界面可能正在侦听的端口号与主应用程序不同因此用户可能无法直接访问。 在这种信任关系中由于来自本地计算机的请求与普通请求的处理方式不同这些信任关系会使SSRF成为严重漏洞。 3.2、针对其他后端系统的SSRF攻击 SSRF引起的另一种信任关系是服务器能够与用户无法直接访问的其他后端系统进行交互这些系统通常具有不可路由的专用IP地址。由于后端系统通常受网络拓扑保护因此它们的安全状态较弱。在许多情况下内部后端系统包含敏感功能能够与该系统进行交互的任何人都可以在不进行身份验证的情况下对其进行访问。 在前面的示例中假设在后端URL处有一个管理界面 https://192.168.0.68/admin。在这里攻击者可以通过提交以下请求来利用SSRF漏洞来访问管理界面 POST /product/stock HTTP/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 118stockApihttp://192.168.0.68/admin 3.3、端口扫描 http://example.com/ssrf.php?urlhttp:ip:21/ http://example.com/ssrf.php?urlhttp:ip:443/ http://example.com/ssrf.php?urlhttp:ip:80/ http://example.com/ssrf.php?urlhttp:ip:3306/等 我们可以通过响应时间、返回的错误信息、返回的服务Banner信息、响应时间等来对端口开放情况进行给判断。 3.4、对内网web应用进行指纹识别及攻击其中存在漏洞的应用 大多数web应用都有一些独特的文件和目录通过这些文件可以识别出应用的类型甚至详细的版本。基于此特点可利用SSRF漏洞对内网Web应用进行指纹识别如下Payload可以识别主机是否安装了WordPress http://example.com/ssrf.php?urlhttps%3A%2F%2F127.0.0.1%3A443%2Fwp-content%2Fthemes%2Fdefault%2Fimages%2Faudio.jpg得到指纹后便能有针对性地对其存在的漏洞进行利用如下payload展示了如何利用SSRF漏洞攻击内网的JBOSS应用 http://example.com/ssrf.php?urlhttp%3A%2F%2F127.0.0.1%3A8080%2Fjmx-console%2FHtmlAdaptor%3Faction%3DinvokeOp%26name%3.5、文件读取和命令执行 1、文件读取 如果攻击者指定了file协议则可通过file协议来读取服务器上的文件内容如下 http://example.com/ssrf.php?urlfile:///etc/passwd2、命令执行 例如PHP环境下利用expect协议执行系统命令如下 http://example.com/ssrf.php?urlexpect://id绕过SSRF的常见防御 4.1、绕过利用黑名单防御 一些应用程序阻止包含主机名(如127.0.0.1和localhost)或敏感URL(如/admin)的输入/admin。在这种情况下绕过方法如下 1、替代IP127.0.0.1例如2130706433、017700000001、127.1。 2、注册您自己的域名该域名解析为127.0.0.1。您可以spoofed.burpcollaborator.net用于此目的。 3、使用URL编码或大小写变化对阻塞的字符串进行混淆。 4.2、绕过利用白名单的防御 某些应用程序仅允许输入匹配以允许值开头或包含允许值的白名单的输入。在这种情况下您有时可以利用URL解析中的不一致来绕过过滤器。 URL规范包含许多功能在实现URL的临时分析和验证时可能会被忽略 1、使用字符在主机名之前的URL中嵌入凭据。例如https://expected-hostevil-host。 2、使用该#字符来指示URL片段。例如https://evil-host#expected-host。 3、利用DNS命名层次结构将所需的输入放入DNS名称中。例如https://expected-host.evil-host。 4、使用URL编码字符来混淆URL解析代码如果实现过滤器的代码与执行后端HTTP请求的代码以不同的方式处理URL编码的字符则特别有用。 5、这些技术可以组合在一起使用。 4.3、通过开放重定向绕过SSRF过滤器 通过利用开放重定向漏洞有时可以绕过任何基于过滤器的防御。 假设严格验证了用户提交的URL以防止恶意利用SSRF行为但是允许使用URL的应用程序包含一个打开的重定向漏洞。提供用于使后端HTTP请求支持重定向的API可以构造一个满足过滤条件的URL并导致将请求重定向到所需的后端目标。 例如假设应用程序包含一个开放重定向漏洞其中包含以下URL/product/nextProduct?currentProductId6pathhttp://evil-user.net返回重定向到http://evil-user.net 以利用开放重定向漏洞绕过并按如下方式利用SSRF漏洞 POST /product/stock HTTP/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 118stockApihttp://weliketoshop.net/product/nextProduct?currentProductId6pathhttp://192.168.0.68/admin 这种SSRF漏洞之所以有效是因为应用程序首先验证了提供的stockAPIURL是否在允许的域上然后应用程序提供的URL触发重定向并向攻击者选择的内部URL发出请求。 SSRF防御 SSRF漏洞的防御主要是保证用户请求的合法性、服务器行为的合规性两个方面。 1、限制请求端口只能为web端口只允许访问HTTP和HTTPS的请求; 2、过滤返回的信息; 3、禁止不常使用的端口; 4、限制不能访问内网的IP防止对内网进行攻击; 5、对于DNS重绑定使用DNS缓存或者Host白名单
http://www.hkea.cn/news/14260224/

相关文章:

  • 网站建设付款页面WordPress导入hexo
  • 在建设局网站上怎么样总监解锁杭州网络营销推广公司
  • 怎么做黑客攻击网站网站域名收费
  • o2o平台网站建设wordpress前端验证
  • 建筑工程 技术支持 东莞网站建设360建筑网证书估价
  • 做网站需要多少深圳微信商城网站设计费用
  • 响应式建站网站网站建设 标书
  • 本公司经营网站建设商标注册号在哪个位置
  • 株洲企业网站建设工作合肥建设工程竣工结算备案网站
  • 免费网站转app网络广告营销环境发生了哪些变化
  • 做网站的书籍为什么网页不能打开建设银行网站
  • 网站自然优化php做网站代码
  • 怎样用ps做网站wordpress门户网站模板下载
  • 买网站服务器生物公司网站建设方案
  • 微信端网站开发流程图o2o与网站建设
  • 自己电脑做网站 外网无法访问灵台县门户网站
  • 中国十大网站域名万网主体新增网站备案需要是滴么
  • 有关毕业设计的网站企业网站建设公司怎么做
  • 诸城做网站公司网站不用备案
  • 做职业背景调查的网站wordpress 导航高亮
  • ...无锡网站制作全国建筑网站
  • 为什么要用国外服务器做网站泉州做网站开发公司
  • 高性能网站建设在线阅读网络营销发展方案策划书
  • 简单的网站php开发教程深圳网站建设 公司元
  • 网站的二维码怎么做的直播软件有哪些平台
  • 织梦资源下载站网站模板七牛镜像存储 wordpress 插件
  • 辽宁省城乡和住房建设厅老网站wordpress多形式
  • 郸城建设银行网站商标logo图片
  • 网站建设及推广优化做兼职写小说网站
  • 手机网站开发app与网站的区别功能