OpenShift - Tekton
Tip
Leer & oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subscription plans!
- Sluit aan by die š¬ Discord group of die telegram group of volg ons op Twitter š¦ @hacktricks_live.
- Deel hacking tricks deur PRs in te dien by die HackTricks en HackTricks Cloud github repos.
Die oorspronklike skrywer van hierdie bladsy is Haroun
Wat is tekton
Volgens die dokument: Tekton is ān kragtige en buigsame oopbronraamwerk vir die skep van CI/CD stelsels, wat ontwikkelaars in staat stel om te bou, te toets en te ontplooi oor wolkverskaffers en op-premise stelsels. Beide Jenkins en Tekton kan gebruik word om toepassings te toets, te bou en te ontplooi, maar Tekton is Cloud Native.
Met Tekton word alles verteenwoordig deur YAML-lĆŖers. Ontwikkelaars kan Aangepaste Hulpbronne (CR) van tipe Pipelines skep en verskeie Tasks daarin spesifiseer wat hulle wil uitvoer. Om ān Pipeline te laat loop, moet hulpbronne van tipe PipelineRun geskep word.
Wanneer tekton geĆÆnstalleer word, word ān diensrekening (sa) genaamd pipeline in elke naamruimte geskep. Wanneer ān Pipeline uitgevoer word, sal ān pod geskep word wat hierdie sa genaamd pipeline gebruik om die take wat in die YAML-lĆŖer gedefinieer is, uit te voer.
Getting Started with Pipelines | Tekton
Die Pipeline diensrekening vermoƫns
Standaard kan die pipeline diensrekening die pipelines-scc vermoĆ«ns gebruik. Dit is te danke aan die globale standaardkonfigurasie van tekton. Trouens, die globale konfigurasie van tekton is ook ān YAML in ān openshift objek genaamd TektonConfig wat gesien kan word as jy ān paar leserrolle in die kluster het.
apiVersion: operator.tekton.dev/v1alpha1
kind: TektonConfig
metadata:
name: config
spec:
...
...
platforms:
openshift:
scc:
default: "pipelines-scc"
In enige naamruimte, as jy die pipeline diensrekening token kan kry, sal jy in staat wees om pipelines-scc te gebruik.
Die Misconfig
Die probleem is dat die standaard scc wat die pipeline sa kan gebruik, gebruikersbeheerbaar is. Dit kan gedoen word deur ān etiket in die naamruimte-definisie te gebruik. Byvoorbeeld, as ek ān naamruimte kan skep met die volgende yaml-definisie:
apiVersion: v1
kind: Namespace
metadata:
name: test-namespace
annotations:
operator.tekton.dev/scc: privileged
Die tekton-operateur sal die pyplyn-diensrekening in test-namespace die vermoƫ gee om die scc privileged te gebruik. Dit sal die montering van die node toelaat.
Die oplossing
Tekton dokumenteer hoe om die oortreding van scc te beperk deur ān etiket in die TektonConfig objek by te voeg.
Hierdie etiket word max-allowed genoem.
apiVersion: operator.tekton.dev/v1alpha1
kind: TektonConfig
metadata:
name: config
spec:
...
...
platforms:
openshift:
scc:
default: "restricted-v2"
maxAllowed: "privileged"
Tip
Leer & oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subscription plans!
- Sluit aan by die š¬ Discord group of die telegram group of volg ons op Twitter š¦ @hacktricks_live.
- Deel hacking tricks deur PRs in te dien by die HackTricks en HackTricks Cloud github repos.
HackTricks Cloud

