Application Development Security Audit
| AID | 18 |
|---|---|
| Severity | high |
| Audit | The application must use both the NotBefore and NotOnOrAfter elements or OneTimeUse element when using the Conditions element in a SAML assertion. |
| Guidance | SAML is a standard for exchanging authentication and authorization data between security domains. SAML uses security tokens containing assertions to pass information about a principal (usually an end user) between a SAML authority, (identity provider), and a SAML consumer, (service provider). SAML assertions are usually made about a subject, (user) represented by the element. When a SAML assertion is used with a element, a begin and end time for the element should be set in order to specify a timeframe in which the assertion is valid. Not setting a specific time period for the element, the possibility exists of granting immediate access or elevated privileges to an attacker which results in an immediate loss of confidentiality. |
| Recommendations | Design and configure the application to implement the use of the and or when using the element in a SAML assertion. |
| Procedure | Ask the application representative for the design document. Review the design document for web services using SAML assertions. If the application does not utilize SAML assertions, this check is not applicable. Examine the contents of a SOAP message using the element; all messages should contain the and or element when in a SAML Assertion. This can be accomplished using a protocol analyzer such as Wireshark. If SOAP using the element does not contain and or elements, this is a finding. |
| NIST SP 800-53 Rev. 4 Ref. | AC-17 (2) |
| STIG | Application Security and Development Security Technical Implementation Guide :: Version 5, Release: 1 Benchmark Date: 23 Oct 2020 |