一、环境搭建:
①根据作者公开的靶机信息整理
没有虚拟机密码,纯黑盒测试...一共是5台机器,目标是拿下域控获取flag文件
 
②虚拟机网卡设置
centos双网卡模拟内外网:
外网:192.168.1.110
内网:192.168.93.100
 
其他主机都是内网,仅主机模式:
内网:192.168.93.0/24
所有虚拟机默认挂起状态,开启就已经登陆了,配置好网卡后,互相ping测试一下,网络环境没问题就可以进行下一步了。
 
 
二、web层渗透:
0x01 前期信息收集:
①端口、服务探测
nmap 192.168.1.110 -T4 -A -sV
开启了80、22、3306端口,入手点就挺多了(ssh爆破、mysql爆破、http服务的web漏洞挖掘getshell等等...)

访问了一下80端口的http服务,是joomlaCMS搭建的

②站点扫描:
1.直接使用joomscan扫描一下
joomscan -u http://192.168.1.110/
 
 
发现版本为3.9.12,比较高,不太好搞...

2.发现两个比较重要的目录
后台登陆页面:

配置文件泄露:testuser / cvcvgjASD!@

 
0x02 漏洞利用getshell:
①尝试远程连接mysql,获取后台管理员密码
根据nmap的信息,扫描出3306是开放的,利用navicat连接一下,很顺利地连接上了
 
 
找到管理员user表,发现密码是加密的,具体怎么加密的不清楚,尝试解密,失败...

②添加后台管理员
因为joomlaCMS可以直接后台模板getshell,所以得想办法进入后台,但是默认的管理员用户密码又是未知的,那么我是不是可以直接往user表里面添加一个管理员?然后登陆不就好了吗,开始吧...
 
通过百度、谷歌大法,发现了官方的说明文档:

根据官方文档,添加一个admin2 / secret 的管理员,注意修改表前缀

可以看到已经添加成功了

利用新添加的管理员进行登陆,登陆成功

③模板getshell
 
 
点击New File,新建文件:

输入文件名:
 
写入一句话木马:

利用蚁剑连接webshell:

 
0x03 提权与本机信息收集
①bypass disable_functions
尝试执行命令,返回ret=127,毫无疑问就是disable_functions的限制了
 
通过phpinfo发现禁用了如下函数,目标是linux,并且没有禁用putenv函数,所以可以利用LD_PRELOAD绕过

把bypass_diablefunc.php和bypass_diablefunc_x64.so一并上传到同一目录,.so文件需要根据目标系统架构选择,然后访问bypass_diablefunc.php,poutpath必须是可写目录,构造如下payload:
http://192.168.1.110/templates/beez3/bypass_disablefunc.php?cmd=whoami&outpath=/tmp/panda&sopath=/var/www/html/templates/beez3/bypass_disablefunc_x64.so

查看ip信息,发现ip并不是centos的,看了下应该是ubuntu的,说明真正的web服务后端是在ubuntu上,通过centos做了个nginx反向代理解析到Ubuntu上了(百度了解了一下)
 
分析:当前ubuntu的权限太低...并且内核很高,不好提权,想执行socks代理的程序,都成问题,并且ubuntu是不出网的,那么我有没有办法拿到centos的权限呢?既然做了反代,那么我能否看一下bash历史记录,找到一些遗漏的信息呢?(结果不行..),然后就各种配置文件找、有权限看的文件都看一下,想找到有泄露的信息

②敏感文件泄露
最终在tmp目录下找到了个test.txt文件直接给出了一个用户和密码:

直接登陆centos,成功....

③脏牛提权
想要继续横向移动,最好就是能利用跳板机搭建socks代理,所以权限得够,查看centos的内核,发现在脏牛影响的范围内:

wget下载exp,并赋予执行权限

编译并执行exp

提权成功
 
 
 
0x04 横向移动
①msf上线
我这里使用web_delivery模块上线
 
 
目标主机上执行msf给出的命令即可上线
 
 
②添加路由

③存活主机探测

发现3台windows,并且存在TEST域环境
④直接继续爆破smb
注意密码字典的格式为:用户名 密码

⑤使用psexec登陆win2008
 
注意payload为bind直连:

然后将mterpreter会话迁移到一个64位进程中,加载mimikatz,然后抓取到域管的明文密码:zxcASDqw123!!

ntlm hash拿来备用

⑥拿下域控:
1.通过ipconfig定位到dns服务器为192.168.93.10,域名为test.org,一般dns服务器就是域控

2.开启socks5代理:

3.proxifier开启代理

4.将psexec.exe添加代理规则

5.利用psexec拿到域控shell
 
 
6.查找那份重要的文件,猜测为flag.txt

成功获取flag

0x05 总结
①joomscan的使用,joomlaCMS后台模板getshell
②利用LD来bypass disable_functions
③拿到shell后的本机敏感文件收集
④脏牛提权+msf web_delivery上线
⑤使用msf进行横向移动,smb_version主机探测+smb爆破
⑥msf中psexec获取目标shell,mimikatz抓取域管明文密码
⑦msf搭建socks5代理+proxifier代理psexec进目标内网
⑧使用impacket下的psexec获取到域控的shell
 

vulstack红队评估(三)的更多相关文章

  1. vulstack红队评估(五)

    一.环境搭建: ①根据作者公开的靶机信息整理 虚拟机密码: Win7: heart 123.com    #本地管理员用户 sun\Administrator dc123.com    #域管用户,改 ...

  2. vulstack红队评估(四)

    一.环境搭建: ①根据作者公开的靶机信息整理 虚拟机密码: ubuntu: ubuntu:ubuntu   win7: douser:Dotest123   Win2008 DC: administr ...

  3. vulstack红队评估(二)

    一.环境搭建: 1.根据作者公开的靶机信息整理: 靶场统一登录密码:1qaz@WSX     2.网络环境配置: ①Win2008双网卡模拟内外网: 外网:192.168.1.80,桥接模式与物理机相 ...

  4. vulstack红队评估(一)

    一.环境搭建: 1.根据作者公开的靶机信息整理: 虚拟机初始所有统一密码:hongrisec@2019   因为登陆前要修改密码,改为了panda666...   2.虚拟网卡网络配置: ①Win7双 ...

  5. ATK&CK红队评估实战靶场 (一)的搭建和模拟攻击过程全过程

    介绍及环境搭建 靶机地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2 官方靶机说明: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练 ...

  6. ATT&CK红队评估实战靶场(一)

    靶机下载地址 http://vulnstack.qiyuanxuetang.net/vuln/detail/2/ 攻击拓扑如下 0x01环境搭建 配置两卡,仅主机模式192.168.52.0网段模拟内 ...

  7. Red Team 指南-第1章 红队和红队概述

    第1章 红队和红队概述 贡献者:Tony Kelly @infosectdk # 翻译者 BugMan 什么是红队?它来自哪里? 红队的起源是军事起源.人们意识到,为了更好地防御, 需要攻击自己的防御 ...

  8. 红队(red team)

    红队资源相关 https://threatexpress.com/redteaming/resources/ 红队相关技术 https://github.com/bluscreenofjeff/Red ...

  9. ATT&CK实战系列 红队实战(一)————环境搭建

    首先感谢红日安全团队分享的靶机实战环境.红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习. 靶机下载地址:http://vulnstack.qiyuanxue ...

随机推荐

  1. 【转】团队项目的Git分支管理规范

    原文地址: http://blog.jboost.cn/git-branch.html 分支管理 创建项目时(一般是服务型项目,工具型或辅助型项目可以简单一些),会针对不同环境创建三个常设分支: de ...

  2. 3.key的操作

    我们之前使用Redis简单存储了三个参数: 在语句set name jack中,其中name就是一个key.我们Java中的变量名是有一定规则的,比如组成内容可以是“数字”,“字母”以及“下划线”. ...

  3. 使用Redis分布式锁实现主备

    使用Redis分布式锁实现集群的主备 最近工作中遇到一个问题,我们会调用业务部门提供的HTTP接口获取所有的音视频任务信息,这些任务会被分发到各个机器节点进行处理.有两个方案: 方案一 为每台机器编号 ...

  4. git的相关基础操作

    一.git安装 从https://git-scm.com/下载相应版本安装即可,一路默认安装到底即可,安装目录可以自行选择 二.git配置 安装完git后在任意文件夹内单击鼠标右键,会出现Git GU ...

  5. apt-key 密钥管理,apt-secure 原理 验证链 验证测试

    apt-key 用于管理Debian Linux系统中的软件包密钥.每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥. apt-key list 列出已保存在系统中key.包括 /e ...

  6. Rocket - tilelink - toBools

    https://mp.weixin.qq.com/s/UGMH8EoaVcFkkQW-l4HLWg   分析toBools在Intellij中显示为红色的问题.   ​​   1. 问题   在TLA ...

  7. Chisel3 - Wire & Reg

    https://mp.weixin.qq.com/s/Y26N5P4XOr5e3uyi5XQY-w   不同于Verilog,Chisel中Wire和Reg并不是数据类型,而是数据容器,作为数据的一个 ...

  8. java实现平面点最小距离

    已知平面上若干个点的坐标. 需要求出在所有的组合中,4个点间平均距离的最小值(四舍五入,保留2位小数). 比如有4个点:a,b,c,d, 则平均距离是指:ab, ac, ad, bc, bd, cd ...

  9. java实现正六面体染色

    ** 正六面体染色** 正六面体用4种颜色染色. 共有多少种不同的染色样式? 要考虑六面体可以任意旋转.翻转. 参考答案: 240 Burnside引理,正方体涂色问题 (n^6 + 3*n^4 + ...

  10. Java实现第九届蓝桥杯阶乘位数

    阶乘位数 题目描述 小明维护着一个程序员论坛.现在他收集了一份"点赞"日志,日志共有N行.其中每一行的格式是: ts id 表示在ts时刻编号id的帖子收到一个"赞&qu ...