diff --git a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
index 71af4056617ea43c65f8b8dbbb5de6fa128d1efe..a5ca911d29a0269482467ac9005cf6a64533d2e0 100644
--- a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
+++ b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
@@ -21,6 +21,7 @@ local defaults = {
     if !std.setMember(labelName, ['app.kubernetes.io/version'])
   },
   configmapReloaderImage: error 'must provide version',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
 
   port: 9115,
   internalPort: 19115,
@@ -204,6 +205,7 @@ function(params) {
       ports: [
         { name: 'https', containerPort: bb._config.port },
       ],
+      image: bb._config.kubeRbacProxyImage,
     });
 
     {
diff --git a/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet b/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
index faec1f4074812063a6c01d62aa9efc01f42ffc0f..534a2eed31bec0be9c6b26b23aea77053fa664b0 100644
--- a/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
+++ b/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
@@ -1,6 +1,6 @@
 local defaults = {
   namespace: error 'must provide namespace',
-  image: 'quay.io/brancz/kube-rbac-proxy:v0.8.0',
+  image: error 'must provide image',
   ports: error 'must provide ports',
   secureListenAddress: error 'must provide secureListenAddress',
   upstream: error 'must provide upstream',
diff --git a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
index 7599f618bc223d2507de07baa94cc2c2760a1360..1ebd14808ad2698314e67dc851cf9887826af1f9 100644
--- a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
+++ b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
@@ -6,6 +6,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide version',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   resources: {
     requests: { cpu: '10m', memory: '190Mi' },
     limits: { cpu: '100m', memory: '250Mi' },
@@ -95,6 +96,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
       limits+: { cpu: '40m' },
       requests+: { cpu: '20m' },
     },
+    image: ksm._config.kubeRbacProxyImage,
   }),
 
   local kubeRbacProxySelf = krp({
@@ -104,6 +106,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
     ports: [
       { name: 'https-self', containerPort: 9443 },
     ],
+    image: ksm._config.kubeRbacProxyImage,
   }),
 
   deployment+: {
diff --git a/jsonnet/kube-prometheus/components/node-exporter.libsonnet b/jsonnet/kube-prometheus/components/node-exporter.libsonnet
index 0f07f8af7b19997a0e637a7c180f2509377f89df..30c8173b4214589913cc08cc8df45ffee352361f 100644
--- a/jsonnet/kube-prometheus/components/node-exporter.libsonnet
+++ b/jsonnet/kube-prometheus/components/node-exporter.libsonnet
@@ -6,6 +6,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide version',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   resources: {
     requests: { cpu: '102m', memory: '180Mi' },
     limits: { cpu: '250m', memory: '180Mi' },
@@ -200,6 +201,7 @@ function(params) {
       ports: [
         { name: 'https', containerPort: ne._config.port, hostPort: ne._config.port },
       ],
+      image: ne._config.kubeRbacProxyImage,
     }) + {
       env: [
         { name: 'IP', valueFrom: { fieldRef: { fieldPath: 'status.podIP' } } },
diff --git a/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet b/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
index 7b6d0a336d473598aebe6566fed03ba1fcf72fb6..4bb98b48e526e374724ad5084de5191e0c22daed 100644
--- a/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
+++ b/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
@@ -7,6 +7,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide image',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   configReloaderImage: error 'must provide config reloader image',
   resources: {
     limits: { cpu: '200m', memory: '200Mi' },
@@ -114,6 +115,7 @@ function(params)
       ports: [
         { name: 'https', containerPort: 8443 },
       ],
+      image: po._config.kubeRbacProxyImage,
     }),
 
     deployment+: {
diff --git a/jsonnet/kube-prometheus/main.libsonnet b/jsonnet/kube-prometheus/main.libsonnet
index 48b1f4e901ebdc1dd00e1ed6bfb0957268027b1e..a9b68896b7cc4b3194ca15cf6db8fc9334d6b6f5 100644
--- a/jsonnet/kube-prometheus/main.libsonnet
+++ b/jsonnet/kube-prometheus/main.libsonnet
@@ -30,6 +30,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         prometheus: error 'must provide version',
         prometheusAdapter: error 'must provide version',
         prometheusOperator: error 'must provide version',
+        kubeRbacProxy: error 'must provide version',
         configmapReload: error 'must provide version',
       } + (import 'versions.json'),
       images: {
@@ -42,6 +43,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         prometheusAdapter: 'directxman12/k8s-prometheus-adapter:v' + $.values.common.versions.prometheusAdapter,
         prometheusOperator: 'quay.io/prometheus-operator/prometheus-operator:v' + $.values.common.versions.prometheusOperator,
         prometheusOperatorReloader: 'quay.io/prometheus-operator/prometheus-config-reloader:v' + $.values.common.versions.prometheusOperator,
+        kubeRbacProxy: 'quay.io/brancz/kube-rbac-proxy:v' + $.values.common.versions.kubeRbacProxy,
         configmapReload: 'jimmidyson/configmap-reload:v' + $.values.common.versions.configmapReload,
       },
     },
@@ -56,6 +58,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
       namespace: $.values.common.namespace,
       version: $.values.common.versions.blackboxExporter,
       image: $.values.common.images.blackboxExporter,
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
       configmapReloaderImage: $.values.common.images.configmapReload,
     },
     grafana: {
@@ -71,12 +74,14 @@ local platformPatch = import './platforms/platforms.libsonnet';
       version: $.values.common.versions.kubeStateMetrics,
       image: $.values.common.images.kubeStateMetrics,
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     nodeExporter: {
       namespace: $.values.common.namespace,
       version: $.values.common.versions.nodeExporter,
       image: $.values.common.images.nodeExporter,
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     prometheus: {
       namespace: $.values.common.namespace,
@@ -101,6 +106,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         'app.kubernetes.io/part-of': 'kube-prometheus',
       },
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     kubernetesControlPlane: {
       namespace: $.values.common.namespace,
diff --git a/jsonnet/kube-prometheus/versions.json b/jsonnet/kube-prometheus/versions.json
index 892e6053764b8515b451d9ae9f23ab4facceb897..2a7e6ea07caa98291b16892dd51761c2000ecdae 100644
--- a/jsonnet/kube-prometheus/versions.json
+++ b/jsonnet/kube-prometheus/versions.json
@@ -7,5 +7,6 @@
   "prometheus": "2.26.0",
   "prometheusAdapter": "0.8.4",
   "prometheusOperator": "0.47.0",
+  "kubeRbacProxy": "0.8.0",
   "configmapReload": "0.5.0"
-}
\ No newline at end of file
+}