XS泄露漏洞学习

XS Leak 漏洞学习
XS Leak 漏洞学习
0x01 前言
之前在做 HTB 题目时,遇到了这个漏洞,顺便学习一下。题目链接:Hack The Box :: Challenges
0x02 什么是 XS Leak
XS Leak,最早被叫做 XS Search,因为要和 XSS(跨站脚本攻击) 区分开,于是取名为 XS Leak,也就是 XS 泄露;XS 泄露最主要能够获取信息,算是信息泄露的一种攻击。
- “ 所以说了这么多,你还是没说咋个样子算是 XS Leak。”
- 好 ~ 莫急,且听我娓娓道来
XS Leak 的攻击方式主要是通过检索数据库信息实现的,简单来说,很多搜索界面,SQL 语句处会存在 XS Leak。
举个栗子
我们在搜索界面搜索 “Alice”,若返回的是 “404”,则说明 “Alice” 不在数据库中,然后进行爆破,最后能够找到存在的数据 “admin”,而它的状态码是 “200”;
- 而最早的 XS Leak 是
对于攻击者来说,就是信息收集的一部分。
- :“ 就这,有啥用嘛。”
- 你也许觉得这没什么用处,但是如果用来检索密码或者一些商业来往邮件呢?
- 好吧,这听着好像是没有用,可是随着技术不断更新,XS Leak 的攻击方式不断改进。
0x03 XS Leak 的利用
- 本来这篇文章几乎对于我来说已经很难写下去了,可是最近 CatCTF 当中,在测题的过程中偶然发现了 XSLeak 的真正用处,它并非是一个“鸡肋”
在开始说利用之前,需要明确的是 XSLeak 并非是一种漏洞,而是一种作辅助的攻击手法。
在这道 CatCTF 的题目 pastebin 当中,听 LemonPerfect 师傅说有部分是参考原题的,是一个 XSS 打 XSLeak 的题目,挺有意思。
先放 exp
1 | <script> |
webhook 是一个网站,地址是 https://webhook.site
可以用来拦截请求。
而那道题目当中,admin will visit your site soon,这也就构成了一个 xss,所以我们请求可以这么写
1 | http://vps:port/exp.html?text=catctf{xxx |
如果正确,回显2,错误回显3,完全正确回显1
0x04 小结
小结一下,该怎么说呢?XSLeak 更像是一种思想&攻击的辅助手段,而并非是一种漏洞,所以作为 HTB 的那一道题目,只是介绍了这种攻击辅助方式,非常有趣,能够相当拓宽攻击者的攻击思路。
- 本文标题:XS泄露漏洞学习
- 创建时间:2022-04-10 10:03:34
- 本文链接:2022/04/10/XS泄露漏洞学习/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
评论
.valine-container {
#vcomments {
.vwrap {
border 0.1rem solid var(--text-color-4)
.vheader {
.vinput {
color var(--text-color-3)
border-color var(--text-color-4)
&:focus {
border-bottom 0.1rem dashed var(--primary-color) !important
}
}
}
.vedit {
.veditor {
color var(--text-color-3)
}
.vctrl {
.vicon {
fill var(--text-color-3)
&.actived {
fill var(--primary-color)
}
}
}
}
button.vsubmit {
color var(--text-color-3) !important
background transparent !important
border 0.1rem solid var(--text-color-3) !important
&:hover {
color var(--primary-color) !important
border 0.1rem solid var(--primary-color) !important
}
}
}
.vcount {
color var(--text-color-3)
.vnum {
color var(--text-color-2)
}
}
.vcard {
.vnick {
.author {
margin-left 0.15rem
padding 0.15rem
color #fff
font-weight 450
font-size 0.9rem
background -webkit-linear-gradient(45deg, #e3565e, #ee854b, #f6c258, #90c68a, #5fb3b3, #6699cc, #c594c5)
background linear-gradient(45deg, #e3565e, #ee854b, #f6c258, #90c68a, #5fb3b3, #6699cc, #c594c5)
border-radius 0.15rem
}
}
.vhead {
.vnick {
color var(--primary-color)
}
.vsys {
color var(--text-color-3)
background var(--background-color-2) !important
}
}
.vcontent {
P {
color var(--text-color-3)
code {
color var(--code-foreground)
background var(--code-background)
}
}
}
.vh {
border-bottom-color var(--border-color)
}
.vquote {
border-left-color var(--border-color)
}
}
.vcopy {
color var(--text-color-4)
}
.vpage {
.vmore {
color var(--text-color-2)
border 0.1rem solid var(--border-color)
}
}
}
}