赏金猎人|挖1day漏洞反推技巧实战

admin 2023年4月10日11:08:30评论52 views字数 1296阅读4分19秒阅读模式

以前看了一篇推特老外做赏金猎人的文章,感触有点深,作者没有写相关漏洞分析,只是说了自己挖了多少个漏洞,这里简单的分析下:

1day漏洞在很多时候至关重要,不管是在红蓝对抗,还是在赏金猎人生涯中,他占据着很大的地位,关于1day概念,这里不再过多描述.

开始我们快乐的全过程学习:

发现某个cms,他是nodejs开发的,cms是Etherpad Lite,通过百度 google搜索相关漏洞详情:

  

赏金猎人|挖1day漏洞反推技巧实战

随便找几个打开链接:

赏金猎人|挖1day漏洞反推技巧实战

会发现一件事情,你根本看不到漏洞细节,全是漏洞描述信息

使用中文搜索: 赏金猎人|挖1day漏洞反推技巧实战

赏金猎人|挖1day漏洞反推技巧实战

也是只有描述没有漏洞细节

而你用这种方法去搜索一些国内比较知名的cms,如phpcms漏洞:

赏金猎人|挖1day漏洞反推技巧实战

你可以搜索到很多,并且除了描述信息,还有直接利用的漏洞poc和exp,你可以通过百度/谷歌获取到漏洞细节,直接利用漏洞.

现在继续回到Etherpad Lite这个cms系统,很显然Etherpad Lite公开的漏洞描述,并没有公开poc,说明是1day,需要我们去反推:

让我们再来一次,再次谷歌搜索:

赏金猎人|挖1day漏洞反推技巧实战

赏金猎人|挖1day漏洞反推技巧实战

这些都是cve列表,记录着产品的漏洞,我们随便找到一个打开,我以第一个为例:

 

赏金猎人|挖1day漏洞反推技巧实战

发现很多漏洞,点一个xss进去:

赏金猎人|挖1day漏洞反推技巧实战

会发现一个链接:点击链接部分:

  

赏金猎人|挖1day漏洞反推技巧实战

https://github.com/ether/etherpad-lite/commit/5879037ddca4ab9a4002adf90fc7ce6c9f82f01b

打开链接,通过两边文件的代码对比,就可以看出哪里出现的安全问题: 

赏金猎人|挖1day漏洞反推技巧实战

这样我们就可以看到区别,修复后的文件,使用padutils.escapeHTML去处理修复,这样我们追踪到问题代码后,对我们唯一的难点就是获取完整代码,跟踪路由地址,往上看文件修复:

赏金猎人|挖1day漏洞反推技巧实战

作者说漏洞于2019年10月19日完成修复,那么怎么更快确认哪些版本的Etherpad Lite受影响呢?通过这里查看:

赏金猎人|挖1day漏洞反推技巧实战

这些列举出来的是已经修复的,而1.8.0-beta.1之前都是未修复的,打开releases看下:

赏金猎人|挖1day漏洞反推技巧实战

的确是,1.7.5版本他的发布时间是2019年1月26,1.8.0-beta.1的发布时间是2019年11月3.

下载1.7.5版本的项目看看便知:

通过修复文件获取到漏洞路径:src/templates/pad.html:

赏金猎人|挖1day漏洞反推技巧实战

通过代码发现,只要传入url数据,带入到box.innerHTML 即可触发xss,url没做处理

下载1.8.0-beta.1,查看相关代码,可以发现已经修复了:  

赏金猎人|挖1day漏洞反推技巧实战

同理其他漏洞/其他产品漏洞也可以通过这种方法发现漏洞问题是什么.

光光是知道哪个文件存在漏洞还不行的,这里简单的梳理下,怎么做才能真正利用上漏洞:

大致思路如下:    

获取存在安全问题项目源码->摸清楚路由地址->根据修复之前的代码反推安全问题->构造漏洞poc->渗透

简单抛砖引玉,希望可以帮助到大家.

声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后果

转自:白帽子左一

侵权请私聊公众号删文

赏金猎人|挖1day漏洞反推技巧实战

赏金猎人|挖1day漏洞反推技巧实战

原文始发于微信公众号(编码安全研究):赏金猎人|挖1day漏洞反推技巧实战

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年4月10日11:08:30
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   赏金猎人|挖1day漏洞反推技巧实战http://cn-sec.com/archives/1663995.html

发表评论

匿名网友 填写信息