You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fixes#2833
This does a check for the opossum vulnerability, see https://opossum-attack.com/ .
It uses a separate function to send the payload and retrieve the result via `http_header_printf()`. It doesn't use curl or wget. The latter wouldn't work anyway as according to the manpage as the HTTP header which needs to be sent must not contain LFs. This function was introduced because `http_get_header()` -- which was renamed to `http_head()` -- could use wget if curl is not available. On the way to this PR `http_head()` was improved, so that timeouts were used for curl and wget for better maturity.
`http_header_printf()` now uses bach sockets , strips the URI so that a plaintext request is made. This will be done in the background because not every host will answer.
Done also:
- handling when PROXY is requested (try anyway directly as the payload is not "proxyable")
- print a message when no HTTP service is present
- try hard to use plaintext HTTP when auth is required for HTTPS and service HTTP would not be defined otherwise
- manpages
- help
Also when pwnedkeys are checked a not pwned certificate is labled not neutral but OK=green.
Copy file name to clipboardExpand all lines: doc/testssl.1.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -236,9 +236,11 @@ Also for multiple server certificates are being checked for as well as for the c
236
236
237
237
`-T, --ticketbleed` Checks for Ticketbleed memory leakage in BigIP loadbalancers.
238
238
239
-
`--BB, --robot`Checks for vulnerability to ROBOT / (*Return Of Bleichenbacher's Oracle Threat*) attack.
239
+
`--OP, --opossum` Checks for HTTP to HTTPS upgrade vulnerability named Opossum.
240
240
241
-
`--SI, --starttls-injection` Checks for STARTTLS injection vulnerabilities (SMTP, IMAP, POP3 only). `socat` and OpenSSL >=1.1.0 is needed.
241
+
`--BB, --robot` Checks for vulnerability to ROBOT / (*Return Of Bleichenbacher's Oracle Threat*) attack.
242
+
243
+
`--SI, --starttls-injection` Checks for STARTTLS injection vulnerabilities (SMTP, IMAP, POP3 only). `socat` and OpenSSL >=1.1.0 is needed.
242
244
243
245
`-R, --renegotiation` Tests renegotiation vulnerabilities. Currently there's a check for *Secure Renegotiation* and for *Secure Client-Initiated Renegotiation*. Please be aware that vulnerable servers to the latter can likely be DoSed very easily (HTTP). A check for *Insecure Client-Initiated Renegotiation* is not yet implemented.
244
246
@@ -490,6 +492,7 @@ Please note that for plain TLS-encrypted ports you must not specify the protocol
490
492
491
493
* RFC 2246: The TLS Protocol Version 1.0
492
494
* RFC 2595: Using TLS with IMAP, POP3 and ACAP
495
+
* RFC 2817: Upgrading to TLS Within HTTP/1.1
493
496
* RFC 2818: HTTP Over TLS
494
497
* RFC 2830: Lightweight Directory Access Protocol (v3): Extension for Transport Layer Security
495
498
* RFC 3207: SMTP Service Extension for Secure SMTP over Transport Layer Security
@@ -551,7 +554,6 @@ Please note that for plain TLS-encrypted ports you must not specify the protocol
0 commit comments