XSS攻击的防范

XSS攻击和防范接下来给大家介绍下,希望这个技术对大家有所帮助

步骤/方法

  • 01

    过滤”<”和”>”标记XSS跨站攻击的最终目标是引入script代码在用户的浏览器中执行,所以最基本最简单的过滤方法,就是转换”<”和’>”标记。 replace(str, "<", "<") replace(str, ">", ">")

  • 02

    HTML属性过滤 使用上述的代码可以过滤掉”<”和”>”标记,让攻击者无法构造HTML标记。但是,攻击者可能会利用已存在的属性,如插入图片功能,将图片的路径属性修改为一段script代码,如 <img src="javascript:alert(/XSS攻击/)" width=100> 上述代码执行后,同样可以实现跨站的目的。而且很多的HTML标记里属性都支持“javascript:跨站代码”的形式,因此就需要对攻击者输入的数据进行如下转换: replace(str, "javascript:", "") replace(str, "jscript:", "") replace(str, "vbscript:", "") 一旦用户输入的语句中含有”javascript”,”jscript”,”vbscript”,都用空白代替。

  • 03

    过滤特殊字符:&、回车和空格 因为HTML属性的值,可支持”&#ASCii”的形式进行表示,前面的跨站代码就可以换成这样: <img src="javascript:alert(/XSS攻击/)" width=100> 即可突破过滤程序,继续进行跨站攻击,使用代码: replace(str, "&", "&") 上述代码将”&”替换为了”&”,于是后面的语句就变形失效了。但是还有其他的方式绕过过滤,因为过滤关键字的方式具有很多的漏洞。攻击者可以构造下面的攻击代码: <img src="javas cript:alert(/XSS攻击/)" width=100> 这里关键字被空格,准确的说是Tab键进行了拆分,上面的代码就又失效了,这样就有考虑将Tab空格过滤,防止此类的跨站攻击。

  • 04

    HTML属性跨站的彻底防范 即使程序设计者彻底过滤了各种危险字符,确实给攻击者进行跨站入侵带来了麻烦,攻击者依然可以利用程序的缺陷进行攻击,因为攻击者可以利用前面说的属性和事件机制,构造执行script代码。例如,有下面这样一个图片标记代码: <img src="#" onerror=alert(/跨站/)> 这是一个利用onerror事件的典型跨站攻击示例,于是许多程序设计者对此事件进行了过滤,一旦发现关键字”onerror”,就进行转换过滤。 然而攻击者可以利用的时间跨站方法,并不只有onerror一种,各种各样的属性都可以进行构造跨站攻击。例如: <img src="#" style="Xss:expression(alert(/跨站/));"> 这样的事件属性,同样是可以实现跨站攻击的。可以注意到,在“src=”#””和“style”之间有一个空格,也就是说属性之间需要空格分隔,于是程序设计者可能对空格进行过滤,以防范此类的攻击。但是过滤了空格之后,同样可以被攻击者突破。 <img src="#"/**/onerror=alert(/跨站/) width=100> 这段代码利用了脚本语言的规则漏洞,在脚本语言中的注释会被当成一个空白来表示。所以注释代码就简介的达到了空格的效果,使语句得以执行。

(0)

相关推荐

  • 怎么理解DOS和DDOS攻击 又该如何防范?

    对于租用服务器建站的朋友来说,可能经常会听到DOS攻击.DDOS攻击等事件.不过,想必很多站长都把DOS攻击等同于DDOS攻击,认为这两者是相同的.其实,这个一个错误的理解. 操作方法 01 我们常说 ...

  • 预防查询语句数据库注入漏洞攻击

    简单地说,Sql注入就是将Sql代码传递到应用程序的过程,但不是按照应用程序开发人员预定或期望的方式插入,相当大一部分程序员在编写代码的时候,并没有对用户输入数据的合法性进行判断,使应用程序存在安全隐 ...

  • 防御XSS的七条原则

    攻击者可以利用XSS漏洞向用户发送攻击脚本,而用户的浏览器因为没有办法知道这段脚本是不可信的,所以依然会执行它.对于浏览器而言,它认为这段脚本是来自可以信任的服务器的,所以脚本可以光明正大地访问Coo ...

  • 什么是ARP攻击以及遇到ARP攻击时该如何应对

    操作方法 01 看到一篇文章<血与泪的经验:服务器ARP的欺骗攻击与防范>,由知名博客主卢松松讲述的关于最近被ARP攻击前后所发生的网站的各种现象,以及在攻击产生之后的思路以及应对措施.现 ...

  • 互联网中如何学会保护自己(网络中自我保护的方法)

    网警课堂本期专家:黄建邦广东省公安厅网络安全保卫总队案件侦查科副科长,公安部网络安全专家.从事网警工作9年来,他的足迹踏遍全国20余个省市和海外多个国家,侦破难度系数大.社会影响恶劣的案件100余起. ...

  • windows系统常见端口关闭方法

    常见端口关闭方法113端口木马的清除(仅适用于windows系统):这是一个基于irc聊天室控制的木马程序。1.首先使用netstat -an命令确定自己的系统上是否开放了113端口2.使用fport ...

  • 华为(HUAWEI )无线路由器详细设置图文教程

    无线路由器的配置与有线路由器基本相同,也是基于Web页面配置治理的,WBR-204g无线路由器也不例外。当然,无线路由器也可以通过无线网络进行配置,但通过无线网络配置的方法比较麻烦,建议用户使用有线网 ...

  • 安慧网盾怎么用?

    一,安慧网盾v1功能使用手册-下载安装 OK,开始安装 允许安装程序应该是这样的画面,下图 第二步是授权协议,点“我接受”即可。 接下来第三步是选择安装目录,默认即可。 然后点开始安装之后就是一路稍等 ...

  • 安慧网盾错误码怎么解决

    安慧网盾错误码怎么解决