diff --git a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
index e574c9f2973333f0bf98f6a4c100f3113767ff29..bd61e25f4b9f407249dda8a06e8dceb66c87b38b 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: 'jimmidyson/configmap-reload:v0.5.0',
+  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..462e02fe5a6ce11622895f1c9f8ee4bd3a4ff3f4 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 1c13b7b9d0744404ed405ba4a0869f61b6bc6e00..435c1acca654f06304444db5692d63fb45631d03 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',
       } + (import 'versions.json'),
       images: {
         alertmanager: 'quay.io/prometheus/alertmanager:v' + $.values.common.versions.alertmanager,
@@ -41,6 +42,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
       },
     },
     alertmanager: {
@@ -54,6 +56,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,
     },
     grafana: {
       namespace: $.values.common.namespace,
@@ -68,12 +71,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,
@@ -98,6 +103,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 72f91628302c99661fb6cf3ae128d1032ee4ee4c..ca9e236864a97aeedf2069a5c2ce74c01fd1b95a 100644
--- a/jsonnet/kube-prometheus/versions.json
+++ b/jsonnet/kube-prometheus/versions.json
@@ -6,5 +6,6 @@
   "nodeExporter": "1.1.2",
   "prometheus": "2.26.0",
   "prometheusAdapter": "0.8.4",
-  "prometheusOperator": "0.47.0"
-}
+  "prometheusOperator": "0.47.0",
+  "kubeRbacProxy": "0.8.0"
+}
\ No newline at end of file