DokuWiki fetch.php SSRF 漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

作者:**baolongniu(牛保龙)** ### 关于DokuWiki DokuWiki是一个开源wiki引擎程序,运行于PHP环境下。DokuWiki程序小巧而功能强大、灵活,适合中小团队和个人网站知识库的管理。 ### 漏洞简介 DokuWiki最新 2016-06-26a版本存在一个SSRF漏洞,当DokuWiki fetch.php允许下载外部资源时(fetchsize不为零),外部攻击者可以通过猜解tok绕过安全验证,请求服务器内网资源。 ### 漏洞分析 DokuWiki fetch.php文件允许下载外部文件,外部文件地址传递给参数media,但是在请求时候有tok安全校验,请求如下: `/dokuwiki/lib/exe/fetch.php?media=http://192.168.141.128:80/test.php?test.jpg&tok=0f35df` 安全校验在checkFileStatus()函数中,如图: ![](https://images.seebug.org/content/images/2017/02/97463DFF-6C18-49C9-852D-B9742B2652A1.png) 由上图中可见,tok安全校验就是把$media、$width(不传递值为空)和$height(不传递值为空)三个变量在media\_get\_token()函数中计算一下,然后把结算结果和tok参数比对,只有比对一致才能通过校验,继续看media\_get\_token()函数,如图: ![](https://images.seebug.org/content/images/2017/02/97463DFF-6C18-49C9-852D-B9742B2652A1-1.png) 由上图中可见,media\_get\_token()函数把$media、$width和$height三个变量值拼接起来,再加上auth\_cookiesalt()函数值,在PassHash::hmac()函数中取了md5,把md5的前6位($token变量)返回。继续看auth\_cookiesalt()函数,如图:...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息