UCF STIG Viewer Logo

HAProxy must restrict inbound connections from nonsecure zones.


Overview

Finding ID Version Rule ID IA Controls Severity
V-89187 VRAU-HA-000340 SV-99837r1_rule Medium
Description
Remote access to the web server is any access that communicates through an external, non-organization-controlled network. Remote access can be used to access hosted applications or to perform management functions. A web server can be accessed remotely and must be capable of restricting access from what the DoD defines as nonsecure zones. Nonsecure zones are defined as any IP, subnet, or region that is defined as a threat to the organization. The nonsecure zones must be defined for public web servers logically located in a DMZ, as well as private web servers with perimeter protection devices. By restricting access from nonsecure zones, through internal web server access list, the web server can stop or slow denial of service (DoS) attacks on the web server. As the web server for the vRA Virtual Appliance Management Interface (vAMI), Lighttpd is the primary remote access management system for vRA. Lighttpd must be configured to restrict inbound connections from nonsecure zones. To accomplish this, the SSL engine must be enabled. The SSL engine forces Lighttpd to only listen via secure protocols.
STIG Date
VMW vRealize Automation 7.x HA Proxy Security Technical Implementation Guide 2018-10-12

Details

Check Text ( C-88879r2_chk )
Navigate to and open /etc/haproxy/conf.d/20-vcac.cfg

Navigate to the "frontend https-in" section.

Review the "frontend https-in" section.

Verify that the port 443 binding has the "ssl" keyword.

Verify that port 80 is binded.

Verify that non-ssl traffic is redirected to port 443.

Note: Ports are binded with this statement: 'bind 0.0.0.0:', where is the binded port.

Note: Non-ssl traffic is redirected with this statement: 'redirect scheme https if !{ ssl_fc }'

Note: Ensure the redirection statement appears before all 'acl' statements.

If the port 443 binding is missing the "ssl" keyword, OR port 80 is NOT binded, OR non-ssl traffic is NOT being redirected to port 443, this is a finding.
Fix Text (F-95929r1_fix)
Navigate to and open /etc/haproxy/conf.d/20-vcac.cfg

Navigate to and configure the "frontend https-in" section with the following three values:

bind 0.0.0.0:80
bind 0.0.0.0:443 ssl crt /etc/apache2/server.pem ciphers FIPS:+3DES:!aNULL no-sslv3
redirect scheme https if !{ ssl_fc }

Note: Ensure the redirection statement appears before all 'acl' statements.