一、环境搭建:
①根据作者公开的靶机信息整理
没有虚拟机密码,纯黑盒测试...一共是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. SpringMVC中使用@Valid和BindingResult进行参数验证

    我们知道,后端Controller层一般是第一层被调用,它用来接收参数以及转发,那么参数的校验也就在这一层,例如非空和格式校验等等. 手动验证 public String validPhone(Str ...

  2. 【HTTP】Web服务器和HTTP的协作&HTTP首部

    用单台虚拟主机实现多个域名 Web服务器可以搭建多个独立域名的Web网站,也可以作为通信路径上的中转服务器提升效率. HTTP/1.1规范允许一台HTTP服务器搭建多个Web站点,提供Web托管服务的 ...

  3. 货车运输 noip2013 luogu P1967 (最大生成树+倍增LCA)

    luogu题目传送门! 首先,题目让我们求每个货车的最大运输量,翻译一下就是求路径上边权最小的边. 利用一下贪心思想可知,所有货车肯定都会尽量往大的边走. 进一步翻译,即为有一些小边货车根本不会走,或 ...

  4. Python 每日一练 | Flask 实现半成品留言板

    留言板Flask实现 引言 看了几天网上的代码,终于写出来一个半成品的Flask的留言板项目,为什么说是半成品呢?因为没能实现留言板那种及时评论刷新的效果,可能还是在重定向上有问题 或者渲染写的存在问 ...

  5. 安卓全屏或沉浸式状态栏下输入框(EditText)被键盘遮挡解决方法

    沉浸式状态栏用了一段时间了,一直没发现安卓在这方面的坑.最近在集成环信自定义UI的过程中,发现将环信界面设置为沉浸式之后最底部的消息输入框不随键盘弹起而变化了,一直显示在屏幕最下方,体验非常差. 后来 ...

  6. git status 命令详解

    git status命令表示:文件,文件夹在工作区,暂存区的状态,下图就是文件,文件夹三种状态: Changes to be committed: (use "git restore --s ...

  7. Docker: GUI 应用,Ubuntu 上如何运行呢?

    操作系统: Ubuntu 18.04 运行镜像: continuumio/anaconda3, based on debian Step 1) 安装 Docker # update the apt p ...

  8. 生成随机字符串 php

    /** +---------------------------------------------------------- * 生成随机字符串 +------------------------- ...

  9. 【Win10】BeyondCompare时提示"许可证密钥已被撤销"的解决办法

    删除...AppData\Roaming\Scooter Software\Beyond Compare 3目录下所有文件. 应该是对应了bcompare的配置文件以及记录文件.删除了之后,就等于新安 ...

  10. Java实现 LeetCode 509 斐波那契数

    509. 斐波那契数 斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列.该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和.也就是: F(0) = 0, F(1) = 1 ...