Web渗透之XSS入门

XSS:跨站脚本攻击;原理:攻击者在网页中嵌入客户端脚本(通常是JavaScript的恶意脚本),当用户使用浏览器加载被嵌入恶意代码的网页时,恶意脚本代码就会在用户的浏览器执行,造成跨站脚本攻击。

XSS的危害:1.针对用户:劫持cookie,网络钓鱼,植马挖矿,广告刷流量

                      2.针对web服务:web蠕虫,篡改页面,劫持后台

常出现的场景:评论区,留言区,个人信息,订单信息等等。

XSS的分类:反射型XSS;存储型XSS;DOM型XSS

反射型XSS:非持久性、参数型的跨站脚本,恶意代码并没有保存在目标网站,通过引诱用户点击一个链接到目标网站的恶意链接来实施攻击的。

存储型XSS恶意代码被保存到目标网站的服务器中,这种攻击具有较强的稳定性和持久性。比较常见的场景是:黑客写下一篇包含有恶意JavaScript代码的博客文章,文章发表后,所有访问该博客的用户,都会在他们的浏览器中执行这段恶意js代码。

  

 DOM型XSS: dom是window对象下内置的document对象,DOM-XSS就是输出点在dom,属于特殊的反射型XSS.

XSS类型 存储型 反射型 DOM型
触发过程

1.黑客构造XSS脚本

2.正常用户访问携带XSS脚本的页面

正常用户访问携带XSS脚本的URL 正常用户访问携带XSS脚本的URL
数据存储 服务器 URL URL
谁来输出 后端web应用程序 后端web应用程序 前端javascript
输出位置 HTTP响应中 HTTP响应中 动态构造的DOM节点中
是否持久

防御方式

1.对用户的输入进行合理验证:对特殊字符(如<、>、‘、“等)以及<script>、javascript等字符进行过滤。

2.根据数据位置设置恰当的输出编码:根据数据将要置于HTML上下文中的不同位置(HTML标签、HTML属性、javascript脚本、css、url)对所有不可信数据进行恰当的输出编码。

3.设置HttpOnly属性:避免攻击者利用XSS漏洞进行Cookie劫持攻击

猜你喜欢

转载自blog.csdn.net/m0_56632799/article/details/128435219