Scenario: Service accepts TLS 1.3 encrypted traffic
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"42µs
Given an openssl s_client request using "tls1_3" to "{port-number}" on "{host-name}" protocol "{protocol}"605µs
And I refer to "{result}" as "connection"23µs
And "{connection}" state is open41µs
And "{connection.State}" is "open"27µs
And I close connection "{connection}"35µs
Then "{connection}" state is closed31µs
Scenario: Service rejects TLS 1.2 traffic
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"30µs
Given an openssl s_client request using "tls1_2" to "{port-number}" on "{host-name}" protocol "{protocol}"498µs
And I refer to "{result}" as "connection"22µs
And we wait for a period of "40" ms41ms
Then "{connection.State}" is "closed"32µs
Scenario: Service rejects TLS 1.1 traffic
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"42µs
Given an openssl s_client request using "tls1_1" to "{port-number}" on "{host-name}" protocol "{protocol}"654µs
And I refer to "{result}" as "connection"24µs
And we wait for a period of "40" ms41ms
Then "{connection.State}" is "closed"32µs
Scenario: Service rejects TLS 1.0 traffic
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"43µs
Given an openssl s_client request using "tls1" to "{port-number}" on "{host-name}" protocol "{protocol}"628µs
And I refer to "{result}" as "connection"22µs
And we wait for a period of "40" ms41ms
Then "{connection.State}" is "closed"31µs
Scenario: Verify SSL/TLS protocol support
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"32µs
Given "report" contains details of SSL Support type "protocols" for "{host-name}" on port "{port-number}"
2msfailed to read testssl.sh output: open /tmp/testssl_protocols_finoscccintegrationmain.blob.core.windows.net_443.json: no such file or directory
Then "{report}" is an array of objects which doesn't contain any of
15µs| id | finding |
|---|
| SSLv2 | offered |
| SSLv3 | offered |
| TLS1 | offered |
| TLS1_1 | offered |
| TLS1_2 | offered |
And "{report}" is an array of objects with at least the following contents
15µs| id | finding |
|---|
| TLS1_3 | offered with final |
Scenario: Verify no known SSL/TLS vulnerabilities
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"28µs
Given "report" contains details of SSL Support type "vulnerable" for "{host-name}" on port "{port-number}"
2msfailed to read testssl.sh output: open /tmp/testssl_vulnerable_finoscccintegrationmain.blob.core.windows.net_443.json: no such file or directory
Then "{report}" is an array of objects with at least the following contents
35µs| id | severity |
|---|
| heartbleed | OK |
| CCS | OK |
| ticketbleed | OK |
| ROBOT | OK |
| secure_renego | OK |
Scenario: Verify TLS 1.3 only certificate validity
@CCC.Core @CCC.Core.CN01 @tlp-amber @tlp-green @tlp-red @Behavioural @PerPort @tls @object-storage @virtual-machinesGiven a cloud api for "{config}" in "api"32µs
Given "report" contains details of SSL Support type "server-defaults" for "{host-name}" on port "{port-number}"
2msfailed to read testssl.sh output: open /tmp/testssl_server-defaults_finoscccintegrationmain.blob.core.windows.net_443.json: no such file or directory
Then "{report}" is an array of objects with at least the following contents
19µs| id | severity |
|---|
| cert_expirationStatus | OK |
| cert_chain_of_trust | OK |