`

[bug处理]struts1注入html代码的修复

    博客分类:
  • java
 
阅读更多

    今天跟同事解决这样一个问题:

    jsp页面中处理request.getAttribute("value")的注入!

 

    jsp页面如下:

 

<html>
    <head>
        <title>xxx</title>
    </head>
    <body>
        <div class="blue">
            <p>
                <%=request.getAttribute("value")%>
            </p>
        </div>
    </body>
</html>
 

 

有用户恶意的将value值设置为:<img src="#" onerror="alert hello" />

 

用户在提交表单之后,会突然弹出js框,造成错误!

 

这时需要解决的问题就是将用户显示的值原值显示出来!

 

这是可以采取的方式有如下:

1. struts2中的property来设置

 

 

<s:property value="test" escape="false"/>

escape:false为不显示

                 true显示

由于是使用的struts1,所以这里不能使用

2. html <code>标签

    这里经过测试,无法展现 http://www.w3school.com.cn/tags/tag_code.asp

3. el表达式

    最后使用的是c:out来做处理实现

 

导入el表达式库

 

 

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/functions"%>

<html>
    <head>
        <title>xxx</title>
    </head>
    <body>
        <div class="blue">
            <p>
                <c:out value=" <%=request.getAttribute("value")%>" />
            </p>
        </div>
    </body>
</html>
 至此,这里就解决了原值的显示
哎,老项目中的bug实在是太多啊......

 

 

 

分享到:
评论

相关推荐

    struts2-016/017漏洞解决

    "struts2-016-017-bug-repair"压缩包很可能是包含了修复这两个漏洞的补丁或配置更改说明。为了在不升级原框架的基础上解决这些问题,你可以按照以下步骤进行: 1. **应用补丁**:检查压缩包中的文档,看是否有提供...

    XSS转码 && struts2 property标签的bug

    标题 "XSS转码 && struts2 property标签的bug" 指向的是一个关于Web安全的话题,特别是针对Struts2框架的一个特定安全问题。XSS(Cross-site scripting)是Web应用中的常见安全漏洞,而Struts2是Java开发中的流行MVC...

    bug管理系统-ssh

    6. **Bug处理**:开发人员接收到bug后,查看问题详情,调试代码,修复问题,并在系统中记录修复过程和解决方案。修复完成后,bug状态会更新为已解决或已关闭。 7. **开发人员能力统计**:系统能够统计每个开发人员...

    struts-2.5.22.zip

    S2-059,也被称为"Struts Shatter",主要是由于OGNL表达式中未正确处理用户输入,使得攻击者可以注入恶意代码并执行。该漏洞影响了Struts 2的多个版本,包括2.3.x和2.5.x。修复措施包括改进OGNL表达式的解析和限制,...

    struts2.2.3升级struts2.3.34.rar

    在Struts2.3.34版本中,开发者可能已经修复了旧版本中的一些bug,并增强了框架的性能和安全性。因此,替换所有jar包而不是仅仅替换特定的几个,可以确保系统全面地得到更新,避免因部分组件未更新而导致的潜在风险。...

    struts-1.3.8-all&1.3.10

    - **struts-1.3.8**:这个版本可能包含了之前版本的bug修复、性能优化以及可能的新特性。在使用此版本时,开发者需要参考官方文档了解可能的变化和改进。 - **struts-1.3.10**:作为比1.3.8稍新的版本,它可能包含...

    struts-2.3.35相关jar包

    6. **struts2-spring-plugin.jar**(可能包含):如果使用Spring框架进行依赖注入,这个插件将帮助整合Struts 2和Spring,使得Action可以作为Spring的bean管理。 7. **其他第三方库的jar包**:Struts 2依赖于一些...

    struts2.3.16.3

    在Struts2.3.16.3这个版本中,可能包含了对之前版本的bug修复、性能优化以及新特性的引入,旨在提供更稳定、高效的开发环境。 Spring框架则是一个全面的企业级应用框架,它提供了依赖注入(DI)和面向切面编程(AOP...

    struts-2.3.24.1-all.zip

    这个“struts-2.3.24.1-all.zip”压缩包包含了Struts 2框架的完整版本2.3.24.1,这是一个广泛使用的版本,具有许多增强的功能和修复的bug。以下将详细介绍Struts 2框架的核心概念、主要特点以及在2.3.24.1版本中的...

    Struts-2.3.16.1完整包

    首先,SSH框架是Java Web开发中的一个经典组合,其中Struts2负责控制层,Spring处理业务逻辑和依赖注入,而Hibernate则用于对象关系映射(ORM)。Struts2以其灵活性和强大的功能闻名,如拦截器、结果类型、插件体系...

    struts-2.5.12

    这个版本包含了对之前版本的改进、bug修复以及可能的新特性。下面将详细介绍这些文件及其在Struts 2框架中的作用。 1. **struts2-core-2.5.12.jar**:这是Struts 2的核心库,包含了框架的基础组件,如Action类、...

    struts2 框架的核心jar包(struts-2.3.16版本)

    具体到struts-2.3.16版本,这是Struts2的一个稳定版本,包含了多个组件和修复的bug,旨在提供更高效、更安全的开发环境。 核心jar包是Struts2框架的基础,主要包括以下几个关键组件: 1. **struts2-core.jar**:这...

    struts2.3.41

    1. **性能提升**:通过优化内部机制,如请求处理和视图渲染,提高应用程序的运行效率,减少资源消耗。 2. **安全性增强**:修复已知的安全漏洞,如XSS(跨站脚本攻击)和SQL注入等,保障应用免受恶意攻击。Struts2...

    开发Struts+Spring应用

    Struts是MVC(模型-视图-控制器)架构的一个实现,主要用于处理前端请求和业务逻辑,而Spring则是一个全面的后端框架,提供依赖注入、AOP(面向切面编程)、事务管理等服务。 **Struts框架** Struts1是Apache软件...

    struts2安全漏洞-升级struts2 jar文件从2.2.3至2.3.16

    - **CVE-2017-5638**:这是一个著名的漏洞,被称为“Struts Shatter”,由于OGNL(Object-Graph Navigation Language)表达式处理不当,允许攻击者通过HTTP请求头注入恶意代码,从而实现远程代码执行。 - **CVE-...

    struts2-spring-plugin-2.2.3.1.jar

    **2.2.3.1版本** 的特性可能包括修复了一些已知的bug,改进了与不同Spring版本的兼容性,或者增加了新的功能。具体改动可以通过查阅官方发布文档或变更日志来了解。 使用Struts2-Spring-Plugin-2.2.3.1.jar时,...

    struts2插件整合

    - **Action**:在Struts2中,Action是业务逻辑的载体,处理用户请求并返回结果。 - **Result**:Action执行后,通常会返回一个Result,定义了如何呈现响应给用户。 - **Interceptor**:拦截器是Struts2的核心组件...

    ssh Struts2.3.16.1+Hibernate4.3.4+Spring4.0.2 框架整合jar包

    Struts2.3.16.1版本包含了一些新的特性、修复了已知的bug和提升了性能。例如,增强了拦截器(Interceptor)功能,支持更多类型的Action结果类型,以及对RESTful风格的URL支持等。 **Hibernate框架**: Hibernate是...

    struts2.jar 包

    - 文件名中的"2.3.16"表示Struts2的版本,每个版本都有其特性改进和bug修复,开发者需要根据项目需求选择合适的版本。 在实际开发中,Struts2.jar和其他相关依赖包一起使用,可以构建出高效、稳定的Java Web应用。...

    struts-2.3.15.1.jar

    1. OGNL(Object-Graph Navigation Language)注入漏洞:这是Struts 2框架中一个臭名昭著的安全问题,允许攻击者通过构造恶意的HTTP请求来执行任意代码。在早期版本中,OGNL表达式可以被未验证的数据所操纵,导致...

Global site tag (gtag.js) - Google Analytics