加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 安全 > 正文

漏洞剖析 一个Markdown解析器的持久型XSS漏洞

发布时间:2022-05-11 09:17:05 所属栏目:安全 来源:互联网
导读:什么是Markdown? Markdown是一种轻量级的标记语言,流行程度已经得到了GitHub和Stack Overflow的广泛支持,作为普通人我们也可以轻松上手。 漏洞分析:一个Markdown解析器的持久型XSS漏洞 用markdown来写文章非常赞,那些琐碎的HTML标签都可以抛到脑后不用管
         什么是Markdown?
 
        Markdown是一种轻量级的标记语言,流行程度已经得到了GitHub和Stack Overflow的广泛支持,作为普通人我们也可以轻松上手。
 
        漏洞分析:一个Markdown解析器的持久型XSS漏洞
 
        用markdown来写文章非常赞,那些琐碎的HTML标签都可以抛到脑后不用管。最近5年内,markdown收到非常多的关注,包括Reddit,Github,StackOverflow在内的很多应用都使用 markdown这也催生了很多的markdown解析器的产生,这里定义了一些markdown语法,语法约定markdown解析器将这些标签解析为html标签。
 
复制
[a](javascript:prompt(document.cookie))
[a](j    a   v   a   s   c   r   i   p   t:prompt(document.cookie))
![a](javascript:prompt(document.cookie))
<javascript:prompt(document.cookie)>
 
上面这些payload是由Aleksa和原文作者一起搞出来的。在过去的12个月内,在实际渗透测试中证明,上面的这些 payload 是有效的。并且很多 markdown 解析器都受到影响。来看一下***一个payload:
 
复制
[test](javascript://%0d%0aprompt(1);com)
1.
我们猜测,markdown 解析器可能通过如下几个步骤来进行解析&转换:
 
判断时候有协议头?//有javascript 伪协议,Y
 
hostname 是以常见的域名后缀(com, org)结尾的?//是的,以 com 结尾 Y
 
将上述 payload 转换为 HTML 标签,//结果如下
 
复制
<a href="javascript://%0d%0aprompt(1);com>test</a>
1.
成功构造了一个XSS payload!当点击了上述链接后,就会触发XSS!
 
Telescope解析器一个持久性 XSS 漏洞(CVE-2014-5144)
 
Telescope是一个有名的开源项目,类似Reddit和Hackernews一样,提供一个社区功能。Telescope的一个解析帖子&评论的功能存在 XSS 漏洞,并且这个功能存在很久了!

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读