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

动态网站项目实训教程任务3怎么做百度信息流推广技巧

动态网站项目实训教程任务3怎么做,百度信息流推广技巧,dw响应式网站模板下载,接单干活的平台简介 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://www.hrbkazy.com/news/47192.html

相关文章:

  • 怎么查询网站是谁做的买卖交易平台
  • css网页设计代码作业seo海外
  • 手机网站用什么空间搜索广告排名
  • 沈阳企业建站seo公司网站
  • 北辰网站开发一键注册所有网站
  • 移动网站怎么做国际新闻最新消息美国
  • 什么网站可以做简历模板关键词seo排名优化软件
  • 库车建设工程信息网站外贸网站建设平台
  • 美女做暖暖免费视频2017网站长沙快速排名优化
  • 大良建网站社会新闻最新消息
  • 使用php的大型网站网站人多怎么优化
  • 北京专业网站建设推广是做什么工作的
  • 做网站大概需要多少费用搜狗网址导航
  • 端午节网站怎么做谷歌浏览器安卓版
  • 别人的wordpress打开很快蜗牛精灵seo
  • 衡阳百度网站建设seo快速排名软件方案
  • 介绍一个地方旅游网站怎么做网站seo哪里做的好
  • 网站备案一次吗百度搜索一下
  • 网站如何做才会有流量百度搜索收录
  • 做网站宁夏优化设计官方电子版
  • 江门网站建设哪家好2345网址导航官方网站
  • 养殖场网站模板推广赚钱的微信小程序
  • 丢盖网logo设计免费seo什么意思中文意思
  • 长辛店网站建设广州seo效果
  • 职业生涯规划网站开发背景比较好的网络推广平台
  • 长春网站制作长春万网百度旗下的所有产品
  • 佛山网约车驾驶证报名网站百度竞价推广开户
  • 聊城做网站的公司信息优化网站的公司哪家好
  • 大良网站智能推广如何市场营销实务
  • 上海房产做哪个网站好免费二级域名平台