前言
因为前些天重新学习了redis未授权,并且在实战中成功复现,但是之后又遇到了新的问题:宝塔面板不清楚密码,没办法继续测试了。百度查询了一下:宝塔查看默认密码,在以前的版本中,可以直接回显明文密码,现在宝塔更新,只能回显用户名,密码加密了。没办法只能重新设置新的
可是,经过多次修改,登录的过程中却一直提示:密码错误
![图片[1]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd200924.png)
明明已经修改了密码,可为什么就是进不去呢
宝塔登录密码加密方式
此处分析的实验环境为宝塔版本:免费版 7.9.9
首先进入目录:/www/server/panel
可以看见一下文件目录
- /data/dafault.pl 获取宝塔默认登录密码
- /data/port.pl 开放端口
- /data/admin_path.pl 后台地址
- /data/default.db 宝塔面板的数据库,基本上面板信息都直接保存在这里面
我们这里主要分析的是tools.py文件
![图片[2]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd083319.png)
result = sql.table('users').where('id=?',(1,)).setField('password',public.password_salt(public.md5(password),uid=1))
可以看见 tools.py调用set_panel_pwd()函数设置密码
在密码加密中,分别使用public.md5()和public.password_salt()两个函数进行加密,接着我们继续跟踪这俩函数即可
寻找public文件:/www/server/panel/class/public.py
首先查看public.md5()函数:
![图片[3]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd083917.png)
就是对输入内容进行md5加密
接着查看函数:public.password_salt()
![图片[4]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd084046.png)
该函数就是先对明文密码加盐"_bt.cn",进行第一次md5运算,然后再添加随件salt,这个salt通过M函数从数据库得到,然后在进行一次MD5运算
![图片[5]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd084534.png)
该函数就还是获取数据库里面的值
综上所述:
宝塔对密码的加密规则就是:
md5(md5(md5(password)+'_bt.cn')+ salt)
简单复现脚本
from hashlib import md5
password = "明文密码"
salt = "数据库salt"
# 第一次MD5加密
md5_password = md5(password.encode()).hexdigest()
# 第二次MD5加密
md5_password = md5((md5_password + "_bt.cn").encode()).hexdigest()
# 第三次MD5加密
md5_password = md5((md5_password + salt).encode()).hexdigest()
print(md5_password)
演示:
![图片[6]-记一次宝塔文件分析-渗透云记 - 专注于网络安全与技术分享](https://b.encenc.com/wp-content/uploads/2023/04/d2b5ca33bd085026.png)
通过数据库可以查看到对应用户的salt
然后运行脚本即可
© 版权声明
渗透云记的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
渗透云记拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!
本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。详情见本站的“免责声明”如果有侵权之处请第一时间联系我们删除。敬请谅解!E-mail:admin@encenc.com
THE END










请登录后查看评论内容