0
点赞
收藏
分享

微信扫一扫

Web常用攻击手段-XSS

上一篇 <<<工厂相关模式(Factory Pattern)
下一篇 >>>Web常用攻击手段-SQL注入


<script>alert('sss')</script>
<script>window.location.href='http://www.baidu.com';</script>
  • a、编写过滤器拦截所有getParameter参数
  • b、重写httpservletwrapp方法,将参数特殊字符转换成html源代码保存.
//转换类
public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper {
    @Override
    public String getParameter(String name) {
        // 获取之前的参数
        String olValue = super.getParameter(name);
        System.out.print("原来参数:" + olValue);
        if (!StringUtils.isEmpty(olValue)) {
            // 将特殊字符转换成html展示 // 3.使用(StringEscapeUtils.escapeHtml(name)转换特殊参数
            olValue = StringEscapeUtils.escapeHtml(olValue);
            System.out.println("转换后" + olValue);
        }
        System.out.println();
        return olValue;
    }
}
//过滤器
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException, ServletException {
    // 程序防止XSS攻击原理
    // 1. 使用过滤器拦截所有参数
    HttpServletRequest req = (HttpServletRequest) request;
    // 2.重新getParameter方法
    XssHttpServletRequestWrapper xssHttpServletRequestWrapper = new XssHttpServletRequestWrapper(req);
    // 放行程序,继续往下执行
    chain.doFilter(xssHttpServletRequestWrapper, response);
}
  • c、关键字过滤

相关文章链接:
<<<Web常用攻击手段-SQL注入
<<<Web常用攻击手段-Http请求防盗链
<<<Web常用攻击手段-CSRF攻击
<<<Web常用攻击手段-上传文件漏洞
<<<Web常用攻击手段-忘记密码
<<<Web常用攻击手段-其他漏洞
<<<安全技术--数据加密/认证技术
<<<安全技术--Https相关知识
<<<安全技术--接口幂等性设计
<<<安全框架--SpringSecurity
<<<安全框架--JWT
<<<安全框架--OAuth2
<<<安全架构整体设计方案

举报

相关推荐

0 条评论