scream

常见的框架漏洞有什么

分享
  • 安全侠 2 等保中级测评师 CICSA 官方采纳
    安全侠2 等保中级测评师 CICSA
    官方采纳
    • ThinkPHP框架漏洞
    • Struts2框架漏洞

    Web应用框架(Web application framework)是用来支持动态网站、网络应用程序及网络服务的开发。这种框架有助于减轻网页开发时共通性活动的工作负荷,例如,许多框架提供数据库访问接口、标准模板及会话管理等,可提升代码的可再用性。随着Web框架的流行也引来了一系列的安全问题,一旦Web开发框架出现严重漏洞将影响到成千上万的网站安全,如典型的ThinkPHP框架漏洞和Struts2框架漏洞。

    1. ThinkPHP框架漏洞

      ThinkPHP是为了简化企业级应用开发和敏捷Web应用开发而诞生的。ThinkPHP最早诞生于2006年初,2007年元旦正式定名,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。ThinkPHP中最典型且危害最大的漏洞便是命令执行漏洞,接下来重点介绍几个ThinkPHP中常见的命令执行漏洞。

      • ThinkPHP 2.x命令执行漏洞
      • ThinkPHP 5.0命令执行漏洞
      • ThinkPHP 5.x命令执行漏洞
    2. Struts2框架漏洞

      Apache Struts 2是一个用于开发Java EE网络应用程序的开放源代码网页应用程序架构。它利用并延伸了Java Servlet API,鼓励开发者采用MVC架构。起源于Apache Struts的WebWork框架,旨在提供相对于Struts框架的增强和改进,同时保留与Struts框架类似的结构。2005年12月,WebWork宣布WebWork 2.2以Apache Struts 2的名义合并至Struts。2007年2月,第一个全发布(Fullrelease)版本释出。从2007年7月23日发布的第一个Struts2漏洞S2-001到2019年8月发布的最新漏洞S2-058,在这十几年的历程中,漏洞的个数上升至58个。这其中更有多达十余个的远程代码执行漏洞。当我们去仔细分析这些远程代码执行漏洞时会发现其本质依旧是OGNL表达式注入漏洞(部分漏洞除外)。接下来重点介绍几个Struts2中常见的漏洞。

      • S2-003/S2-005漏洞
      • S2-045/S2-046漏洞
      • S2-057漏洞
  • 安全侠 2 等保中级测评师 CICSA 官方采纳
    安全侠2 等保中级测评师 CICSA
    官方采纳

    常见的框架漏洞有以下这些:

    • Spring框架漏洞:Spring Security OAuth2是为Spring框架提供安全认证支持的一个模块。Spring Security OAuth2处理认证请求的时候如果使用了whitelabel views,response_type参数值会被当做Spring SpEL来执行,攻击者可以在被授权的情况下通过构造response_type值也就是通过构造恶意SpEL表达式可以触发远程代码执行漏洞。故是在需要知道账号密码的前提下才可以利用该漏洞。

    • Struts2框架漏洞:Struts2是一款基于Java开发的框架,web路径下会出现两种特殊的文件格式,即.action文件与.jsp文件;现阶段已知的S2poc大多数都是远程命令执行漏洞,主要出现位置有url中,报文内容中,content-type中;

    • ThinkPHP框架漏洞:thinkphp是一个国内轻量级的开发框架,采用php+apache,在更新迭代中,thinkphp也经常爆出各种漏洞,thinkphp一般有thinkphp2、thinkphp3、thinkphp5、thinkphp6版本,前两个版本已经停止更新。

    • shiro框架漏洞:Shiro默认使用了CookieRememberMeManager,其处理cookie的流程是: 得到rememberMe的cookie值–>Base64解码–>AES解密–>反序列化.然而AES的密钥是硬编码的,密钥泄漏的根本原因是开发人员在开发过程中部分代码直接使用了网上的一些开源的项目代码,就导致了攻击者可以构造恶意数据造成反序列化的RCE漏洞。

  • 写回答