0%

XSS攻击与防御

XSS攻击与防御

什么是XSS攻击

XSS攻击的全称是跨站脚本攻击(Cross Site Scripting),为了不与层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,是WEB应用程序中最常见到的攻击手段之一。跨站脚本攻击指的是攻击者在网页中嵌入恶意脚本程序,当用户打开该网页时,脚本程序便开始在客户端的浏览器上执行,以盗取客户端cookie、盗取用户名密码、下载执行病毒木马程序甚至是获取客户端admin权限等。

常见的XSS攻击类型有两种,一种是反射型,攻击者诱使用户点击一个嵌入恶意脚本的链接,达到攻击的目的;另一种是持久型XSS攻击,黑客提交含有恶意脚本的请求,保存在被攻击的Web站点的数据库中,用户浏览网页时,恶意脚本被包含在正常页面中,达到攻击的目的

1
<input type=*"text"* name=*"nick"* value=*""*/><script>alert("haha")</script><!-" />

如何进行防御

XSS之所以会发生,是因为用户输入的数据变成了代码。一般是用户输入中不是用的,因此,我们需要对用户输入的数据进行HTML转义处理,将其中的“尖括号”、“单引号”、“引号” 之类的特殊字符进行转义编码

还可以设置cookie的HttpOnly属性,浏览器禁止页面JavaScript访问带有HttpOnly属性的cookie,可以防止XSS攻击者获取Cookie

欢迎关注我的其它发布渠道