首页技术文章正文

什么是XSS跨站脚本攻击?

更新时间:2021年04月12日 14时37分15秒 来源:黑马程序员

XSS全拼为Cross Site Scripting,意为跨站脚本,其缩写原本为CSS,但这与HTML中的层叠样式表( Cascading Style Sheets)缩写重名了,为了区分就将跨站脚本改为了XSS。

XSS是Web应用系统最常见的安全漏洞之一,它主要源于Web应用程序对用户输入检查和过滤不足。攻击者可以利用XSS漏洞把恶意代码( HTM代码或JavaScript脚本)注入网站中,当有用户浏览该网站时,这些恶意代码就会被执行,从而达到攻击的目的。

1618208898116_XSS.png


通常,在XSS攻击中,攻击者会通过邮件或其他方式诱使用户点击包含恶意代码的链接,例如攻击者通过E-mail向用户发送一个包含恶意代码的网站home.com,用户点击链接后,浏览器会在用户毫不知情的情况下执行链接中包含的恶意代码,将用户与home.com交互的Cookie和Session等信息发送给攻击者,攻击者拿到这些数据之后,就会伪装成用户与真正的网站进行会话,从事非法活动,其过程如下图所示。

1618208947784_xss跨脚本攻击.jpg


对于XSS漏洞,最核心的防御措施就是对用户的输人进行检查和过滤,包括URL、查询关键字、HTTP头、POST 数据等,仅接受指定长度范围、格式适当、符合预期的内容,对其他不符合预期的内容一律进行过滤。 除此之外,当向HTML标签或属性中插人不可信数据时,要对这些数据进行相应的编码处理。将重要的Cookie标记为http only,这样JavaScript脚本就不能访问这个Cookie,避免了攻击者利用JavaScript脚本获取Cookie。



猜你喜欢:

6款实用的开发安全测试工具

性能测试包括哪些类型?性能测试种类介绍

性能测试工具有哪些?常用性能测试工具介绍

自动化测试是什么?什么情况下适合用?

黑马程序员软件测试工程师培训课程

分享到:
在线咨询 我要报名
和我们在线交谈!