本文思路:
nmap端口扫描-->访问网站搜集信息-->利用OpenDocMan v1.2.7的sql注入漏洞获取webmin用户的密码-->webmin用户ssh登录搜集信息-->利用内核版本漏洞提权(或者 爆破postgresql用户名密码-->postgresql中获得vulnosadmin的密码-->通过vulnosadmin用户目录下的r00t.blend文件获得root用户密码)
具体步骤:
前置步骤:arp-scan扫描得到靶机ip
攻击机中输入
sudo arp-scan -l
扫描到同网段ip,根据靶机MAC地址,可知本靶机ip为192.168.101.27

步骤1:nmap端口扫描
攻击机上输入以下命令,对靶机进行TCP全端口的扫描
sudo nmap -sS -A -p- 192.168.101.27
扫描出开放端口22(ssh),80(http),6667(irc,这个有点神奇,不知道后面会不会用到)

步骤2:登录网页收集信息
浏览器访问:http://192.168.101.27/
进来之后是这样的提示通过渗透website获取root权限和flag

点击上图的website,来到 http://192.168.101.27/jabc/
在这个站点四处逛逛,最后来到了documentation页面:http://192.168.101.27/jabc/?q=node/7
啥也没有,就有点诡异

右键 查看页面源代码,发现隐藏的提示

根据上图中的提示访问: http://192.168.101.27/jabcd0cs/
用户名和密码都是guest

在这个站点也翻了一遍没发现啥特有用的,但注意到网站是用OpenDocMan v1.2.7创建的。
在exploit-db中查找OpenDocMan,找到一条版本符合的
OpenDocMan 1.2.7 - Multiple Vulnerabilities - PHP webapps Exploit
https://www.exploit-db.com/exploits/32075里面记录了两个问题,一个是sql注入,由于我们现在是guest用户,可能可以利用这个获得管理员账户和密码;第二个是通过访问控制漏洞使当前用户获取管理员权限,我没用这个方法,但有小伙伴用这个方法也成功了。
步骤3:利用sql注入获取管理员账户和密码
那就试试sql注入吧:
浏览器访问如下url,获得当前数据库名称(其实这步没啥必要)
http://192.168.101.27/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,database(),3,4,5,6,7,8,9

浏览器访问如下url,获得当前数据库所有表名称

本文详述了一次渗透测试的过程,从nmap端口扫描开始,发现了OpenDocMan v1.2.7的SQL注入漏洞,利用此漏洞获取了Webmin用户的密码,并通过SSH登录。接着尝试内核版本漏洞提权或通过爆破PostgreSQL获取额外用户权限,最终获得了root用户密码,实现了系统完全控制。
最低0.47元/天 解锁文章
3160





