UCF STIG Viewer Logo

Cookies exchanged between the Apache web server and client, such as session cookies, must have security settings that disallow cookie access outside the originating Apache web server and hosted application.


Overview

Finding ID Version Rule ID IA Controls Severity
V-214288 AS24-U2-000470 SV-214288r881493_rule Medium
Description
Cookies are used to exchange data between the web server and the client. Cookies, such as a session cookie, may contain session information and user credentials used to maintain a persistent connection between the user and the hosted application since HTTP/HTTPS is a stateless protocol. When the cookie parameters are not set properly (i.e., domain and path parameters), cookies can be shared within hosted applications residing on the same web server or to applications hosted on different web servers residing on the same domain.
STIG Date
Apache Server 2.4 UNIX Site Security Technical Implementation Guide 2022-12-14

Details

Check Text ( C-15501r881491_chk )
Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file:

# apachectl -V | egrep -i 'httpd_root|server_config_file'
-D HTTPD_ROOT="/etc/httpd"
-D SERVER_CONFIG_FILE="conf/httpd.conf"

Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used.

Search for the "Header" directive:

# cat //httpd.conf | grep -i "Header"

If "HttpOnly" "secure" is not configured, this is a finding.

"Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;secure"

Review the code. If, when creating cookies, the following is not occurring, this is a finding:

function setCookie() { document.cookie = "ALEPH_SESSION_ID = $SESS; path = /; secure"; }
Fix Text (F-15499r881492_fix)
Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file:

# apachectl -V | egrep -i 'httpd_root|server_config_file'
-D HTTPD_ROOT="/etc/httpd"
-D SERVER_CONFIG_FILE="conf/httpd.conf"

Add or configure the following line:

"Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;secure"

Add the "secure" attribute to the JavaScript set cookie in any application code:

function setCookie() { document.cookie = "ALEPH_SESSION_ID = $SESS; path = /; secure"; }

HttpOnly cannot be used since by definition this is a cookie set by JavaScript.

Restart www_server and Apache.