快讯资讯
手机优化
系统数码
网络通信人工智能
网站游戏
测评专题

  Android平台的SQL注入漏洞       浅析XSS与XSSI异同    

XSS跨站脚本攻击问题和原理详解

时间:2026-09-10 00:53 来源:未知 人气:

跨站脚本攻击(XSS,Cross-site scripting)是最常见和基本的攻击Web网站的方法。攻击者可以在网页上发布包含攻击性代码的数据,当浏览者看到此网页时,特定的脚本就会以浏览者用户的身份和权限来执行。通过XSS可以比较容易地修改用户数据、窃取用户信息以及造成其它类型的攻击,例如:CSRF攻击。恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。

跨站脚本攻击的解决思路

预防XSS攻击的基本方法是:确保任何被输出到HTML页面中的数据以HTML的方式进行转义(HTML escape)。例如PHP输出:

PHP Code复制内容到剪贴板 textarea?phpecho$articleText;?/textarea

如果这个articleText是由用户自行输入的,那么攻击者很有可能输入一段包含javascript恶意攻击代码的文本,使得最终输出变成:

PHP Code复制内容到剪贴板 textarea /textareascriptalert('hello')'/script /textarea

上述代码,在浏览器中渲染,将会执行JavaScript代码并在屏幕上alert hello。当然这个代码是无害的,但攻击者完全可以创建一个JavaScript来修改用户资料或者窃取cookie数据。
解决方法很简单,就是将输出的值的值进行html escape,转义后的输出代码如下

PHP Code复制内容到剪贴板 textarea /textareascriptalert(hello!)/script /textarea

这样就不会有任何危害了。

XSS危害

XSS其实是一门小众但是热门的攻击技术,之所以小众,是由于费时间、很难成功、攻击无法自动化和需要扎实的htmljs功底,但是由于漏洞存在广泛,即使是大型互联网公司的站点也很容易由于疏忽存在此漏洞,这就是最大的热门。
其实无论是哪一种xss攻击手段,其原理都是使用了xss就是在页面执行你想要的js,也就是说,只要遵循一个原则后端永远不信任前端输入的任何信息,无论是输入还是输出,都对其进行html字符的转义,那么漏洞就基本不存在了。

跨站请求伪造攻击(CSRF)

跨站请求伪造(CSRF,Cross-site request forgery)是另一种常见的攻击。攻击者通过各种方法伪造一个请求,模仿用户提交表单的行为,从而达到修改用户的数据或执行特定任务的目的。
通常情况下CSRF攻击都配合XSS来实现用户身份的模仿。

解决思路

1、增加攻击的难度。GET请求是很容易创建的,用户点击一个链接就可以发起GET类型的请求,而POST请求相对比较难,攻击者往往需要借助JavaScript才能实现;因此,确保form表单或者服务端接口只接受POST类型的提交请求,可以增加系统的安全性。

2、对请求进行认证,确保该请求确实是用户本人填写表单或者发起请求并提交的,而不是第三者伪造的。

本文标签:

更多文章

相关文章

网站导航 | 快讯 | 资讯 | 手机

  • 系统 | 数码 | 网络通信 | 人工智能 | 网站 | 游戏

    合作伙伴:

  • 友情链接(欢迎业界知名网站交换链接)申请友情

    

    声明:本站资源皆来自网络,如有侵权问题,请联系管理员处理!

    Copyright ©2020-2028快知站 版权所有 All rights reserved.

    闽ICP备20010713号-1 闽公网安备 35020602001684号