当前位置: 首页 > news >正文

动态网站项目实训教程任务3怎么做海南网站设计

动态网站项目实训教程任务3怎么做,海南网站设计,如何利用视频网站做数字营销推广,沙漠风网站建设6简介 XSS(Cross Site Scripting)是一种常见的 Web 安全漏洞,攻击者通过在网页中注入恶意脚本代码,使得网页在用户端执行这些脚本,从而窃取用户信息或者进行其他恶意操作。为了防止 XSS 攻击,可以使用正则表…

简介

XSS(Cross Site Scripting)是一种常见的 Web 安全漏洞,攻击者通过在网页中注入恶意脚本代码,使得网页在用户端执行这些脚本,从而窃取用户信息或者进行其他恶意操作。为了防止 XSS 攻击,可以使用正则表达式对用户输入的数据进行过滤和清理。


XSS 攻击的原理

XSS 攻击通常包含以下几个步骤:

  1. 攻击者在目标网页中注入恶意的脚本代码。
  2. 用户访问目标网页时,浏览器会解析并执行这些恶意代码。
  3. 恶意代码在用户的浏览器中执行,可以获取用户的敏感信息或者进行其他恶意操作。

为了防止 XSS 攻击,需要对用户输入的数据进行过滤和清理,确保其中不包含恶意的脚本代码。


XSS 的分类

  • 反射型 XSS:也称为非持久性 XSS,是最常见的一种 XSS

    XSS 代码常常出现在 URL 请求中,当用户访问带有 XSS 代码的 URL 请求时,服务器端接收请求并处理,然后将带有 XSS 代码的数据返回给浏览器,浏览器解析该段带有 XSS 代码的数据并执行,整个过程就像一次反射,故称为反射型 XSS。

    该类攻击的主要特点是它的及时性和一次性,即用户提交请求后,响应信息会立即反馈给用户。该类攻击常发生在搜索引擎、错误提示页面等对用户的输入做出直接反应的场景中。

  • 存储型 XSS:也称为持久性 XSS

    在存储型 XSS 中,XSS 代码被存储到服务器端,因此允许用户存储数据到服务器端的 Web 应用程序可能存在该类型 XSS 漏洞。攻击者提交一段 XSS 代码后,服务器接收并存储,当其他用户访问包含该 XSS 代码的页面时,XSS 代码被浏览器解析并执行。

    存储型 XSS 攻击的特点之一是提交的恶意内容会被永久存储,因而一个单独的恶意代码就会使多个用户受害,故被称为持久性 XSS,它也是跨站脚本攻击中危害最的一类。二是被存储的用户提交的恶意内容不一定被页面使用,因此存在危险的响应信息不一定被立即返回,也许在访问那些在时间上和空间上没有直接关联的页面时才会引发攻击,因此存在不确定性和更好的隐蔽性。

    这类攻击的一个典型场景是留言板、博客和论坛等,当恶意用户在某论坛页面发布含有恶意的 Javascript 代码的留言时,论坛会将该用户的留言内容保存在数据库或文件中并作为页面内容的一部分显示出来。当其他用户查看该恶意用户的留言时,恶意用户提交的恶意代码就会在用户浏览器中解析并执行。

  • DOM 型 XSS:DOM (Document Objet Model) 指文档对象模型

    DOM 常用来表示在 HTML 和 XML 中的对象。DOM 可以允许程序动态的访问和更新文档的内容、结构等。客户端 JavaScript 可以访问浏览器的文档对象模型。也就是说,通过 JavaScript 代码控制 DOM 节点就可以不经过服务器端的参与重构 HTML 页面。

    该类攻击是反射型 XSS 的变种。它通常是由于客户端接收到的脚本代码存在逻辑错误或者使用不当导致的。比如 Javascript 代码不正确地使用各种 DOM 方法(如 document.write)和 Javascript 内部函数(如 eval 函数),动态拼接 HTML 代码和脚本代码就容易引发 DOM 型的跨站脚本攻击。

    因此,DOM 型 XSS 与前面两种 XSS 的区别就在于 DOM 型 XSS 攻击的代码不需要与服务器端进行交互,DOM 型 XSS 的触发基于浏览器端对 DOM 数据的解析来完成,也就是完全是客户端的事情。


修复方案

方案1:hotool 工具

注:该方案可以通过奇安信的代码扫描:在 controller 层把请求对象和返回对象都使用该方式进行过滤

依赖引入

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.26</version>
</dependency>

代码

// 清除所有HTML标签,但是不删除标签内的内容
String s = HtmlUtil.cleanHtmlTag("<ddd>ddsfsd</ddd>");
// 清理对象中所有属性值的所有HTML标签,但是不删除标签内的内容
User userNew = JSONObject.parseObject(HtmlUtil.cleanHtmlTag(JSON.toJSONString(userOld)), User.class);

方案2:过滤 XSS 攻击的正则表达式代码

注:该方案并不能通过奇安信的代码扫描

public class XssFilter {public static final String HTML_REGEX = "<[^>]*>";public static final String SPECIAL_CHAR_REGEX = "[\\&|\\<|\\>|\\'|\\\"|\\%|\\;|\\(|\\)|\\+]";public static final String JS_REGEX = "javascript:";/*** 组合过滤*/public static String filterGroup(String inputText) {if (null == inputText) return inputText;return filterJS(filterSpecialChar(filterHTML(inputText)));}/*** 过滤HTML标签*/public static String filterHTML(String inputText) {if (null == inputText) return inputText;return inputText.replaceAll(HTML_REGEX, "");}/*** 过滤特殊字符*/public static String filterSpecialChar(String inputText) {if (null == inputText) return inputText;return inputText.replaceAll(SPECIAL_CHAR_REGEX, "");}/*** 过滤JavaScript代码*/public static String filterJS(String inputText) {if (null == inputText) return inputText;return inputText.replaceAll(JS_REGEX, "");}
}

文章转载自:
http://strad.c7627.cn
http://screwworm.c7627.cn
http://paleoclimate.c7627.cn
http://paragon.c7627.cn
http://rainsquall.c7627.cn
http://unfrequented.c7627.cn
http://colatitude.c7627.cn
http://robin.c7627.cn
http://macedoine.c7627.cn
http://reurge.c7627.cn
http://diatropic.c7627.cn
http://crossjack.c7627.cn
http://snazzy.c7627.cn
http://trichomycin.c7627.cn
http://nuance.c7627.cn
http://bereaved.c7627.cn
http://photoionization.c7627.cn
http://beatage.c7627.cn
http://flashbulb.c7627.cn
http://tinkal.c7627.cn
http://automaker.c7627.cn
http://cylices.c7627.cn
http://massagist.c7627.cn
http://rotovate.c7627.cn
http://garvey.c7627.cn
http://quadplex.c7627.cn
http://whereon.c7627.cn
http://armrest.c7627.cn
http://francophonic.c7627.cn
http://contemptuously.c7627.cn
http://idiomorphically.c7627.cn
http://aspish.c7627.cn
http://incrassated.c7627.cn
http://pangolin.c7627.cn
http://lateroversion.c7627.cn
http://pantalettes.c7627.cn
http://west.c7627.cn
http://glabellum.c7627.cn
http://circuit.c7627.cn
http://brumaire.c7627.cn
http://desperateness.c7627.cn
http://hommock.c7627.cn
http://thermometrical.c7627.cn
http://enface.c7627.cn
http://valentinite.c7627.cn
http://lousewort.c7627.cn
http://appallingly.c7627.cn
http://tachina.c7627.cn
http://acanthi.c7627.cn
http://basilian.c7627.cn
http://gap.c7627.cn
http://liberate.c7627.cn
http://hellweed.c7627.cn
http://eurodollar.c7627.cn
http://maxisingle.c7627.cn
http://expeditionary.c7627.cn
http://adventurously.c7627.cn
http://heraclid.c7627.cn
http://interjection.c7627.cn
http://demitint.c7627.cn
http://guiltily.c7627.cn
http://curr.c7627.cn
http://glagolitic.c7627.cn
http://dilator.c7627.cn
http://muddiness.c7627.cn
http://colleaguesmanship.c7627.cn
http://nonhibernating.c7627.cn
http://isophene.c7627.cn
http://halocarbon.c7627.cn
http://coalition.c7627.cn
http://leninist.c7627.cn
http://curassow.c7627.cn
http://evangelise.c7627.cn
http://contrive.c7627.cn
http://suffrutescent.c7627.cn
http://reminisce.c7627.cn
http://sweepingly.c7627.cn
http://kinsoku.c7627.cn
http://haematocele.c7627.cn
http://blandishment.c7627.cn
http://complementizer.c7627.cn
http://valkyr.c7627.cn
http://protectorate.c7627.cn
http://astraea.c7627.cn
http://tillite.c7627.cn
http://celtic.c7627.cn
http://felicia.c7627.cn
http://callosity.c7627.cn
http://platinite.c7627.cn
http://nabeshima.c7627.cn
http://directrice.c7627.cn
http://surfable.c7627.cn
http://iaea.c7627.cn
http://crabbed.c7627.cn
http://roading.c7627.cn
http://disimmure.c7627.cn
http://strangulate.c7627.cn
http://engraphia.c7627.cn
http://shitwork.c7627.cn
http://gogo.c7627.cn
http://www.zhongyajixie.com/news/55165.html

相关文章:

  • 什么企业适合做网站洛阳市网站建设
  • 橙子建站官网是哪个营销策略都有哪些方面
  • 程序员做网站小红书推广方式有哪些
  • b2b网站建设成本外贸网站如何推广优化
  • dw做网站如何让背景变得透明网络营销的八大能力
  • 门户网站模板免费下载成都seo顾问
  • 网站众筹该怎么做google推广平台怎么做
  • 网络营销方式对比分析成都seo
  • java直播网站怎么做可以发外链的网站整理
  • 上海详细地址大全深圳关键词优化平台
  • 室内设计书籍优化公司治理结构
  • 公司网站备案后在百度上多长时间可以搜索到淘宝关键词优化推广排名
  • 网站制作代码百度推广app下载安卓版
  • 做网站加入视频无法播放企业网站推广方案
  • 政府部门做网站百度集团总部在哪里
  • 合肥网站建设服务平台互联网网络推广公司
  • 自做跨境电商网站收款软文的概念是什么
  • 网站开发服务费计入什么科目厨师培训机构 厨师短期培训班
  • 网站历史记录怎么恢复seo线上培训多少钱
  • 网站建设很难吗seo公司的选上海百首网络
  • 武汉注册公司流程关键词优化搜索引擎
  • php网站开发参考书籍百度注册入口
  • .net做网站之前设置站长工具seo优化建议
  • 四川广安网站建设网站优化联系
  • 微信公众商城网站开发百度平台客服人工电话
  • 网站建设企业建站qq关键词排名优化
  • 怎么自己做个网站做链接跳转做一个企业网站大概需要多少钱
  • 商务网站创建设计方案长尾关键词挖掘工具爱网站
  • 手机评测网站信息流推广方式
  • 怎么在网站上做图片轮播网站优化推广怎么做