阅读更多

0顶
0踩

互联网

转载新闻 研究人员发现 Swagger 相关漏洞

2016-07-08 14:25 by 副主编 mengyidan1988 评论(0) 有7253人浏览



网络安全机构Rapid7发现了一个有关Swagger驱动代码生成器的漏洞,该漏洞有可能让使用Node.js、PHP、Ruby和Java(也有可能包括其他语言)语言所开发的程序暴露在被黑客利用的危险之下。上周Charlie Osborne在ZDNet发表了一篇文章,文章讲述了这个漏洞。

当某个API被Swagger等API描述语言查看的时候,这个描述会被用来自动生成SDK,该SDK可以让开发人员更轻松的使用他们所选平台上相关的Web API。类似的是,这个API描述还会自动生成一个功能端点。理论上,这两者都有可能产生风险。这个漏洞不仅会在技术上影响到自动生成的API端点,还有可能导致两种结果:
  • 黑客能够修改在API描述被用来生成端点之前对该描述进行篡改。
  • 这个篡改有可能逃过API设计和开发人员的监测。

而在SDK端,情况则稍有不同,因为很多API的SDK都并非API提供者自己所提供的。SDK通常是第三方所开发的,尤其是在一些不那么流行的平台上。

Rapid7表示,研究人员在Swagger代码生成器(Swagger CodeGen)中找到了一个漏洞,该漏洞有可能会影响到文章开头所提到的那些语言,还有人担心其他一些语言也会受到影响。Swagger CodeGen接近于一个开源工具,许多第三方SDK生成产品提供商都在使用。Rapid7程序安全研究员Scott Davis表示,该漏洞允许攻击者远程执行代码,存在于 Swagger Code Generator 中,属于参数注入漏洞,允许攻击者在 Swagger JSON 文件中嵌入代码,使用 Java、PHP、NodeJS 和 Ruby 等语言开发的 Web 应用如果整合了 Swagger API 会受到影响。

简单说,这个漏洞的危险性在于,黑客可以在基于Swagger的API定义中植入恶意的可注入参数,从而导致自动生成的SDK也携带这些参数。之后,所有由这些SDK所开发的程序也会受到影响,API提供方和终端用户也有可能受到影响。例如,Rapid7发现这种基于Swagger的定义可以在Node.js、PHP、Ruby和Java环境中被远程操控。没有什么可以组织第三方使用基于Swagger的工具来对公共API进行描述,以及根据这些描述来自动生成多个SDK。开发人员要做的是,谨慎对待每一个SDK,在使用任何一个在网络上下载的SDK之前,都要怀疑它有可能存在恶意注入参数。 

另外,API提供商也需要保护自己的端点和基础系统不受一些常见的威胁的影响,例如代码注入。他们需要保护自己的API描述,以及相关的资产不会被篡改。

今年4月Rapid7最早将这个问题报告给了Swagger的供应商和API团队。6月16日CERT获得了补丁;23日,一个Metasploit模式被放出。目前Swagger建议开发人员使用OWASP ESAPI这个工具来净化代码以及缓和威胁。然而,OWASP ESAPI工具并不适用于所有语言。目前Swagger CodeGen的开发商已经放出了临时补救措施,但是这个措施只能解决一时的问题。

原文:Researchers Identify Security Vulnerability Involving Swagger
出处:sdk.cn
  • 大小: 41.6 KB
0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Swagger 高危漏洞影响 Java、PHP 和 Ruby等语言

    广泛使用的Swagger规格(今 年初重命名为OpenAPI)发现了高危漏洞,潜在影响到了Java、PHP、NodeJS和 Ruby等流行语言开发的应用。该漏洞允许攻击者远程执行代码,存在于Swagger Code Generator中,属于参数注入漏洞...

  • 如何防范SpringBoot 相关漏洞?

    Spring Boot可能是习惯于用Java的小伙伴们用的最多的一种应用框架,但是各位程序猿小伙伴知不知道Spring Boot有哪些平时不容易注意到的漏洞需要避免呢?小编今天就给大家介绍...

  • Swagger被曝高危漏洞,对Html、PHP、Java和 Ruby等开发应用都有影响

    Swagger是一个规范且完整的框架,提供...Swagger规格被广泛的使用在Html、PHP、Java和 Ruby等流行语言开发的应用中,其最近被曝出远程代码执行漏洞,潜在影响到了Java、PHP、NodeJS和 Ruby等流行语言开发的应用。 ...

  • Java相关框架漏洞

    文章目录 Fastjson Fastjson简介 历史漏洞 FastJson 漏洞发现 Json认识 FastJson寻找 FastJson报错识别 FastJson漏洞发现 漏洞利用 FastJson1.2.47反序列化漏洞 漏洞概述 影响版本 漏洞环境 漏洞检测 JNDI注入 + RMI...

  • 未授权访问漏洞大全

    未授权访问漏洞大全

  • SpringBoot漏洞

    spring漏洞

  • 最佳实践:解决 Swagger API 中的未授权访问漏洞

    投的前端开发,base杭州,10.27上午人工第一面...市场上有很多大厂,虽然打着同一杆大旗,但里面的业务五花八门,人员的福利体系也千差万别,拿到同一个大厂的offer,签约公司却很可能不一样,比如,腾讯、华为、阿里。

  • SpringBoot漏洞大全

    SpringBoot漏洞大全

  • SpringBoot漏洞复现

    SpringBoot基本上是Spring框架的扩展。Actuator是Springboot提供的用来对...在Actuator启用的情况下,如果没有做好相关权限控制,非法用户可通过访问默认的执行器端点(endpoints)来获取应用系统中的监控信息。......

  • 【burpsuite安全练兵场-服务端6】信息泄露漏洞-5个实验(全)

    【BP靶场portswigger-服务端6-信息泄露漏洞】5个实验-万文详细步骤

  • OpenSSH命令注入漏洞复现(CVE-2020-15778)

    2020年6月9日,研究人员Chinmay Pandya在Openssh中发现了一个漏洞,于7月18日公开。OpenSSH的8.3p1中的scp允许在scp.c远程功能中注入命令,攻击者可利用该漏洞执行任意命令。目前绝大多数linux系统受影响。 ...

  • API漏洞检测研究

    用于API漏洞检测的工具

  • Java代码审计漏洞挖掘(入门)

    6.4.3 小结 6.5 Web后门 6.5.1 简介 6.5.2 Java Web 后门案例讲解 6.5.3 小结 6.6 逻辑漏洞 6.6.1 简介 6.6.2 漏洞发现与修复案例 6.6.3 小结 6.7 前端配置不当 6.7.1 简介 6.7.2 漏洞发现与修复案例 6.7.3 小结 6.8...

  • MATLAB实现参数化重采样时频变换(PRTF)用于振动与声音信号故障诊断

    内容概要:本文详细介绍了参数化重采样时频变换(PRTF)在振动与声音信号故障诊断中的应用。首先通过仿真信号展示PRTF的基本原理,即通过非线性时间轴映射提高时频分辨率,特别是在处理非平稳信号时的优势。接着讨论了PRTF的具体实现步骤,包括重采样、时频分析、坐标系转换等关键技术点。文中还提供了多个实际案例,如齿轮箱故障诊断、压缩机阀片断裂检测、蝙蝠回声定位信号处理等,展示了PRTF在不同应用场景中的灵活性和有效性。此外,文章分享了一些实用经验和技巧,如窗函数选择、抗混叠滤波、多尺度融合等,帮助读者更好地理解和应用PRTF。 适合人群:具备一定MATLAB编程基础和技术背景的信号处理工程师、研究人员。 使用场景及目标:适用于处理非平稳信号,尤其是振动和声音信号的故障诊断。目标是提高时频分辨率,清晰呈现故障特征,从而快速准确定位故障源。同时,也为研究者提供了一种新的信号处理工具,拓展了传统时频分析方法的应用范围。 其他说明:PRTF虽然强大,但在某些情况下并非最佳选择,如处理稳态信号或需要极高频率分辨率的任务。因此,使用者应根据具体情况选择合适的工具。此外,由于PRTF计算量较大,实时性要求较高的场景需考虑硬件加速或其他优化手段。

  • 毕设课设-基于MATLAB的汽车出入库识别系统.zip

    基于MATLAB的汽车出入库识别系统是一份适用于毕业设计或课程设计的项目,它主要围绕车辆进出仓库的自动识别技术开发。该系统充分利用MATLAB这一强大的数学计算和图形处理软件,实现了汽车识别的核心功能。 项目主要包括以下几个关键部分: 1. **图像采集与预处理**:通过摄像头或传感器捕捉汽车的实时图像,对图像进行预处理,如灰度化、边缘检测或特征提取,提高后续识别的精度。 2. **目标检测与识别**:利用MATLAB的机器视觉工具箱,可能采用了模板匹配、特征点匹配(如SIFT、SURF或HOG)、或者现代的深度学习技术(如卷积神经网络CNN),来识别出汽车的特征。 3. **车牌识别**:针对汽车的车牌进行识别,这通常涉及到字符分割、识别和验证,可能结合了OCR(Optical Character Recognition)技术。 4. **数据分析与管理系统**:收集并分析出入库数据,用于优化仓库管理策略,如实时流量监控、车辆调度等。 5. **文档与代码完整性**:项目不仅提供了完整的工作流程和算法实现,还包含了详尽的README.md文档,以便使用者了解项目的结构和使用方法,以及注意事项。 这个系统的优势在于将理论知识应用到实际场景中,既锻炼了学生的编程能力,也展示了MATLAB在计算机视觉领域的实用性。通过下载和交流,有助于参与者提升自己的技术能力,并推动自动化仓储系统的研发和优化。

  • (源码)基于51单片机的密码锁控制器.zip

    # 基于51单片机的密码锁控制器 ## 项目简介 本项目是一个基于51单片机的密码锁控制器,通过结合LCD显示器和键盘,实现了一个简单的密码输入与验证系统。该系统可以用于需要密码保护的应用场景,如门禁系统、保险箱等。用户可以通过键盘输入密码,系统会根据输入的密码进行验证,并通过LED灯显示验证结果。 ## 项目的主要特性和功能 1. LCD显示功能使用LCD显示器实时显示密码输入的相关信息。 2. 密码设置与修改用户可以设置和修改一个4位数字(09)的密码。 3. 超级用户密码系统内置一个超级用户密码“1234”,用于特殊权限操作。 4. 密码验证反馈密码输入正确时,系统会亮绿灯密码输入错误时,系统会亮红灯。 ## 安装使用步骤 ### 前提条件 假设用户已经下载了本项目的源码文件,并具备基本的单片机开发环境(如Keil等)。 ### 步骤 1. 解压源码文件将下载的源码文件解压到本地目录。

  • (源码)基于Python和强化学习算法的智能体训练系统.zip

    # 基于Python和强化学习算法的智能体训练系统 ## 项目简介 本项目是一个基于Python和强化学习算法的智能体训练系统,旨在通过深度学习和策略优化技术,训练智能体在复杂环境中进行决策和行动。项目结合了多种强化学习算法,如TRPO(Trust Region Policy Optimization),并使用了如Pommerman这样的复杂环境进行训练和评估。 ## 项目的主要特性和功能 强化学习算法包括TRPO在内的多种强化学习算法,适用于连续动作空间的强化学习任务。 环境模拟使用Pommerman环境进行智能体的训练和评估,环境包含复杂的棋盘布局和动态变化的炸弹、火焰等元素。 预训练与微调支持预训练模型的加载和微调,加速训练过程。 多模型评估支持多个模型的同时评估,比较不同模型在相同环境下的表现。 状态抽象与特征提取通过状态抽象和特征提取,优化智能体的决策过程。

  • 制造业2022年制造业上市公司高质量发展:城市群与主要城市百强企业分布分析

    内容概要:本文档展示了2022年中国制造业上市公司百强企业在不同城市群和城市的分布情况。从城市群角度看,百强企业主要集中在长三角(19家)、粤港澳(16家)和京津冀(11家)三大国家级城市群,这些地区凭借强大的发展基础、完善的产业链和优越的营商环境成为制造业高质量发展的领头羊。从具体城市分布来看,深圳和北京各有10家企业上榜,上海有9家。其中,深圳以比亚迪、中兴等大企业为代表,在营收规模上位居全国第一;北京依托科技和人才优势支持企业发展;上海则在高端制造业特别是集成电路领域处于领先地位。 适合人群:对中国经济地理、制造业发展趋势感兴趣的读者,以及从事相关行业研究的专业人士。 使用场景及目标:①了解中国制造业区域布局和发展趋势;②为政策制定者提供参考依据;③为企业投资决策提供数据支持。 阅读建议:建议重点关注各城市群和城市的具体数据,结合当地产业特色和发展优势进行分析,以便更好地理解中国制造业的空间分布规律及其背后的原因。

  • 房地产营销策划 -湖南涟源博盛生态园年度营销方案.pptx

    房地产营销策划 -湖南涟源博盛生态园年度营销方案.pptx

Global site tag (gtag.js) - Google Analytics