dedecms漏洞组合拳拿站(渗透笔记)

dedecms漏洞组合拳拿站(渗透笔记)

前言

之前也写过几篇关于dedecms漏洞复现的文章了,光是复现也没什么意思,于是利用google hacking技巧,找到了一个使用dede的站点,正好用上了之前几篇文章里提到的所有的技术。所以特地写出来,也当做一个总结吧。

利用漏洞组合更改管理员的密码

之前几篇文章的链接:
https://blog.csdn.net/he_and/article/details/80988550
https://blog.csdn.net/he_and/article/details/80988550
当我们按照上面两篇文章的方法成功更改了管理员的密码过后,我们访问member/edit_baseinfo.php
同样的,访问这个页面的时候还是需要修改cookie,不然你改的就是你自己账户的密码。

替换了过后,返回的页面如下:

原密码就是我们通过任意用户密码修改漏洞修改的密码,在这个页面修改了密码就会真正修改管理员的密码,这也是dede设计的一个缺陷——前台修改管理员的密码可以影响后台的密码。可能设计者没想到有人能够通过前台登录管理员账户(正常情况下,dede不能再前台登录管理账户),但是他却爆出了一个前台任意用户登录漏洞!

修改完密码过后,就是需要找后台了,默认后台路径被修改了,所以只有扫一下后台了。我用的是DirBuster,主要是感觉它内置字典还是挺好用的。

扫着扫着就发现了一个manage目录,这一看就有猫腻呀,访问了一下果然是后台,用刚刚修改的密码登录:

这里需要更正一下,我在拿到这个站的时候,先是扫了一下目录,毕竟要先确定是否找得到后台,不然拿到密码也没用。

getshell

关于dedecms后台getshell我之前也复现过了,文章链接:
https://blog.csdn.net/he_and/article/details/80890664
按照文章中的方法写入一句话木马,使用菜刀连接

接下来就是提权了,提权的过程还是挺曲折的。一开始扫目录的时候还扫出来了phpmyadmin,所以我直接root账户以及随便猜的一个密码登录了一下,没想到直接就上去了,都不需要我找密码了。想着有数据库的root账户提权应该就很简单了,直接传了一个带有mysql提权的大马上去了。

根据回显,讲道理我已经拿到了system权限,但是当我执行net user命令时,返现没有回显,我一开始以为管理员只是禁用了net.exe,于是使用了net1.exe执行命令依然没有回显。猜测可能是管理员删除了net.exe与net1.exe,于是自己上传了一个,结果依然不能执行。

见识比较少,没搞懂管理员做了什么,于是想换一种方式,利用端口反弹得到一个cmdshell试试。数据库中执行如下语句

然后我这边的主机用netcat监听4455这个端口

用反弹的shell执行net命令还是不行,emmmmm,net命令不能执行,有点麻烦,但是我们是想用net命令添加用户以及开启远程桌面服务。是不是可以不用net.exe来实现呢?

于是找到了一个不用net.exe与net1.exe建立用户,并添加到Administrators组的可执行文件。上传上去,提示添加用户成功但是添加到管理员组失败。我当时就感觉有点奇怪,但是至少可以创建用户了,是个好的开头。

接下来就是打开远程桌面的端口,我试了网上提到的好几种方法然后扫描端口发现3389一直都是关闭的。于是猜测会不会是端口被修改了?直接通过操作注册表的方式查看和开启远程桌面服务

开启:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
查询:
REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber


转换为10进制就是9991,扫了一下果然开启了。你以为现在能登录了吗?真是和我一样天真!

用刚刚创建的账户登录不了,提示找不到配置文件,看来管理员访问控制做的比较好,现在陷入了僵局——不能创建管理员账户,普通的用户又登录不了。

我突然想起我还有个神器没上场呢——mimikatz,这个神器可以直接抓取系统中sa文件的账户密码,只需两行命令

privilege::debug
sekurlsa::logonpasswords

我吧神器传上去执行一下:


反正就是拿到管理员的密码了,直接登上服务器,在本地执行了一下net命令,还是不能用,那我就不用呗,我直接去账户管理里操作,创建用户没什么问题,就是到了添加管理员时,禁止访问!我真的服了,直接添加不了,难怪一开始那个可执行文件失败了。想着都拿到服务器了,就先放着了,这个问题也还没解决…望大佬告知

需要练手的可以关注我的公众号,向我留言

你可能感兴趣的:(Web安全)