Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/rancher/externalip-webhook
Sicurezza dei ContenitoriAudit di ConfigurazioneSicurezza di ReteSicurezza CloudConfigurazione ErrataSicurezza delle APIArchived
GitHubrancher/externalip-webhook

externalip-webhook

CVE-2020-8554: Man-in-the-middle utilizzando LoadBalancer o ExternalIPs

Vedi Repository
3474 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

externalip-webhook

creato per affrontare CVE-2020-8554

Nota: Questo chart è deprecato per la versione di Kubernetes 1.21 e non supportato a partire dalla 1.22. Per mitigare CVE-2020-8554, abilita il controller di ammissione DenyServiceExternalIPs sul cluster.

externalip-webhook è un webhook di validazione che impedisce ai servizi di utilizzare IP esterni casuali. Gli amministratori del cluster possono specificare un elenco di CIDR consentiti per l'uso come IP esterno tramite il parametro allowed-external-ip-cidrs. Il webhook consentirà solo la creazione di servizi che non richiedono un IP esterno o i cui IP esterni rientrano nell'intervallo specificato dall'amministratore.

Questo repository è realizzato utilizzando kubebuilder.

Distribuzione

Per limitare l'IP esterno a determinati CIDR, decommenta e aggiorna allowed-external-ip-cidrs in webhook.yaml.

NOTA: Se auth-proxy è abilitato, aggiorna allowed-external-ip-cidrs in metrics_server_auth_proxy.yaml.

Distribuire il webhook precompilato

Per distribuire il webhook utilizzando i manifest in questo repository, devi avere kustomize nel tuo PATH. Puoi scaricare kustomize qui: https://kubernetes-sigs.github.io/kustomize/installation/

root@kitploit:~
make deploy

Compilare e distribuire il webhook

root@kitploit:~
make docker-build IMG=DOCKER_IMAGE_TAG
make deploy IMG=DOCKER_IMAGE_TAG

Compilare e distribuire il chart Helm

È stato creato un chart Helm rancher-externalip-webhook per facilitare la distribuzione.

Per limitare l'IP esterno a determinati CIDR, imposta il valore allowedExternalIPCidrs nel comando Helm.

Per compilare l'immagine Docker del webhook e generare una nuova versione del chart

root@kitploit:~
make rancher-ci

Per generare solo una nuova versione del chart

root@kitploit:~
make rancher-chart-ci

Helm char revision sarebbe generata sotto la cartella build/chart. Archivio del chart Helm build/chart/latest/rancher-externalip-webhook-<VERSION>.tgz e cartella del chart Helm build/chart/rancher-externalip-webhook

Distribuzione del chart

root@kitploit:~
helm -n externalip-webhook template rancher-externalip-webhook build/chart/latest/rancher-externalip-webhook-<VERSION>.tgz --output-dir . --set metrics.enabled=true --set metrics.prometheusExport=true
kubectl apply -R -f ./rancher-externalip-webhook

Configurazione

Aggiornamento del namespace del webhook

Il webhook viene eseguito di default nel namespace externalip-validation-system. Può essere modificato aggiornando il namespace e namePrefix nel file kustomization.yaml.

Generazione dei certificati per il webhook

I certificati del webhook possono essere generati tramite cert-manager o caricando i certificati. La sezione seguente spiega come ottenere questo risultato.

Utilizzo di cert-manager

Decommente tutte le sezioni con 'CERTMANAGER' nel file kustomization.yaml.

Caricamento dei certificati del webhook

  1. Carica i dati dei certificati (ca.crt, tls.crt e tls.key) come secret Kubernetes con nome webhook-server-cert nello stesso namespace del file kustomization.yaml.
  2. Aggiorna il campo caBundle in manifests.yaml.

Abilitazione dell'endpoint delle metriche

Il webhook emette la metrica webhook_failed_request_count ogni volta che rifiuta un'operazione di creazione o aggiornamento di un servizio.

Abilitazione senza auth-proxy

Decommente --metrics-addr e la sezione corrispondente in containers.Port in webhook.yaml.

Abilitazione /metrics con auth-proxy

  1. Decommente tutte le sezioni con 'METRICS_SERVER_RBAC' nel file kustomization.yaml.
  2. Crea un cluster role binding per il cluster role in auth_proxy_client_clusterrole.yaml.

Esportazione delle metriche per Prometheus

Segui i passaggi indicati qui per esportare le metriche del webhook.

Community, discussioni, contributi e supporto

Scopri come partecipare alla community di Kubernetes nella pagina della community.

Puoi contattare i manutentori di questo progetto a:

  • Slack
  • Mailing List

Codice di condotta

La partecipazione alla community di Kubernetes è regolata dal Kubernetes Code of Conduct.

Scarica lo strumento