CSA-CCPTP考证记
2023-6-12
| 2024-2-2
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
CSA(Cloud Seucrity Alliance)推出了首个云渗透领域认证 CCPTP (Certified Cloud Penetration Test Professional),我有幸作为课程体验官参加了课程。
 
课程分为10个模块,1-4和10为理论课,其余为实操课
  1. 云计算概念和体系架构
  1. 云计算整体安全
  1. 渗透测试安全意识培训
  1. 云计算攻击路径
  1. 云上资产发现与信息收集
  1. 云租户业务层渗透测试
  1. 云管理层渗透测试
  1. 云服务层渗透测试
  1. 虚拟化与容器渗透测试
  1. 云基础设施层渗透测试
 
课程干货还是很多的,不过作为实战党更加看重的是实操课,所以主要记录了一下课程中练习

模块五 云上资产发现与信息收集

GoogleHack
NMAP使用
notion image
notion image
notion image
查看token所有权限
notion image
  • aksk可从 调试/测试页面、前端JS脚本调用文件、硬编码在代码里、第三方存储里获得, 如 GoogleHack intext:OSSAccessId
阿里云 只支持windows平台
多云利用,使用可见
综合云存储管理客户端
多云靶场搭建,要打哪个云的拉哪个云的镜像就好了 我这里是拉阿里和腾讯的
notion image
存储桶对象遍历实操
COS Object 公开访问场景实操
COS Bucket ACL 可读场景实操
利用前提: 获取到了满足ACL用户的aksk或者签名
 
 
先通过 /?acl 查看权限, 发现所有用户有读ACL权限, 特定用户有 FULL_CONTROL权限 (注意记录下原本的 acl 方便改回去~)
notion image
 
假设现在我们获取到了该用户的aksk, 则生成签名
notion image
如果获取到签名直接用即可
 
 
或者直接通过Burp抓包, 发送 以下数据包更改
注意uin后面的数字替换为自己的噢
notion image
接下来访问即可遍历对象存储
notion image
或者通过在 Header 头部修改, 然后任何用户都可以修改 acl 了~ 现在通过上面的数据包去掉 Authorization 部分也可以修改啦~
notion image
notion image
 
COS Bucket ACL 可写场景实操
 

模块六 云租户业务层渗透测试

云租户web应用攻击面概览
端口
服务
渗透测试
tcp 20,21
FTP(文件传输协议)
允许匿名的上传下载,爆破,嗅探,win提权,远程执行 (proftpd 1.3.5),各类后门(proftpd,vsftp 2.3.4)
tcp 22
SSH (安全外壳协议 )
可根据已搜集到的信息尝试爆破,v1版本可中间人,ssh隧 道及内网代理转发,文件传输等等
tcp 23
Telnet ( 远程终端协议)
爆破,嗅探,一般常用于路由,交换登陆,可尝试弱口令
tcp 25
SMTP(简单邮件传输协议)
邮件伪造,vrfy/expn查询邮件用户信息,可使用smtp-user- enum工具来自动跑
tcp/udp 53
DNS(域名系统)
允许区域传送,dns劫持,缓存投毒,欺骗以及各种基于dns 隧道的远控
tcp/udp 69
TFTP (简单文件传送协议 )
尝试下载目标及其的各类重要配置文件
tcp 80-89,443,8440- 8450,8080-8089
各种常用的Web服务端口
可尝试经典的topn,vpn,owa,webmail,目标oa,各 类Java控制台,各类服务器Web管理面板,各类 Web中间件漏洞利用,各类Web框架漏洞利用等 等......
tcp 110
POP3(邮局协议版本3 )
可尝试爆破,嗅探
tcp 111,2049
NFS(网络文件系统)
权限配置不当
tcp 137,139,445
SMB(NETBIOS协议)
可尝试爆破以及smb自身的各种远程执行类漏洞利用,如,ms08-067,ms17-010,嗅探等......
tcp 143
IMAP(邮件访问协议)
可尝试爆破
udp 161
SNMP(简单网络管理协议)
爆破默认团队字符串,搜集目标内网信息
tcp 389
LDAP( 轻量目录访问协议 )
ldap注入,允许匿名访问,弱口令
tcp 512,513,514
Linux rexec (远程登录)
可爆破,rlogin登陆
tcp 873
Rsync (数据镜像备份工具)
匿名访问,文件上传
tcp 1194
OpenVPN(虚拟专用通道)
想办法钓VPN账号,进内网
tcp 1352
Lotus(Lotus软件)
弱口令,信息泄漏,爆破
tcp 1433
SQL Server(数据库管理系统)
注入,提权,sa弱口令,爆破
tcp 1521
Oracle(甲骨文数据库)
tns爆破,注入,弹shell...
tcp 1500
ISPmanager( 主机控制面板)
弱口令
tcp 1723
PPTP(点对点隧道协议 )
爆破,想办法钓VPN账号,进内网
tcp 2082,2083
cPanel (虚拟机控制系统 )
弱口令
tcp 2181
ZooKeeper(分布式系统的可靠协调系统 )
未授权访问
tcp 2601,2604
Zebra (zebra路由)
默认密码zerbra
tcp 3128
Squid (代理缓存服务器)
弱口令
tcp 3312,3311
kangle(web服务器)
弱口令
tcp 3306
MySQL(数据库)
注入,提权,爆破
tcp 3389
Windows rdp(桌面协议)
shift后门[需要03以下的系统],爆破,ms12-020
tcp 3690
SVN(开放源代码的版本控 制系统)
svn泄露,未授权访问
tcp 4848
GlassFish(应用服务器)
弱口令
tcp 5000
Sybase/DB2(数据库)
爆破,注入
tcp 5432
PostgreSQL(数据库)
爆破,注入,弱口令
tcp 5900,5901,5902
VNC(虚拟网络控制台,远 控)
弱口令爆破
tcp 5984
CouchDB(数据库)
未授权导致的任意指令执行
tcp 6379
Redis(数据库)
可尝试未授权访问,弱口令爆破
tcp 7001,7002
WebLogic(WEB应用系统)
反序列化,弱口令
tcp 7778
Kloxo(虚拟主机管理系统)
主机面板登录
tcp 8000
Ajenti(Linux服务器管理面 板)
弱口令
tcp 8443
Plesk(虚拟主机管理面板)
弱口令
tcp 8069
Zabbix (系统网络监视)
远程执行,SQL注入
tcp 8080-8089
Jenkins,JBoss (应用服务 器)
反序列化,控制台弱口令
tcp 9080-9081,9090
WebSphere(应用服务器)
Java反序列化/弱口令
tcp 9200,9300
ElasticSearch (Lucene的 搜索服务器)
远程执行
tcp 11211
Memcached(缓存系统)
未授权访问
tcp 27017,27018
MongoDB(数据库)
爆破,未授权访问
tcp 50070,50030
Hadoop(分布式文件系统)
默认端口未授权访问
  • SQL注入漏洞 - 报错注入和布尔盲注, 可 sqlmap 一把梭
文件上传漏洞 - DedeCMS文件上传(织梦v5.7)
  1. /uploads/dede/login.php admin/admin 或者 admin/admin123 登录后台
  1. 模板 > 默认模板管理 > (拉到最下面 点击)新建模板
  1. 文件内容 <?php phpinfo(); ?> 保存
  1. 生成 > 更新 HTML 主页 > 浏览选择新建的模板,然后在 主页位置 输入框中将文件后缀改为 .php ,首页模式 选择 生成静态 ,点击更新 主页 HTML,最后点击浏览即可
notion image
  • RCE命令执行漏洞 - 反弹Shell
CVM SSRF漏洞
notion image
读取元数据
notion image
读取用户元数据
notion image
获取flag
notion image
 
如果实例绑定了CAM角色,则可以获取到他们的临时访问凭据,通过 云API 进一步利用
notion image
获取公网IP
业务逻辑漏洞 semcms 密码找回漏洞, 支付逻辑漏洞利用 → semcms密码找回可见 逻辑漏洞之密码找回漏洞(semcms) - 腾讯云开发者社区-腾讯云 (tencent.com)

模块七 云管理层渗透测试

  • Spring Boot heapdump 文件
存储桶敏感信息
题目,从某处得知泄漏了ak/sk
AKID75q0hmfJkxvfART9bonX3KNCm7D57uTn
94mIbgWEj27ze7NQFtKbfW9XotIPp22q
和桶地址
 
获取所有对象存储
 
获取具体对象内容

模块八 云服务层渗透测试

根据角色名称,初步判断角色可访问的云服务 AWS IAM 权限枚举工具 enumerate-iam
enumerate-iam
andresrianchoUpdated Mar 19, 2024

IaaS服务渗透测试技术

元数据凭证泄漏和利用
notion image
 
这时我们创建一个私有读写存储桶,直接访问读取不了
notion image
notion image
 
使用 COS SDK(这里安装使用的是 python 版本),配置获取到的 tmpSecretid(替换下方脚步的 secret_id)tmpSecretkey(替换下方脚步的 secret_key) 以及 Token(替换下方脚步的 token),并填写相应的地区region对象存储前缀Bucket 获取目标存储桶中的对象
notion image
notion image
 
元数据服务还能做什么? 一、获取实例信息
curl http://metadata.tencentyun.com/latest/dynamic/instance-identity/document
二、更多数据

PaaS层

利用泄漏的凭据接管整个K8S集群
利用SA凭据进行集群提权
创建特权容器
notion image
notion image
takeover.yaml
利用daemonset进行横向,因为会在每个节点都创建一个POD
notion image
notion image

云服务滥用技术

在公有云CloudShell滥用技术
 

模块九 虚拟化与容器渗透测试

容器逃逸 /proc 目录挂载
准备两个程序:crashexp.py
1、crash
把编译好的文件crash.c
编译
2、exp.py
 
3、获取宿主机路径
或者
4、把获取的目录拼接,然后运行 crash 即可
notion image
  • notify_on_release 机制
利用条件:实用 cgroup v1
  • 考证
  • 云安全
  • K8S 网络之 Cilium 源码分析CISP-IRE考证记
    • GitTalk
    目录