Vulnerability Discussion
The HTTP protocol is a stateless protocol. To maintain a session, a session identifier is used. The session identifier is a piece of data used to identify a session and a user. If the session identifier is compromised by an attacker, the session can be hijacked. By encrypting the session identifier, the identifier becomes more difficult for an attacker to hijack, decrypt, and use before the session has expired.
Check
Open the IIS 10.0 Manager.
Click the IIS 10.0 web server name.
Under the "Management" section, double-click the "Configuration Editor" icon.
From the "Section:" drop-down list, select "system.webServer/asp".
Expand the "session" section.
Verify the "keepSessionIdSecure" is set to "True".
If the "keepSessionIdSecure" is not set to "True", this is a finding.
Fix
Open the IIS 10.0 Manager.
Click the IIS 10.0 web server name.
Under "Management" section, double-click the "Configuration Editor" icon.
From the "Section:" drop-down list, select "system.webServer/asp".
Expand the "session" section.
Select "True" for the "keepSessionIdSecure" setting.
Select "Apply" from the "Actions" pane.