怎样js 过滤跨站脚本攻击恶意脚本攻击

什么是XSS攻击 XSS又叫CSS&&(Cross Site Script) ,跨站脚本攻击。它指的是者往Web页面里插入恶意html代码,当用户该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。XSS属于被动式的攻击,因为其被动且不好利用,所以许多人常呼略其危害性。而本文主要讲的是利用XSS得到目标服务器的shell。技术虽然是老技术,但是其思路希望对大家有帮助。 如何寻找XSS漏洞 XSS攻击分成两类,一类是来自内部的攻击,主要指的是利用程序自身的漏洞,构造跨站语句,如:dvbbs的showerror.asp存在的跨站漏洞。另一类则是来来自外部的攻击,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。如当我们要渗透一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开,然后利用下面的技术得到一个shell。
XSS攻击方式
外部攻击:
传统的跨站利用方式一般都是攻击者先构造一个跨站网页,然后在另一空间里放一个收集cookie的页面,接着结合其它技术让用户打开跨站页面以盗取用户的cookie,以便进一步的攻击。目前该方式已经毕竟落后,所以对于这种问题一般大家都知道,一旦你收集到了Cookie也未必就可以渗透进入,因为在Cookie传输中的密码一般都是经过加密的。另外一般多数的外部攻击方式都是通过上传shell脚本来实施的,所以对于上传功能的安全性测试是需要非常谨慎的。
内部攻击:
通常情况下是看代码里对用户输入的地方和变量有没有做长度和对&〈&,&〉&,&;&,&&&等字符是否做过滤。还有要注意的是对于标签的闭合,像测试QQ群跨站漏洞的时候,你在标题处输入〈script〉alert(&test&)〈/script〉,代码是不会被执行的,因为在源代码里,有其它的标签未闭合,如少了一个〈/script〉,这个时候,你只要闭合一个〈/script〉,代码就会执行,如:你在标题处输入〈/script〉〈script〉alert(&test&)〈/script〉,这样就可以弹出一个test的框。
阅读(...) 评论()如何防止跨站点脚本攻击_百度知道怎样过滤跨站恶意脚本攻击_百度知道如何防御跨站脚本攻击_百度知道htmlentities
.cn/php/func_string_htmlentities.asp
htmlspecialchars
.cn/php/func_string_htmlspecialchars.asp
6.3 javascriptEncode javascript”编码”
javascriptEncode与HtmlEncode的编码方法不同,HtmlEncode是去编码,而javascriptEncode更多的像转义,它需要使用”\”对特殊字符进行转义。从原理上来讲,这都符合编码函数的一个大原则: 将数据和代码区分开,因为对于HTML Tag来说,我们对其进行”可视化(转换成可以见字符)”的编码可以将数据和HTML的界限分开。而对于javascript来说,我们除了要进行编码之外,还需要对特殊字符进行转义,这样攻击输入的用于”闭合”的特殊字符就无法发挥作用,从而避免XSS攻击,除此之外,在对抗XSS时,还要求输出的变量必须在引号内部,以避免造成安全问题。
.cn/js/jsref_escape.asp
该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列(十六进制\xHH)替换。
利用这个编码函数,不仅能防御XSS攻击,还可以防御一些command注入。
7. 一些开源的防御XSS攻击的代码库
PHP AntiXSS
这是一个不错的PHP库,可以帮助开发人员增加一层保护,防止跨站脚本漏洞。
/p/php-antixss/
xss_clean.php filter
/mbijon/1098477
HTML Purifier
http://htmlpurifier.org/
xssprotect
/p/xssprotect/
XSS HTML Filter
http://finn-no.github.io/xss-html-filter/
原文地址:
/articles/web/15188.html
/how-to-prevent-cross-site-scripting-attacks/
作者:独自等待 | 发布:日分类:标签:,,转载文章请注明:
目前有:1条访客评论
留下脚印,证明你来过。 由于近期工作比较忙,导致博客更新速度奇慢,希望大家不要介意,我会抽时间更新一些文章,希望大家喜欢。
本站文章部分为网络收集整理,若侵犯了您的版权请告知!
成功因为坚持,失败因为放弃!
日志总数:418 篇评论总数:1492 个标签数量:470 个链接总数:27 个建站日期:运行天数:2808最后更新:帐号密码
支持博客发展,爷来打赏你!(微信)标签云集
最新文章随机文章热门文章
留言光荣榜最新评论

参考资料

 

随机推荐