实战LFI+文件上传组合拳拿RCE

2019-09-09 约 749 字 预计阅读 2 分钟

声明:本文 【实战LFI+文件上传组合拳拿RCE】 由作者 Hulk 于 2019-09-09 09:09:07 首发 先知社区 曾经 浏览数 139 次

感谢 Hulk 的辛苦付出!

要分享这篇Writeup是作者在一次私人赏金项目上发现的,目标网站存在不安全的访问控制措施,可以利用其导致路径遍历(Path Traversal) +任意文件上传,以本地文件包含(LFI)方式,实现远程代码执行(RCE)。此处渗透测试测试是一次非常经典的的LFI+任意文件上传操作。考虑到站点隐私的问题,部分图片会做打码处理。

路径遍历(Path Traversal)

目标站点上有一个名为/se/v92711/generic/gn_deaultframe/2.0/defaultframe_toolbar_load.php的页面,在POST body中,作者发现了一个有趣的参数:frameManagerPath,内容经过base64-encode处理。这个参数用于加载目标站点上的JS文件。如下图:

解码base64,发现这是一个相对路径:

接下来尝试读取/etc/passwd的内容,需要先进行编码:L2V0Yy9wYXNzd2Q=

关于文件上传

在此之前,作者找到了一个文件上传点,可以上传任意格式文件,并且上传文件的存放路径可以在响应中看到。如下:

但问题来了,外部用户无法访问/wwwroot/path:/.。因此,这个漏洞暂时有些鸡肋。

打组合拳

首先,上传一个普通的webshell,反回文件存放的相对路径。

对路径做调整,base64-encode处理得到cmFudC9ibG9nL3BhdGh0cmF2ZXJzYWwvaW1hZ2UwNS5wbmc=,然后结合LFI,尝试执行。

请求:

响应:

最终,作者实现了远程代码执行:

参考来源:incogbyte

关键词:[‘渗透测试’, ‘渗透测试’]


author

旭达网络

旭达网络技术博客,曾记录各种技术问题,一贴搞定.
本文采用知识共享署名 4.0 国际许可协议进行许可。

We notice you're using an adblocker. If you like our webite please keep us running by whitelisting this site in your ad blocker. We’re serving quality, related ads only. Thank you!

I've whitelisted your website.

Not now