广告
返回顶部
首页 > 资讯 > 精选 >xss跨站脚本攻击如何修复
  • 209
分享到

xss跨站脚本攻击如何修复

2024-04-02 19:04:59 209人浏览 八月长安
摘要

xss跨站脚本攻击的解决方案:建立一个httpservletRequestWapper的包装类,对用户发送的请求进行包装,把request中包含XSS代码进行过滤,代码如下:import java.util.Map;import&

xss跨站脚本攻击如何修复

xss跨站脚本攻击的解决方案:

建立一个httpservletRequestWapper的包装类,对用户发送的请求进行包装,把request中包含XSS代码进行过滤,代码如下:

import java.util.Map;

import javax.servlet.Http.HttpServletRequest;  

import javax.servlet.http.HttpServletRequestWrapper;  

public class XsshttpServletRequestWrapper extends HttpServletRequestWrapper {  

    HttpServletRequest orgRequest = null;  

    public XssHttpServletRequestWrapper(HttpServletRequest request) {  

        super(request);

    }  

      

    @Override  

    public String getParameter(String name) {  

        String value = super.getParameter(xssEncode(name));  

        if (value != null) {  

            value = xssEncode(value);  

        }  

        return value;  

    }

    @Override

    public String[] getParameterValues(String name) {

        String[] value = super.getParameterValues(name);

        if(value != null){

            for (int i = 0; i < value.length; i++) {

                value[i] = xssEncode(value[i]);

            }

        }

        return value;

    }

    @Override

    public Map getParameterMap() {

        // TODO Auto-generated method stub

        return super.getParameterMap();

    }

    

      

    private static String xssEncode(String value) {  

         if (value == null || value.isEmpty()) {  

            return value;  

        }  

        value = value.replaceAll("eval\\((.*)\\)", "");

        value = value.replaceAll("[\\\"\\\'][\\s]*javascript:(.*)[\\\"\\\']", "\"\"");

        value = value.replaceAll("(?i)<script.*?>.*?<script.*?>", "");

        value = value.replaceAll("(?i)<script.*?>.*?</script.*?>", "");

        value = value.replaceAll("(?i)<.*?javascript:.*?>.*?</.*?>", "");

        value = value.replaceAll("(?i)<.*?\\s+on.*?>.*?</.*?>", "");

        return value;

    }  

}

使用Filter过滤器实现对Request的过滤,代码如下:

import java.io.IOException;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.http.HttpServletRequest;

import com.lyms.wxyl.base.wrapper.XssHttpServletRequestWrapper;

public class XssFilter implements Filter {

    public void destroy() {

        // TODO Auto-generated method stub

    }

    

    public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {

        //包装request

        XssHttpServletRequestWrapper xssRequest = new XssHttpServletRequestWrapper((HttpServletRequest) request);

        chain.doFilter(xssRequest, response);

    }

    public void init(FilterConfig filterConfig) throws ServletException {

        // TODO Auto-generated method stub

    }

}

WEB.xml中定义好Filter,例如:

<filter>

        <filter-name>XssFilter</filter-name>

        <filter-class>包名.XssFilter</filter-class>

    </filter>

    <filter-mapping>

        <filter-name>XssFilter</filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>

Filter类需要引入javax.servlet.apijar包,因此要在pom.xml配置jar包,代码:

<dependency>

            <groupId>javax.servlet</groupId>

            <artifactId>servlet-api</artifactId>

            <version>${servlet.version}</version>

            <scope>provided</scope>

         </dependency>

         <dependency>

            <groupId>javax.servlet</groupId>

            <artifactId>jsp-api</artifactId>

            <version>2.0</version>

            <scope>provided</scope>

         </dependency>

         <properties>

           <servlet.version>3.0-alpha-1</servlet.version>

         </properties>

--结束END--

本文标题: xss跨站脚本攻击如何修复

本文链接: https://www.lsjlt.com/news/115284.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • xss跨站脚本攻击如何修复
    xss跨站脚本攻击的解决方案:建立一个HttpServletRequestWapper的包装类,对用户发送的请求进行包装,把request中包含XSS代码进行过滤,代码如下:import java.util.Map;import&...
    99+
    2022-10-07
  • 跨站脚本攻击(XSS)详解
    XSS简介 XSS(Cross Site Script)攻击,通常指黑客通过"HTML注入"篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击。 一开始,这种攻击的演示案例是...
    99+
    2023-09-11
    xss php 前端 安全 系统安全
  • PHP入门指南:跨站脚本攻击(XSS)
    PHP是一种流行的服务器端编程语言,用于开发动态网页和Web应用程序。然而,由于其广泛的使用和易于学习的特性,它经常成为黑客入侵网站的攻击目标。本文将介绍跨站脚本攻击(XSS),并提供一些防范措施。什么是跨站脚本攻击?跨站脚本攻击(XSS)...
    99+
    2023-05-21
    PHP xss 入门指南
  • js如何防御XSS跨域脚本攻击
    js防御XSS跨域脚本攻击的方法:通过使用replace()全部替换为实体即可,例如:name = name.replace(//g, ">");防御示例:function removeXss(val){val =...
    99+
    2022-10-19
  • 网站漏洞修补之ECshop4.0跨站脚本攻击修复
    ecshop目前最新版本为4.0,是国内开源的一套商城系统,很多外贸公司,以及电商平台都在使用,正因为使用的人数较多,很多攻击者都在挖掘该网站的漏洞,就在最近ecshop被爆出高危漏洞,该漏洞利用跨站伪造函数,来对网站数据库进行攻击。ecs...
    99+
    2023-06-03
  • 跨站脚本攻击XSS与CSRF区别方法详解
    目录引文简介XSS与CSRF区别ONETWOXSS攻击方法反射型存储型DOM型XSS攻击危害结语引文 上篇文章给大家带来了XML实体注入(XXE)不知道小伙伴们学了后有没有自己去运用...
    99+
    2022-11-13
  • 跨脚本攻击漏洞怎么修复
    通过在Java项目中添加一个过滤器类对跨脚本攻击漏洞进行修复,具体方法如下:public class XssFilter implements Filter {@Overridepublic void destroy() {}@Overri...
    99+
    2022-10-19
  • xss攻击如何修复
    xss攻击的修复方案:对输入的数据进行HTML转义,使其不会识别为可执行脚本,例如:String result = HtmlUtils.htmlEscape(source);根据白名单的标签和属性对数据进行过滤...
    99+
    2022-10-09
  • jsp如何修复xss攻击
    jsp修复xss攻击的方法:jsp页面接收参数时,对参数进行过滤处理,例如:请求链接:http://a.b.com/login.jspsuccessUrl=<script>alert(111)</script>参数过...
    99+
    2022-10-23
  • HTML怎么处理跨站脚本攻击
    本文小编为大家详细介绍“HTML怎么处理跨站脚本攻击”,内容详细,步骤清晰,细节处理妥当,希望这篇“HTML怎么处理跨站脚本攻击”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。跨站脚本攻击(XSS)是网站制作中最常...
    99+
    2023-06-26
  • PHP Session 跨域与跨站脚本攻击的关系
    随着网络应用的广泛应用,安全性问题也日益引起人们的关注。在开发网络应用时,处理用户会话(Session)是非常常见的一个需求。而PHP提供了一种方便的会话管理机制——Session。但是,Session也存在一些安全问题,特别是与跨域和跨站...
    99+
    2023-10-21
    PHP Session 跨域 跨站脚本攻击
  • 如何解决PHP开发中的跨站脚本攻击
    跨站脚本攻击(Cross-site Scripting,XSS)是一种常见的Web安全漏洞,利用这种漏洞,攻击者可以在受害者的浏览器中执行恶意脚本代码,进而实施一些恶意行为。在PHP开发中,我们需要采取一些措施来防止和解决跨站脚本攻击。一、...
    99+
    2023-10-21
    跨站脚本攻击 解决 关键词:PHP开发
  • 网站跨站脚本漏洞怎么修复
    网站跨站脚本漏洞的修复方法:利用第三方安全工具对网站上的XSS跨站漏洞进行修复。对get、post、cookies进行安全效验。对XSS跨站攻击代码进行拦截。对前端输入的值以及输出的值进行全面的安全过滤。对一些非法的参数,像、",'等进行自...
    99+
    2022-10-21
  • asp网站空间如何过滤xss攻击
    asp网站空间过滤xss攻击的方法:1、在web.config增加httpModules节点;2、编写一个过滤器,过滤危险关键词,并...
    99+
    2023-02-13
    asp网站空间 空间 xss攻击
  • 网站被攻击 如何修复网站漏洞
    很多公司的网站被攻击,导致网站打开跳转到别的网站上去,网站快照也被篡改,收录一些非法的内容快照,有些网站数据库都被篡改,修改了会员资料,数据库被删除,等等攻击症状,我们SINE安全在解决客户网站被攻击的问题,发现都是由于网站存在漏洞导致的,...
    99+
    2023-06-03
  • 如何写脚本防cc攻击
    Shell脚本代码如下:#!/bin/bash#Author:ZhangGe#Desc:Auto Deny Black_IP Script.#Date:2014-11-05#取得参数$1为并发阈值,若留空则默认允许单IP最大100并发(实际...
    99+
    2022-10-04
  • 如何配置CentOS系统以保护Web应用程序免受跨站脚本攻击
    要保护Web应用程序免受跨站脚本攻击,可以采取以下配置步骤:1. 更新系统和软件:使用`yum update`命令来更新系统和安装的...
    99+
    2023-10-10
    CentOS
  • 网站跨站脚本漏洞如何解决
    网站跨站脚本漏洞的解决方法:对用户输入的数据进行全面的安全过滤。对get、post、cookies进行安全效验。对一些非法的参数,像、",'等进行自动转义或者强制拦截并提示。过滤双引号、分号、单引号以及对字符进行HTML实体编码操作。网站发...
    99+
    2022-10-11
  • go中如何实现web预防跨站脚本
    这篇文章主要介绍了go中如何实现web预防跨站脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一 点睛现在的网站包含大量的动态内容以提高用户体验,比过去要复杂得多...
    99+
    2023-06-15
  • win7系统局域网遭受ARP攻击如何修复?win7局域网遭受ARP攻击的四种修复方法
      局域网的功能非常强大,可以在局域网中共享文件、视频、图片等等。如果win7系统局域网遭受ARP攻击时,通常会造成电脑上网速度减慢或根本无法上网。如何修复win7局域网遭受ARP攻击问题呢?下面就随我们的小编一起来看下...
    99+
    2023-05-22
    遭受arp攻击怎么办 一直遭受arp攻击 局域网arp攻击
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作