从供应链切入,0Day打穿靶标的全流程实战

news/2024/12/22 20:24:21/

前言

整体的思路梳理:

1.对某靶标单位信息收集,

发现靶标某个站点系统为通用系统。

2.对该通用系统供应商进行信息收集。

3.拿下该供应商CICD系统,

从而得到目标通用系统源码。

4.代码审计,

组合拳0day成功进入靶标内网。

5.192.168.0.0/16 -> 172.16.0.0/12

6.172.16.0.0/12 -> 10.0.0.0/8

正文

信息收集:

方式五花八门,这个就不用多说了。

个人喜欢使用Hunter+Quake,

Hunter在收集备案域名还是相对优于其他搜索引擎,而Quake对某个IP的端口收集是较全的。

还有就是,针对各行各业,通用系统的0day储备还是相当重要的。

发掘靶标单位下的通用系统:

使用系统的静态资源或者站点特征来作为指纹进行参考。

熟悉行业供应链的朋友当然是一眼就看出来这是哪个供应商。

(假装是这个系统)

图片

这些/cxx/css/icxxon/iconfont.css 可以算的上是独一无二静态特征,

毕竟是带入了该系统的一些网站路径。

图片

使用这个静态资源作为指纹放到搜索引擎上,发现公网上存在大量相似站点,

说明该系统就是为通用系统。

图片

寻找目标系统的供应商:

可以先从站点上进行观察,

可能在网站页尾处提及供应商

(技术支持:xxxxx公司)

或者是在网站的logo中会体现供应商。

获取目标系统源码:

个人认为最高效的方法就是,

找供应商的CICD系统

(Nacos、Gitlab、Gogs、Minio、Nexus、Jenkins、Harbor等等)

当然还有别的办法

(某系统泄露云密钥、云盘收集......)

(借用表弟的图)

图片

这些CICD系统相当的常见,比如Nacos,漏洞也是不少,

存在nday的可能性是非常大的,

(默认密码、任意用户添加、JWT硬编码、JRaft Hessian反序列化......),

在前段时间更是爆出

自21年披露的SQL注入的新利用手法。

Harbor(借用表弟的图)

图片

作者也是运气好,

成功进入供应商的CICD系统并拿到目标系统源码。

图片

代码审计:

在攻防演练中,拿到系统源代码的话

就需要快速审到高危漏洞进而获取服务器权限。

常规的反序列化就直接找readObject,

参数可控,

是否鉴权,lib里找个在漏洞版本的依赖,

触发RCE就行(假装是这个图)

图片

此次的反序列化参数可控,

但存在鉴权(访问直接302跳转)。

图片

getRequestURI()+Tomcat

https://xz.aliyun.com/t/7544?u_atoken=905addfbe7567049287e1d5bd1e6ac1c&u_asig=0a47309317270087613736766e0030#toc-11

成功构造POC打TomcatEcho。

(假装是这个,其实是win机器哈,贴这个是因为当时忘记截图了)

图片

内存马能够规避某些设备的检测,直接注入内存马后上线cs,也是一种权限维持手法。

如今的Agent内存马更是一种犀利的攻防武器。

基建免杀和Bypass AV/EDR:

基础设施的免杀很重要。

各个语言的免杀webshell、

隧道代理等都需要准备。

图片

一些思路:

Godzilla的内存加载能绕过一些防护、

某些防护软件存在白名单路径、

白加黑Dll、shellcode远程加载等......

维权:

获取权限之后, 既然是攻防演练,

有红就有蓝,做好权限维持非常重要。

个人习惯注册表注入自启动项恶意键值

及DLL劫持。

图片

内网渗透:

攻防中得分主要是靶标内网渗透的成果,

需要尽可能打出来更多成果,尽可能打穿靶标。

相信红队师傅们最有成就的时刻还是这个吧:

某靶标单位已出局。

突破逻辑隔离:

目前处于192.168.0.0/16段,

在对入口机器进行信息收集之后

(数据库、hashdump、mstsc、桌面文件等)

进行密码喷洒,

获取内网中几台机器的服务器权限(均不出网)

成功突破逻辑隔离,常规手段就不多说了。

图片

图片

百万级信息泄露:

图片

前期通过 Web 打点

或者在各种系统/服务器中mimikatz抓的、

翻到的密码及时整理出密码本,

内网中 3389、redis、22、3306等

各种需要密码操作的高危端口都可以碰撞一下,

命令是死的,思路拓宽下就好了。

./fscan -h 192.168.x.0/24 -m smb -u administrator -pwdf password.txt
/fscan -h 192.168.x.0/24 -m ssh -u administrator -pwdf password.txt
./fscan -h 192.168.x.0/24 -p 3389 -u administrator -pwdf password.txt

成功横向后

再横向机器进行网段探测,

仍不通其他私有网段。

直接对当前所处的私有网段进行扫描。

获取重要web系统权限:

OA、数据采集平台、

分析系统、xxl-job、Nacos等。。。。。

到这里离打穿靶标还远远不够。

图片

Nacos泄露大量配置文件。

图片

在扫描中也是发现了当前网段存在域xxxx.com,

且成功发现域控机器为多网卡主机。

图片

图片

内网中的密码复用特别常见,

观察密码规律进行构造,

比如 :user@2019\user@2020\user@2021..........

继续根据横向的机器进行信息收集,

构造密码本。

突破网络隔离喷洒后,

成功进入172.16.0.0/12段,

但是并未成功拿下域控。

进行网络扫描后拿下不少web系统

Minio

图片

Minio console

图片

Nacos

某数据系统

图片

大量未授权(Eureka、Prometheus......)

没办法深入利用,

这里就不贴出来了。

后续通过spring的actuator heapdump泄露

发现某个站点的shirokey,

直接进行shiro反序列化了。

172.16.0.0/12 -> 10.0.0.0/8:

对10段进行扫描后发现某华的超融合,

众所周知,比较出名的集群系统。

图片

存在0day,直接打。

Getshell之后利用,无非就是数据库嘛,

相信看过该设备源码的师傅都知道哈。

图片

拿下数千台机器

(重点OA、域控、运维机器、某堡垒机、财务、人员信息系统等.....)

                       厚码保命!!!!!!! 

其中前边入口段的发现的域控

也属于该集群机器,大量下属单位可控。

其实可以连上域控统计下域内机器数量的,

不过分溢出了,也快结束了,没继续深入了。

免费获取网络安全优质学习资料与干货教程

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。


http://www.ppmy.cn/news/1531495.html

相关文章

项目实战总结-Kafka实战应用核心要点

Kafka实战应用核心要点 一、前言二、Kafka避免重复消费2.1 消费者组机制2.2 幂等生产者2.3 事务性生产者/消费者2.4 手动提交偏移量2.5 外部存储管理偏移量2.6 去重逻辑2.7 幂等消息处理逻辑2.8 小结 三、Kafka持久化策略3.1 持久化文件3.2 segment 分段策略3.3 数据文件刷盘策…

ip是可以从能够上网的设备提取吗

是的,IP地址可以从能够上网的设备提取。以下是如何从不同设备提取IP地址的具体方法: 在电脑上提取IP地址 Windows: 打开命令提示符(按下 Win R,输入 cmd,按回车)。 输入命令 ipconfig,按回车。…

【分布式微服务云原生】Dockerfile命令详解

Dockerfile 是一个文本文件,它包含了一系列的指令,用于构建一个 Docker 镜像。下面是 Dockerfile 中常用命令的详细解释和示例。 1. 获取镜像的三种方式 通过命令拉取镜像 docker pull 镜像名称从镜像仓库拉取指定的镜像。 通过容器创建镜像 docker…

Mybatis(进阶部分)

四 Mybatis完成CURD(二) 4.5 多条件CRUD 之前的案例中,接口里方法的形参个数都是1个;如果方法形参是两个或者两个以上时,MyBatis又该如何获取获取参数呢? Mybatis提供了好几种方式,可以获取多…

Lenovo SR850服务器亮黄灯维修和升级CPU扩展模块

佛山市三水区某高校1台Lenovo Thinksystem SR850服务器黄灯故障到现场检修 和 升级3号和4号CPU。加强服务器的计算性能; 故障情况是该学校it管理员这一天看到这台SR850服务器前面板亮了一个黄灯,但是目前系统运行正常,出于安全考虑&#xff0…

Redis 五大基本数据类型及其应用场景进阶(缓存预热、雪崩 、穿透 、击穿)

Redis 数据类型及其应用场景 Redis 是什么? Redis是一个使用C语言编写的高性能的基于内存的非关系型数据库,基于Key/Value结构存储数据,通常用来 缓解高并发场景下对某一资源的频繁请求 ,减轻数据库的压力。它支持多种数据类型,如字符串、…

T8:猫狗识别

T8周:猫狗识别 **一、前期工作**1.设置GPU,导入库2.导入数据3.查看数据 **二、数据预处理**1.加载数据2.可视化数据3.配置数据集 **三、构建CNN网络模型****四、编译模型****五、训练模型****六、模型评估****七、预测**八、总结1、[train_on_batch 和 test_on_batc…

QCommandLineParser简介

QCommandLineParser QCommandLineParser 是 Qt 提供的一个类,用于解析命令行参数。它使得处理命令行参数变得简单和高效,适用于需要从命令行获取输入的控制台应用程序或需要支持命令行选项的 GUI 应用程序。 主要功能和用途 定义命令行选项&#xff1…