![渗透实战 | 迂回获取目标数据 渗透实战 | 迂回获取目标数据]()
0x00 前言
好久没写实战了,今天给大家分享一下很久以前做过的项目。已知a系统的url,目标是拿到系统的数据和运营人员的身份信息。
0x01 日志泄露
首先观察系统的url:http://www.a.com/public,一看到这种带public的,就知道多半是没按照文档要求配根目录的thinkphp框架,这种一般会有日志泄露的漏洞。
http://www.a.com/data/runtime/Logs/Admin/21_01_09.log
就能下载对应日期的日志了,Logs后面的Admin是模块名,需要猜一下。
http://www.a.com/index.php?g=admin&m=public&a=dologin
还有管理员密码的hash值,一共有三个不同的hash值。
hash值前面有三个#符号,这个我熟啊,thinkcmf框架的密码加密规则,我做的第一个项目的目标就用的这个:
0x02 跑彩虹表
thinkcmf是thinkphp二开的框架,密码的加密规则是
###md5(md5(salt.pass))
cmd5没有收录。
知道了加密规则,虽然不知道salt是多少,但是thinkcmf其实默认有一个自带的salt,而且一般的开发都不会改这里。
写了个python脚本,套上top400w的字典,用默认的salt开始跑彩虹表,最后三个hash值撞出了两个。
日志里没有泄露用户名,不过我随手拿admin一试其中一个密码,就进去了。
0x03 转移目标
在a后台尝试用thinkcmf的已知漏洞getshell失败,似乎是修复了。只能老老实实找上传点。
找到上传点发现是上传到oss上的,不过后台有相关配置可以修改成上传到服务器本地。修改之后发现上传点还有后缀白名单过滤,最终没能绕过。
getshell失败了,但是发现oss用的域名是一个新域名,对该域名进行信息收集,发现git子域名,访问是gitlab。可以注册账号进去,拖回源码。
在源码中发现他们另外的一个系统,配置文件中找到后台的路径:http://www.b.com/admin
看过了他们的所有源码,从配置文件里收集密码整理成一份密码表,然后拿去爆破b.com的后台,用户名还是admin,其中一个密码复用成功。
0x04 越权撞库
进去之后发现只是普通管理员权限,能看的东西不多,不过在修改密码功能处可以通过修改url里的id值越权到其他管理员,能看到管理员的基本信息并且修改他的密码。
于是修改了id=1的管理员密码,用这个账号登录,发现是超级管理员权限。
这个权限能看到用户列表了,列表里能看到用户的邮箱和明文密码。
猜想较为靠前的用户可能是他们的内部人员测试时留下的。于是找了最前面一页的用户,逐个尝试复用他们的密码去撞库他们的邮箱,最终成功登录了一个。
进邮箱发现果然是系统的开发人员,翻看邮件寻找有没有最初的目标a系统的相关信息,成果丰富,最终获得a系统的测试服务器的ip地址和root密码以及程序文档。
虽然只是测试服务器,但登录后发现上面居然有正式服务器的数据备份。
至此数据拿到了,身份的话可以用测试服务器水坑钓鱼,或者直接去正式的a后台那里挖个xss。不过后面交给客户一个邮箱也说够用了,就没继续做了。
0x05 后记
thinkcmf日志泄露——跑彩虹表——发现新域名——git子域名——注册账号——发现新系统——整理密码表——爆破后台——越权修改密码——撞库邮箱——获取测试服务器权限——交付数据备份和邮箱。
喵,点个赞再走吧~
原文始发于微信公众号(小黑的安全笔记):渗透实战 | 迂回获取目标数据
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
https://cn-sec.com/archives/729141.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论