拿到关键信息key
本次渗透测试范围为本地,具体如下:
表1-1:渗透测试对象
序号 | 系统名称 | 网站地址 | 内外网 |
1 | pyexp | http://192.168.21.43 | 内网 |
2023年11月4日 晚上18:00晚上19:30
在本地开展内网的vmware虚拟机中渗透测试。
TYR2
- 信息收集
- 主机存活扫描和端口扫描
发现只有一个3306 mysql开放,那肯定只能远程连接了,这里我们使用九头蛇暴力破解一下
- 漏洞验证与利用
- mysql -uroot -pprettywoman -h 192.168.21.43远程登录数据库
查看所有数据库和当前用户
发现用户自建的数据库一个-->data
深入查看一下
有一个fernet表,还有一两列加密的数据
- 使用常规的解密软件解密-不成功
- 猜测表名可能会有线索,去搜索一下
那么应该是着手fernet解码了!
- 说是密钥和密文嘛,然后使用密钥来配合解密
from cryptography.fernet import Fernet
# 密钥
key = b'UJ5_V_b-TWKKyzlErA96f-9aEnQEfdjFbRKt8ULjdV0=' # 替换为您实际使用的密钥
# 加密的字符串
encrypted_string = b'gAAAAABfMbX0bqWJTTdHKUYYG9U5Y6JGCpgEiLqmYIVlWB7t8gvsuayfhLOO_cHnJQF1_ibv14si1MbL7Dgt9Odk8mKHAXLhyHZplax0v02MMzh_z_eI7ys='
# 创建 Fernet 对象
fernet = Fernet(key)
# 解密字符串
decrypted_string = fernet.decrypt(encrypted_string)
# 将解密后的字节数据转换为字符串
decrypted_string = decrypted_string.decode('utf-8')
# 输出解密结果
print(decrypted_string)
结果:lucy:wJ9`"Lemdv9[FEw-
看起来很乱,第一眼不知道是什么
- 用mysql的函数看看本地/etc/passwd文件
select load_file('path')
那么我们可以使用ssh的1337端口进行一个登录,前面解码出来的字符串应该就是一个密码
- 登录成功并且拿到lucy的flag
- 接下来进行提权操作
还是先用sudo -l看看那些能够使用root执行的权限
发现有个py文件具有
- 查看脚本发现脚本会让我们输入一个系统命令并且执行,那么就很简单了,我们调用这个脚本输入反弹shell的命令但是呢,这个命令需要是python代码的,因为靶机中安装了python环境,这样更顺利一些,避免出现过多的错误而变得繁琐。
- 成功反弹并且拿到shell
pyexp靶场渗透测试主要是通过3306开放的mysql服务进行渗透测试,过程中认识到了一种新的加密方式fernet加密。