Skip to main content

More Info:

Improve the reliability of the applications behind your Load Balancer by using the appropriate health check configuration.

Risk Level

Medium

Address

Reliability, Security

Compliance Standards

  • APRA CPS 234 (Australia)
  • BSI C5 (Germany)
  • Brazil LGPD
  • CCPA / CPRA (California)
  • CIS Critical Security Controls v8
  • CMMC 2.0
  • CSA Cloud Controls Matrix v4
  • Cloudanix Best Practice
  • DPDPA
  • Digital Operational Resilience Act (EU)
  • ISO/IEC 27017
  • ISO/IEC 27018
  • ISO/IEC 27701
  • KSA PDPL
  • MAS Technology Risk Management (Singapore)
  • MITRE ATT&CK (Cloud)
  • NIS2 Directive
  • NIST SP 800-171
  • NYDFS 23 NYCRR 500
  • SWIFT Customer Security Controls Framework
  • Sarbanes-Oxley IT General Controls
  • UK NCSC Cyber Assessment Framework

Triage and Remediation

Remediation

Using Console

To remediate the misconfiguration of “Right Health Check Configurations Should Be Used For Load Balancer Global Health Checks” for GCP using GCP console, follow these steps:
  1. Open the Google Cloud Console and navigate to the Load Balancing page.
  2. Select the Load Balancer for which you want to configure the Health Check.
  3. In the left-hand navigation menu, click on the “Health Checks” option.
  4. Click on the “Create Health Check” button.
  5. In the “Create a Health Check” dialog box, select the appropriate protocol for your application.
  6. Configure the “Request Path” field with the correct path to the application’s health check endpoint.
  7. Configure the “Port” field with the port number on which the application is listening.
  8. Set the “Check Interval” and “Timeout” values to appropriate values based on your application’s requirements.
  9. Configure the “Healthy Threshold” and “Unhealthy Threshold” values based on the number of successful and unsuccessful health checks required to mark an instance as healthy or unhealthy.
  10. Click on the “Create” button to create the Health Check.
  11. Once the Health Check is created, go back to the Load Balancer page and select the Load Balancer again.
  12. In the left-hand navigation menu, click on the “Backend Services” option.
  13. Select the Backend Service for which you want to configure the Health Check.
  14. In the “Backend Service Details” page, click on the “Health Check” tab.
  15. Click on the “Edit” button.
  16. In the “Health Check” dialog box, select the Health Check that you created earlier.
  17. Click on the “Save” button to save the changes.
By following these steps, you can remediate the misconfiguration of “Right Health Check Configurations Should Be Used For Load Balancer Global Health Checks” for GCP using GCP console.

To remediate the misconfiguration of Right Health Check Configurations Should Be Used For Load Balancer Global Health Checks in GCP using GCP CLI, follow the below steps:
  1. Open the Cloud Shell in your GCP console.
  2. Run the following command to list all the load balancers in your project:
  1. Choose the target pool for which you want to configure health checks.
  2. Run the following command to configure a health check for the target pool:
Replace [HEALTH_CHECK_NAME] with the name you want to give to the health check, [PORT_NUMBER] with the port number on which the target is listening, and [REQUEST_PATH] with the path to the health check page.
  1. Run the following command to add the health check to the target pool:
Replace [TARGET_POOL_NAME] with the name of the target pool you want to configure and [HEALTH_CHECK_NAME] with the name of the health check you created in step 4.
  1. Verify the health check configuration by running the following command:
Replace [TARGET_POOL_NAME] with the name of the target pool you configured in step 5.By following these steps, you can remediate the misconfiguration of Right Health Check Configurations Should Be Used For Load Balancer Global Health Checks in GCP using GCP CLI.
To remediate this misconfiguration for GCP using Python, you can follow these steps:
  1. First, you need to create a health check object with the correct configurations. Here’s an example code:
  1. Once the health check object is created, you need to update the load balancer to use this new health check. Here’s an example code:
These steps will create a new health check object with the correct configurations and update the load balancer to use this new health check.
Substitute:
  • LOAD_BALANCER_HEALTH_CHECK_NAME with the desired health check name.
  • BACKEND_SERVICE_PORT with the actual port your backends listen on.
  • HEALTH_CHECK_PATH with an endpoint that accurately reflects application health.
This resource is global by default for external/global load balancers. Changes to check_interval_sec, timeout_sec, healthy_threshold, and unhealthy_threshold are in-place updates and do not normally force replacement.To verify, terraform plan should show updates (or creation) on google_compute_health_check.LOAD_BALANCER_HEALTH_CHECK with the desired protocol block and the configured thresholds and timings.

Additional Reading: