【白帽子学习笔记13】DVWA CSRF【反射性XSS(跨站点脚本攻击)】
文章目录
参考博客:https://blog.youkuaiyun.com/weixin_43625577/article/details/89917893
XSS
1、什么是XSS?
XSS,跨站脚本攻击(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意的 Script 代码,当用户浏览该页面时,嵌入其中 Web 里面的 Script 代码就会被执行,从而达到恶意攻击用户的目的。
2、XSS类型
-
反射型XSS:非持久化,需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。特点:弹窗警告、广告;javascript;在浏览器中执行。
-
存储型XSS:持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie。
-
DOM型XSS:文本对象模式XSS,通过修改页面的DOM节点形成的XSS,可存储型,可反射型,只取决于输出地点。
3、漏洞形成的原因
- 服务器对用户提交的数据过滤不严;
- 提交给服务器端的脚本被直接返回给其他客户端执行;
- 脚本在客户端执行恶意操作;
反射型XSS
1、原理图
获取Cookie
首先需要认识的一个事情就是什么是Cookie?以及他是怎么生成的?
-
什么是Cookie?
Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息 -
Cookie的组成
Cookie是一段不超过4KB的小型文本数据,由一个名称(Name)、一个值(Value)和其它几个用于控制Cookie有效期、安全性、使用范围的可选属性组成
(1) Name/Value:设置Cookie的名称及相对应的值,对于认证Cookie,Value值包括Web服务器所提供的访问令牌(2) Expires属性: 设置Cookie的生存期。有两种存储类型的Cookie:会话性与持久性。Expires属性缺省时,为会话性Cookie,仅保存在客户端内存中,并在用户关闭浏览器时失效;持久性Cookie会保存在用户的硬盘中,直至生存期到或用户直接在网页中单击“注销”等按钮结束会话时才会失效
(3) Path属性:定义了Web站点上可以访问该Cookie的目录
(4) Domain属性:指定了可以访问该 Cookie 的 Web 站点或域。Cookie 机制并未遵循严格的同源策略,允许一个子域可以设置或获取其父域的 Cookie。当需要实现单点登录方案时,Cookie 的上述特性非常有用,然而也增加了 Cookie受攻击的危险,比如攻击者可以借此发动会话定置攻击。因而,浏览器禁止在 Domain 属性中设置.org、.com 等通用顶级域名、以及在国家及地区顶级域下注册的二级域名,以减小攻击发生的范围
(5) Secure属性:指定是否使用HTTPS安全协议发送Cookie。
(6) HT

本文深入解析跨站脚本攻击(XSS),涵盖XSS的三种类型:反射型、存储型和DOM型,详细阐述了XSS漏洞形成的原因及如何利用XSS获取Cookie、重定向等攻击手段。同时,通过不同安全等级的示例,展示了防御XSS攻击的方法。
最低0.47元/天 解锁文章
1349

被折叠的 条评论
为什么被折叠?



