跨站脚本攻击(Cross-Site Scripting),XSS

跨站脚本攻击的英文全称是Cross-ite Scripting,缩写为CSS,但是为了和层叠样式表(Cascading Style Sheets,CSS)进行区分,所以称为XSS。

(1)XSS的攻击原理

XSS攻击本质上是一种注入类型的攻击。

正常情况下,Web应用只会执行应用内预定义的JS代码来实现应用自身的功能,但是如果应用对外部输入参数处理不当,攻击者可将恶意JavaScript代码注入当前Web页面,一旦受害者访问这些页面,攻击者注入的恶意代码就会执行。

当外部恶意代码被注入正常应用的页面以后,浏览器无法区分它是应用自身的代码还是外部注入的代码,这些恶意代码拥有和当前页面正常JS脚本一样的权限,例如读写Cookie、读写页面内容、发送HTTP请求等等。

(2)XSS的攻击类型

①、反射型XSS攻击,(Reflected XSS)

也可以称为非持久性XSS(Non-Persistent XSS)

这是XSS最常见的一种攻击类型,指的是服务端应用在收到客户端的请求后,未对请求中的参数做合法性校验或安全过滤,直接将参数用于构造HTML页面并返回给浏览器显示,如果参数中包含恶意脚本,就会以HTML代码的形式被返回给浏览器执行。

②、存储型XSS攻击

在存储型XSS攻击者,服务端应用将攻击者提交的恶意代码存储在服务端,受害者每次访问一个干净的URL时,服务端就在响应页面中嵌入之前存储的恶意代码,这些恶意代码将在受害者客户端执行。

③、基于DOM的XSS攻击

正常应用中的JavaScript程序也可以接收外部的输入数据并直接在客户端渲染和执行,如果处理不当,它就可能将外部数据当作代码来执行。通常是客户端的JavaScript脚本在修改和构造前档页面的DOM节点时触发恶意代码执行,并不是服务端直接返回恶意代码给客户端执行。

④、Self-XSS攻击

利用社会工程学欺骗用户,让他们自己去复制恶意代码并粘贴到浏览器中。

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇