红日靶场3
靶场环境
web-centos
网卡1:192.168.111.136 (公网IP) 网卡2:192.168.93.100 (内网IP)
web-ubuntu
网卡1:192.168.93.130(内网IP)
PC-web
网卡1:192.168.93.30(内网IP)
DC-win12
网卡1:192.168.93.10(内网IP)
SERVER-win08
网卡1:192.168.93.20(内网IP)
拓扑图
其中web-ubuntu为网站的真实服务器,我们通过访问web-centos然后使用niginx反代到web-ubuntu上。
信息收集
端口信息
这里我们使用nmap来进行收集
发现有80端口,我们直接访问。
目录收集
使用dirsearch进行收集发现了几个关键的目录文件 分别为 后台目录administrator rebots.txt 配置文件web.config.txt 配置文件configuration.php~
指纹信息
从图我们可以看到是Joomla,我们可以使用msf的工具来查看Joomla的版本。
可以看出是3.9的版本,版本挺高的,查了一遍,没有什么可以利用的漏洞。
外网渗透
首先我们去查看一下robots.txt,和web.config.txt robots.txtweb.config.txt
configuration.php~在这里我发现了mysql的账号密码信息,而且目标开了3306这个端口,我们可以直接连接。
我们发现了am2zu_users表发现了管理员的账号信息,密码是加了盐的MD5,要爆破基本是不可能了,但是我们可以用例外一种做法,我们可以把密码改为已知的密码加盐的MD5,比如
$2y$10$EJ64ugc3YEnGH2jaM06XCO68igbTx4LpkcfVPnzoJHRy8Wm8h0Hti
密码是123
然后我们就可以登录进后台了.
在这里发现了有模板,而且可以进行修改,我们写入一个马,然后使用蚁剑连接。
这边加了phpinfo()是为了判断是否生效,保存然后点击下面的view。然后直接上蚂剑。
发现没办法执行指令,判断是有disable_function。直接使用蚁剑的插件。
执行成功。
注意!!!
我们这边拿下的是web-ubuntu的,而且web-ubuntu是不出网的,可能会想到在这里直接传个反弹马,但是不会弹出来的。
一直尝试在ubuntu上进行提权但是无果,因为文件一直无法上传,于是就找找有什么线索,发现了以下的信息
我盲猜可能是ssh的登录账号,加上我们确实也打开了22端口,于是尝试连接。
成功连接
内网渗透
信息收集
使用LinEmum脚本进行信息收集,如果出现以下的报错
/bin/bash^M: bad interpreter: No such file or directory
参考:
https://blog.csdn.net/hxpjava1/article/details/79711710
vi filename打开文件,执行 : set ff=unix 设置文件为unix,然后执行:wq,保存成unix格式。
看一遍下来没什么可以利用的,然后使用suggesttion脚本,查看有什么可以利用的漏洞。
发现了可以使用脏牛进行提权。
gcc -pthread -lcrypt 40839.c -o exp.sh
编译
这里脏牛提权的原理,其实就是生成一个新的用户,新用户会覆盖掉root并继承root的权限,所以使用后会发现root用户没有了。
这边的123456了新账户的密码,随意什么都可以。然后我们要删除passwd.bak。
利用成功。然后我们登录firefart。
成功获得root权限,那已经拿下了这台机器,就要来做横向渗透了。
横向渗透
那这里的话我们需要搭建一个代理,让这台服务器能把我们的流量代理进去内网的其他机器。这里使用chisel工具。
centos
./chisel server --port 1090 --socks5
kali
./chisel client 192.168.111.136:1090 socks &
修改/etc/proxychains4.conf
通过
proxychains nmap 192.168.93.30 -v -p 3389
这样的话nmap的流量就会走代理。
WIN7
这边我就不进行主机发现了,直接开干
信息收集
渗透
这边其实有俩种做法,第一种是使用psexec进行渗透,通过对域内主机进行账号密码的爆破。第二种就是使用NTML重放攻击。
NTML重放
NTML其实是一种鉴别协议,smb就是使用NTML进行鉴别用户身份,其机制是挑战/应答机制 流程图如下(画的比较烂)
1.用户首先向服务器发送用户名密码,然后缓存NTML-HASH到本地(自己密码的hash)。然后服务器会受到用户的信息,并且发送给用户一个challenge是一个16位的随机数,并且会本地保留一份。2.用户使用本地的NTML-HASH对其进行加密,然后和用户名等信息组成了应答发送给服务器。服务器也会使用本地的NTML-HASH(这里的hash指的是服务器存储的用户名对应的密码的hash)对challenge进行加密生成应答然后和用户的应答进行比对,如果一样则认证成功。
NTML重放原理其实和中间人攻击差不多,简单来假如在内网内,有一台web服务器的话,我们通过工具来对其进行劫持,当用户去访问web服务的时候,就会显示出要用户输入域账户密码,然后工具就会对其进行NTML-hash加密然后重放到另外一台主机上进行验证,如果成功则能直接登录。这里由于centos系统的原因没办法使用这个方法,想了解的话可以去看这篇文章。https://www.freebuf.com/articles/network/244375.html
SMB爆破
第二种就是简单粗暴了,使用msf里的smb_login进行爆破,
setg Proxies socks5:127.0.0.1:1080
记得使用msf之前使用这个指令开启代理
或者添加路由
这里就不进行演示了。节省时间,
-
账号: administrator -
密码: 123qwe!ASD
PSEXEC登录
成功登录 然后导入 mimikatz 抓取密码
发现不能在x86的进程上使用,那我们对其进行迁移。
PS 查看进程
migrate pid 迁移进程
这个靶场的目的是最终那些域控下的flag,但是其实在这里就差不多结束了,因为发现他们的域环境没有搭通,所以去打域控的方法和上面的一样,由于抓不到keberos的ntml-hash就没办法生成黄金票据。
原文始发于微信公众号(珠天PearlSky):内网渗透2
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论