SS攻击机制及防御技术浅谈

xss攻击机制及防御技术浅谈摘要:跨站脚本攻击(XSS)是客户端Web安全的主要威胁。因跨站脚本攻击的多样性以及Web安全漏洞的隐蔽性,使得该类型的攻击很难彻底防御。介绍了跨站脚本攻击的基本概念,针对不同环境发生的跨站脚本攻击机制进行了分析,探讨了不同环境下如何防御跨站脚本攻击的具体技术。关键词:Web安全;XSS;跨站脚本攻击;Web漏洞;XSS防御屮图分类号:TP393文献标志码:A文章编号:1006-8228(2016)10-11-03DiscussiononXSSattackmechanismanddefensetechnologyGeQiangl,2,LiJun3,HuYongquanl(1.CollegeofComputerandInformationEngineering,IlenanUniversity,Kaifeng,Henan475004,China;2.CollegeofEnvironmentandPlanning,HenanUniversity;3.InformationOffice)Abstract:Crosssitescripting(XSS)attackisamajorthreattothesecurityofWebdient.BecauseofthediversityofXSSattacksandWebsecurityvulnerabilitieshidden,thistypeofattackisverydifficulttocompletelydefense.ThispaperintroducesthebasicconceptofXSSattacks,analyzestheXSSattackmechanismsofdifferentenvironmcnt,anddiscussesthespecifictechnologytodefensetheXSSattacksofdifferentenvironment.Keywords:Websecurity;XSS;crosssitescriptingattack;Webvulnerability;XSSdefense0引言在当今的Wcb2.0时代,Wob上的大多数站点实际上是应用程序,它们功能强大,提供各种各样的服务。网站向用户展示的内容是以动态形式生成的,并且能够满足用户的个性化需求[1]。但这些个性化的应用也给站点带来一定的安全隐患,例如,跨站脚本攻击等,同时,AJAX技术的流行使得XSS攻击威胁变得更加严重。XSS攻击在0WASP组织公布的OWASPTOP2013中位列第三[2-3],可见XSS攻击所造成的威胁之大。1XSS原理XSS攻击是一种间接攻击,攻击者通过Web服务器来攻击其他用户。攻击者向服务器提交一段恶意代码,而在服务器端并没冇对用户的输入做足够的安全处理,就将用户输入写入数据库。当其他用户向服务器再次请求含有恶意代码的网页时,服务器就会把包含恶意代码的网页返回,浏览器收到返回信息后进行相应的渲染、解码工作,此时恶意代码被触发执行,用户的机密信息将被窃取,甚至可以控制用户的系统[4]。XSS攻击原理如图1所示。先举一个简单的例子来展示跨站脚本攻击的效果,主耍代码如下:请输入你的姓名:Result,jsp代码如下:你好:varuserid='';varsiteid=669;var_istoken=1;var_model=JModel03J;WcbPageSpeed=375;UrchinTrack();如果用户输入恶意内容,并且没有对用户的输入做安全处理,因此在result页面就可能会出现安全威胁。如用户输入"alert('Hello');”,该字符串没有经过安全检查就写入数据库,当该name值被再次取出时,这个字符串会被浏览器解析执行,浏览器将弹出“Hello”。2浏览器的解码防御XSS攻击的主要方式是对用户的输入进行安全检查并进行适当的编码。对用户在不同地方的输入应当进行不同的编码。只有对用户的输入进行完整的安全检查和正确的编码才能冇效防御XSS攻击。对于下面这段代码,浏览器会进行三种解码。HTML解码、JS解码、URL解码。ThisisatestLinkvaruserid二'';varsiteid=669;varistoken二l;varmodel=,Model03,;WcbPageSpeed=375;UrchinTrack();首先,对于段落“Thisisatest"浏览器会进行HTML解码。其次,对于"Hello"浏览器会首先进行HTML解码,然后进行JS解码。最后对于连接“www.a.com"浏览器会进行URL解码[5]。因此,如果上述三个位置都是用户可编辑的,则开发人员就需根据浏览器对以上几处位置所进行的解码顺序來进行对应的编码操作。3XSS解决方案3.1ESAPI解决方案防御XSS攻击的有效办法就是对用户输入进行安全检查,然后采取相应措施,主要的措施有替换、移除、编码[6-7]o下面主要讨论采用编码方法防御XSS攻击。ESAPI是一个免费、开源的Web应用程序安全控制组件,可以帮助编程人员开发低风险应用程序。为了防御XSS攻击,在实际情况中,应根据网页显示用户输入内容位置的不同,而釆用不同的编码方式。用户的输入可能在网页的多个地方进行输岀,比如HTML标签屮、HTML属性屮...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

确认删除?