专栏首页FreeBuf从插件入手:挖掘WordPress站点的“后入式BUG”

从插件入手:挖掘WordPress站点的“后入式BUG”

前言

当任务目标是一个wordpress站点的时候,是否让你感到过头大?wpscan扫了半天,却没有任何有利用价值的bug,这时候就拍拍屁股走人了?

遇WordPress头大?让我们从插件入手!

流行框架一般不会有什么太大的漏洞,顶多根据少有的特性接口找到一些可以利用的数据,比如用户的基础信息:ID、名称、邮箱等,为潜在的爆破登陆做轻微的贡献。

NO,这时候更应该深入,越是扫不出的地方,越有可能发现有趣的点。而最容易出现非官方,有bug的地方就是插件、自定义插件、第三方功能了。

因此,在面对大型框架时,我们的入手目标就是“一般工具扫不出、普遍站点不一定有,根据管理员目的后来添加的,但混入站点拥有一定权限和功能的”漏洞点。

也就是去寻找笔者所戏称的“后入式BUG”。

寻找plugins的蛛丝马迹

总有人说,拿到一个目标是标准化框架,让人看着就觉得没什么容易下手测试的地方。其实测试的地方是有的,大佬和小白们的方式却略有不同。

1. 工具扫描

使用工具扫描总是最轻松的,基础信息刺探、简单的资产挖掘,甚至某些心大未修复的捡漏、备份文件暴露,特殊路径挖掘等,都能靠扫描器就直接扫出来。但轻松是一方面,另一方面你应该也意识到了,使用工具拼的只是带宽和时间,你的任务入手时间,扫描持续时间,扫描完成程度,规则广泛程度,报告书写速度,都会影响“你与别人谁能拿到奖金”的结果。而初入安全行业,偷懒不进去不学习的人,都停步在了这里。

2. 手工审计

扫描捡漏之余,一般才是大牛们开始发力的真正比武场。SRC排名靠前的师傅,据我认识的就有几个已经自己写出自动化开始做项目了。你用“开源扫描器+手工复测+疯狂写报告”跟他们拼?还是歇歇吧哈哈,他们早直接用SRC的API提交了,从SCAN->TEST->POC->GETSHELL->REPORT一条龙服务。

从前我不相信这个世界有龙,直到我看到了大佬们自己写的“日站一条龙”框架……而大佬们在抢走了第一波饭菜的时候,顺手也拿起勺子开始喝汤了。

事实说话,举例说明

大型开源框架很多,能使用插件的也挺多的。比如WordPress的站点这网上一搜一大把,那我们就拿WordPress举例说明吧。

首先随便找个WordPress的网站,我们就到网上搜一个随便看看吧。

按f12挂个黑页,哦不,按f12看看站点目前引入的文件,和现在的流量情况,找找API交互的endpoint以及现在直接能体现出来的error有没有可以利用的地方。

可以看见,这个站点使用了诸多的插件,某些插接因为太小众,并没被WPScan扫出来,即便扫出来了,或许规则库里也没有统计到有可利用的漏洞,这时候我们就可以找找这几个插件的源码着手审计。而审计之前,我们也可以在权限允许的页面,顺手测试一下这些插件的功能,说不定就有直观的能黑盒测试出来的bug呢?

可以看到,这个站点的PM功能(私信功能)出现了许多奇怪的error,看类型是xhr,流量中跟随输入拼写一直在递增。貌似是查询用户的?不如直接找到这个API,尝试手工测试。

可以看到,单单是黑盒测试,就发现此处API存在一个SQL注入点。

手工复测找到完美闭合方式后,调整速率再使用sqlmap确定一下,可喜可贺,确实找到一个注入点,类型Boolean & Time based。留好截图,组织一下语言,把前后发现、复测条件、payload全附上,一篇价值2k的高危漏洞报告就出炉啦!

这里在form里调用了javascript:autosuggest()来自动补全用户信息。

再看看补全用户信息怎么实现的,我们看看源码,果不其然,在这段代码中就存在一个教科书般的SQLinjection漏洞。

站点的开发在上线时使用了插件,却没经过严格审计,而选择了信任插件,实属失误。。

在刚刚的error信息中,隐约记得还看到了innerHtml()的调用,这可是容易出现xss的地方啊!当然,修复方式建议直接<?php die();?>了,也就不用考虑这个XSS了。。

年久失修遇见双管齐下

就在写文章的时候,看到上传图片都是直接传到CDN的图床了,直觉告诉我这里可能出现问题,那是不是图床的第三方SDK也会有洞呢?我们来找找看。

站点使用的是upyun-editor的上传代码,其中有个类似于demo的文件引起了我的注意。

这里看到代码,说不定可以造成反射XSS,那么我们直接POST到站点看看。

恩。。看来是正常解析了。但是Chrome下测试,会被xss defense的内部检查器拦截下来。。这可咋整。。

检查发现站点的返回还与源码本地测试的略有不同,并且既然有两个输入框,可不可以用组合方式绕过Chrome自带的XSS防护呢?

我们在第一个输入框填<script>第2个编辑器的值=0;第二个填;alert(1);//测试一下?

打完收官~ 虽低危100元,挖到新姿势还有奖金,想想也足以。

总结

不管是做项目,还是企业内部测试,使用扫描器进行信息收集永远只是个开始,而主要精力应该放在加深对框架理解与功能测试跟进上。

框架是否有外来代码?是否使用三方插件?有没有其他子域?

没有挖不到的洞,只有不努力的黑客。

加油吧,各位少年~

*本文作者:evil7,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

本文分享自微信公众号 - FreeBuf(freebuf)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-12-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Flashmingo:SWF文件自动化分析工具

    flashmingo是FireEye最新发布的一个用于自动分析SWF文件的框架。它可以自动对可疑的Flash文件进行分类,并进一步的指导分析过程。Flashmi...

    FB客服
  • 基于Lua插件化的Pcap流量监听代理

    1.前言 我们在实际工作中,遇到了一个这样的用例,在每天例行扫描活动中,发现有些应用系统不定期的被扫挂,因为我们不是服务的制造者,没有办法在不同的系统里打印日志...

    FB客服
  • 打造可扩展的针对web漏洞的渗透测试平台 – skadi

    0.背景分析 当今的互联网站点,各种cms和框架大规模普及,这虽然方便了广大站长,但是这些开源项目的安全性不容乐观,比如前一阵子的strutsII漏洞使各大平台...

    FB客服
  • 设计一个JavaScript插件系统

    插件是库和框架的常见功能,并且有一个很好的使用它的理由:它们允许开发人员以安全,可扩展的方式添加功能。这就使核心项目更具价值,这种开放形势可以帮助项目建立社区,...

    ConardLi
  • 本站使用的WordPress插件

    FHYC
  • 五月福利,吐血整理,重磅推荐,我坚信总有你需要的

    好了,废话就讲这么多,开始进入今天的主题。鉴于大家现在的需求,这个月主要分享以下几个福利:

    compassblog
  • chrome插件 DIY

    本文作者:IMWeb coolriver 原文出处:IMWeb社区 未经同意,禁止转载 1 前言 对于一个web前端开发者,chrome浏览器是一个工...

    IMWeb前端团队
  • chrome插件 DIY

    对于一个web前端开发者,chrome浏览器是一个工作,学习和生活的必备工具。除了chrome本身的基本能力(控制台等)外,能大幅提高这个神器的使用体验的是,可...

    IMWeb前端团队
  • Flashmingo:SWF文件自动化分析工具

    flashmingo是FireEye最新发布的一个用于自动分析SWF文件的框架。它可以自动对可疑的Flash文件进行分类,并进一步的指导分析过程。Flashmi...

    FB客服
  • 神兵利器推荐——你一定不能错过的chrome插件

    最近有朋友问我,有没有什么可以提升效率的chrome插件推荐一下。我看了一下我的插件库,好用的还真不少。既然要推荐给一个人,还不如整理出来,分享给所有需要的人。...

    职场亮哥

扫码关注云+社区

领取腾讯云代金券