首页 > 编程知识 正文

路由器设备工作模式,RASPBERRY

时间:2023-05-05 13:22:27 阅读:170068 作者:407

定义RASP运行时APP自我保护(RASP )是一种内置于APP应用程序或APP运行时环境中的安全技术,用于在APP应用层检查请求,以实时检测攻击和滥用情况。

RASP产品通常包括以下功能:

通常,对APP应用上下文进行解包和检查的APP应用请求产品具有在多个执行点分析完整请求、执行监视和阻止,以及在某些情况下修改请求以删除恶意内容的完整功能,这些功能适用于rest风格的API访问此外,特定的代码行仪表板功能和使用情况报告用法示例RASP的主要功能是保护web APP应用免受已知和新出现的威胁的影响。 在某些情况下,RASP会部署在APP应用层,在漏洞被利用之前阻止攻击,但在大多数情况下,RASP工具会在检测到攻击之前处理请求并阻止这些违规操作。

这些基本上是IDS和WAF的经典力量,为什么需要新的方案呢? 答案不在于RASP要做什么,而在于它在APP应用程序的上下文中如何工作。 这里可以判断攻击是否相关,在广泛的场景中更有效地发挥作用。 让我们仔细看看客户的需求。

市场驱动的RASP是一项相对较新的技术,因此当前的市场驱动力主要集中在解决两个不同“购买中心”的安全需求上。 安全团队通常在寻找可靠的WAF替代品,而无需严格的管理需求,但开发团队需要安全技术来保护现有开发流程框架中的APP应用。

安全团队的需求是有争议的,web APP应用防火墙通常使用两种检测方法:黑名单和白名单。 黑名单是检测。 通常,应避免——收到的APP应用请求与攻击特征库不匹配。 例如SQL注入。 黑名单有助于筛选对APP注入的许多基本攻击,但新攻击的变体层出不穷,攻击者继续寻找绕过它们的方法,黑名单像SQL注入的许多变体一样保持最新但白名单是WAF提供真正价值的地方。 白名单是通过观察和学习可接受的APP应用行为,记录一段时间内的合法行为,阻止不符合批准的行为列表的请求。 这个方法提供了比黑名单更大的优点。 该列表特定于受监视的APP应用程序,因此可以提供——个枚举的功能,而不是尝试按恶意请求进行分类,从而更轻松、更快地发现欺诈行为。

遗憾的是,开发者抱怨WAF未能完成白名单的制定,始终处于学习模式,跟不上现代软件开发的步伐,于是将其列入黑名单并执行。 此外,WAF还没有完全启用api,配置需要安全专业人员管理和协调规则,在IaaS公共云上部署时缺乏api支持是失败的。 云本地结构缺乏支持,包括自动扩展APP应用、临时APP应用堆栈、模板和云脚本/部署支持。 随着APP应用团队变得更加敏捷,随着企业不断扩大云足迹,传统的WAF变得不再那么有用。

WAF提供真正的价值——,特别是商用WAF“安全即服务”产品,关注黑名单和DDoS的缓和等附加保护。 云通常作为代理服务运行,在将请求传递到APP应用程序或RASP解决方案之前过滤“云”请求。 但是,该WAF部署模式受限于“Half-a-WAF”状态——,缺乏白名单功能。 传统WAF继续为有时间构建和使用白名单的非敏捷本地APP应用程序工作。 因此,现有的WAF在很大程度上没有被“撕裂或替换”,但在云计算和更敏捷的开发团队中很大程度上没有使用。

安全团队正在寻找有效且易于管理的APP应用安全工具来代替WAF。 并非所有的缺陷都能在代码中迅速修复,因此必须涵盖APP应用缺陷和技术债务。

开发人员倾向于询问可以完全纳入现有APP应用程序的构建和鉴定流程的解决方案。 为了与开发流水线集成,安全工具需要付出更多的努力来抵御攻击。 解决方案需要像现代APP应用开发一样敏捷,并与自动化功能兼容。 您需要扩展以适应APP应用程序,“了解”APP应用程序,并在APP应用程序运行时定制保护。 安全工具不应该要求开发者是安全专家。 开发团队“左移”,为了在他们的过程中更快地获得安全的测量标准和工具,他们需要在预生产环境和生产环境中都发挥作用的工具。

功能需求市场的推动改变了产品功能的需求

有效性简单来说就是现有的工具不能很好地发挥作用,出现过多的错误信息而无法使用,或者需要过多的维护而浪费时间和精力。 在更多情况下,RASP提供了完整的功能。 在运行时不需要学习APP的功能。 在上下文中执行可以扩展APP连接威胁的范围,并可以在阻止模式下执行。

我们知道,随着攻击者的发展,对APP应用程序框架和语言的攻击越来越多,从网络到服务器,再到APP应用程序。 RASP的区别在于在安全策略中包含APP应用上下文的能力。 许多WAF提供了“积极”的安全功能。 APP应用程序请求白名单,但RASP内置于APP应用程序中,可提供其他APP应用程序访问和仪表板。 此外,一些RASP平台通过识别可疑的模块和代码行来帮助开发人员。 对许多开发团队来说,RASP越准确地识别脆弱的代码,更好的检测能力就越不重要。

由于API支持、自动化云服务和DevOps中断了APP提供,对安全产品编程接口的需求迅速扩大。 API是一种构建、测试和部署APP应用程序的方法。 RASP等安全产品通过API提供完整的平台功能。 ——在某些情况下作为构建服务器插件,或者作为云服务——,供软件工程师在本地使用。 它还提供在APP应用程序堆栈上运行的代理、容器或插件。

覆盖率和语言支持仍然是RASP的最大问题,在最初几年阻碍了采用。 RASP平台向不同语言或平台提供安全性,并需要定制规则和逻辑以检测攻击

击。大多数都对Java和.net等核心平台提供了全面支持;除此之外,对Python、PHP和Node.js、Ruby的支持仍然参差不齐。另一部分是环境的复杂性—不仅是服务器端,还有客户端。在过去的几年里,框架、客户端实用程序、面向web的API的不断发展,以及数据编码的不断变化。RASP需要解析用户提供的输入,处理运行JavaScript和Angular.js、微服务架构,可能还有多个版本的API的不同客户端,所有这些都在同一时间发生。应用程序环境的多样性使得RASP供应商很难提供全面的支持。

部署前验证

在生产周期中越早发现错误,就越容易和便宜修复它们。因此,通常测试,特别是安全测试,在开发过程的早期工作得更好。越来越多的应用程序安全测试是在部署前执行的,而不是在应用程序部署后依赖漏洞扫描程序和渗透测试程序。当然,这在其他以应用程序为中心的工具中是可能的,但是RASP更容易构建到自动化测试中,通常可以确定应用程序的哪些部分存在缺陷,并且通常在红队练习和预生产“蓝/绿”部署场景中使用。

业务需求 与工单系统集成

几乎每个安全平台现在都必须与内部系统集成,以便在发现、调查、修复、测试和重新部署时跟踪安全问题。工单系统为主要的集成工作,如控制任务的分配等,所以这种类型的集成是必不可少的。可能还有与Syslog、SIEM和Splunk集成的请求—大多数供应商都提供了这些特性。

遵从性

WAF被广泛用于PCI-DSS—本质上是用于处理信用卡数据的系统的合同强制安全——因为它被特别列为面向web应用程序的适当控制。随着WAF的流行减弱,而PCI需求仍然存在,RASP被用作补偿控制。事实上,一些RASP供应商已经与主要的QSA组织进行了第三方验证被审查为适用于应用程序安全性的控件。

虚拟补丁

大多数公司都有大量的“技术债务”,因为应用程序及其平台包含的安全漏洞比开发团队能够在短时间内修复的要多。使用基本的安全补丁保持开发、QA和生产版本的底层软件的更新是一项挑战,更不用说修复所有易受攻击的代码了。RASP帮助检测哪些版本的应用程序库是过时的,如果脆弱子模块被用来了解是否有必要打补丁,也通过提供“虚拟补丁”阻止对残余漏洞的攻击。大多数开发和运营团队不会跟踪永无休止的安全补丁流,因此拥有自动化发现和报告的工具是很有帮助的。这种功能很少出现在公司的前五大需求中,但在RFPs(征求建议)中仍然很常见。

DevOps和度量

度量标准对于确定是否存在问题、应该将资源投向何处以及安全投资是否实际有效非常关键。RASP可以对应用程序功能和开源使用进行分类,了解每个API的参数的正确数量和类型,然后在运行的应用程序的代码中应用策略。但它也可以理解运行时代码路径,服务器交互,框架的细微差别,库用法和自定义代码。这有助于安全团队可视化代码中的安全问题,并定制他们希望的响应方式。在预生产中部署它,可以在生产部署之前发现缺陷。最后,一些RASP平台还提供了IAST(交互式应用程序安全测试),或在开发人员的桌面上进行部署,以便在代码签入之前运行,在开发过程的早期发现问题。

技术概览 如何工作

在过去的几年里,RASP市场已经有了一些基本的方法和变化-检测能力、可靠性和性能有了一些增强。理解技术对于理解不同产品的优势和弱点比较重要。

原生API回调:在这种部署模型中,系统在应用程序堆栈中的关键节点插入传感器或回调,以观察应用程序代码、库、框架和底层操作系统之间的应用程序行为。这种方法使用原生应用程序分析器/插桩API来监视运行时应用程序行为。当传感器被命中时,RASP会得到一个回调,并根据上下文相关的策略评估请求。例如,检查数据库查询是否有SQL注入(SQLi)。但是它们也提供了请求反序列化“沙箱”来检测恶意的有效负载,以及我所说的“检查点”:一个到达检查点A但绕过检查点B的请求可以被认为是具有高度可信度的敌意的。这些方法提供了比WAF先进得多的应用程序监视,可以细致地检测攻击和滥用。但是,完整的可视化需要监视所有相关的接口,这会带来性能和可伸缩性方面的成本。客户需要在全面覆盖和性能之间取得平衡。
-** Servlet过滤器和插件**:一些RASP平台为web服务器插件或Java Servlet,通常安装在Apache Tomcat、JBoss或Microsoft . net中以处理请求。插件在执行功能(如支付事务)之前对请求进行过滤,在收到请求时对每个请求应用检测规则。与已知攻击签名匹配的请求被阻止。这实际上与WAF黑名单具有相同的功能。这是在没有深入应用程序的情况下,可以有效地阻止恶意请求。

库或JVM替换:一些RASP产品是通过替换标准应用程序库和或JAR文件来安装的,而且至少有一家供应商提供了完整的替换Java虚拟机。这个方法基本上把对底层平台的调用劫持到一个自定义应用程序中。RASP平台被动地观察应用程序对支持功能的调用,在请求被拦截时应用规则。例如,在JVM替换的情况下,RASP可以在类加载到内存时修改它们,增加或修补应用程序及其堆栈。与插桩集成一样,这种方法提供了对应用程序行为和用户请求的完整可见性。

静态混合:像许多防火墙一样,几个RASP平台可以部署为反向代理。在一种情况下,一种新的变体耦合代理、一个仪表模块和一个功能有限的静态分析扫描器。本质上,它生成一个代码属性图(类似于静态分析工具)来为所有应用程序和 开放源码功能构建自定义安全控件。这种方法需要完全集成到应用程序构建管道中,以扫描所有源代码。然后,在部署应用程序时,它将扫描结果绑定到RASP引擎中,有效地提供一个白名单特定于应用程序的功能。安全控制是根据应用程序定制的,具有出色的代码覆盖率——代价是完全的构建集成、需要定期重新构建CPG配置文件,以及增加了一些安全性检查的延迟。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p7wQRsWF-1599276061120)(C:UsersyongPicturesA9R21DC.jpg)]

检测

RASP攻击检测是复杂的,根据请求类型使用不同技术。大多数产品同时检查请求及其参数,以多种方式检查每个组件。RASP在检测应用程序攻击方面比它的前辈要有效得多。与使用基于签名的检测的其他技术不同,RASP监视应用程序行为和外部引用,映射应用程序函数和第三方代码的使用,映射执行序列,反序列化有效负载,并相应地应用策略。类似沙箱请求来查看它们如何发挥作用,使用语义分析来检测滥用,输入跟踪来检测人为引入的代码,以及行为分析来配合签名和IP地址信誉等传统工具。这不仅可以实现更准确的检测,还可以通过优化检查的类型来提高性能。 根据请求上下文和代码执行路径执行。在使用时执行规则,可以更容易地理解正确的用法和检测误用。

大多RASP平台也采用结构分析,能够了解正在使用的框架及框架的常见利用。RASP可以访问整个应用程序栈,可以检测第三方代码库的变化—相当于对开源库的漏洞扫描,来检测过期代码的使用。RASP还可以快速检查传入请求和检测注入攻击。有几种方法—一种是使用一种形式的记号化(用记号替换参数)来验证请求是否匹配其预期的结构。例如,标记子句和SQL查询中的参数,可以快速检测带有更多标记的如 FROM’或 WHERE’子句表示查询已被更改。

阻塞 阻塞是新一代RASP平台擅长的一个领域。WAF通常根据传入的HTTP请求判断是否阻塞,它依赖签名来检测已知的恶意模式或已知的良好模式,并基于这些特征库进行阻塞。这种类型的检查既缺乏应用程序上下文(特定请求将涉及所有function的可见性),也缺乏让恶意请求“发挥”到一定程度的以明确其确定的意图。新一代RASP工具同时提供了这两种功能,以及多种检测技术,如沙箱检测、语义分析、输入跟踪和行为分析等。当您将多种检测技术(每种检测技术都适用于特定类型的攻击)与多个执行点结合在一起时,您在准确性上比传统的WAF有了巨大的飞跃。可以肯定地说,RASP不仅仅是应用程序中的WAF,而是一种完全改进的阻止应用程序攻击的方法。从采访客户了解到,RASP客户在完全阻塞模式下运行的比例要高得多,而且这一跃升在过去两年中还在加速。 性能和可伸缩性 RASP嵌入到应用程序或其堆栈中,因此随应用程序扩展。例如,如果应用程序在多个服务器实例上向外扩展副本,RASP将随之扩展。如果部署在虚拟服务器或云服务器上,RASP将受益于与应用程序一起增加的CPU和内存资源。RASP执行规则,它们的操作方式和检查次数,可能会影响延迟和性能。越来越深入的请求分析增强了安全性,但增加了延迟。如果没有在本地缓存第三方威胁情报,或者使用了外部查找,则延迟会增加。如果传感器或集成点只收集事件并将其传递到外部服务器进行分析,添加的服务可能会增加延迟。与所有安全产品一样,不要相信供应商编号——在您的环境中,使用具有代表性的流量运行您自己的测试。幸运的是,供应商在过去几年里已经在性能方面投入了大量的工程资源,大大减少了延迟问题。 仪表 安全团队通常希望对应用程序安全性具有可见性,并且他们在构建管道、预生产和生产中使用扫描来开发度量并获得应用程序安全性状况的可见性越来越普遍。这表明它们在哪些地方需要更多资源,并有助于衡量已部署资源的有效性。RASP的一个巨大优势是它可以在运行时持续地测量应用程序的使用率和缺陷率。此功能的一部分来自于其对应用程序功能目录化、理解正确的参数数量和类型以及在运行的应用程序代码中应用策略的能力。但是RASP也可以理解运行时代码路径、服务器交互、开源库、框架的细微差别、库的使用和自定义代码,这在裁剪检测规则时提供了优势,比如启用特定策略来检测针对Spring框架的攻击。RASP可以配置为阻止针对旧版本库的特定攻击,提供一种虚拟补丁。这还提供了非安全性方面的好处,帮助质量保证和操作团队了解代码是如何使用的,提供了一个运行时映射,可以识别性能瓶颈和未使用的代码。

版本库的特定攻击,提供一种虚拟补丁。这还提供了非安全性方面的好处,帮助质量保证和操作团队了解代码是如何使用的,提供了一个运行时映射,可以识别性能瓶颈和未使用的代码。

原文链接:https://cdn.securosis.com/assets/library/main/Understanding_RASP_2019_Final2.pdf

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。