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
Copy file name to clipboardExpand all lines: doc/testssl.1.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -113,6 +113,8 @@ The same can be achieved by setting the environment variable `WARNINGS`.
113
113
114
114
`--reqheader <header>` This can be used to add additional HTTP request headers in the correct format `Headername: headercontent`. This parameter can be called multiple times if required. For example: `--reqheader 'Proxy-Authorization: Basic dGVzdHNzbDpydWxlcw==' --reqheader 'ClientID: 0xDEADBEAF'`. REQHEADER is the corresponding environment variable.
115
115
116
+
`--mtls <path_to_client_cert>` This can be set to provide a file containing a client certificatete and a private key (not encrypted) in PEM format, which is used when a mutual TLS authentication is required by the remote server. MTLS is the equivalent environment variable.
prln_warning "not having provided client certificate and private key file, the client x509-based authentication prevents this from being tested"
17066
+
fileout "$jsonID" "WARN" "not having provided client certificate and private key file, the client x509-based authentication prevents this from being tested"
prln_warning "client x509-based authentication prevents this from being tested"
17325
-
fileout "$jsonID" "WARN" "client x509-based authentication prevents this from being tested" "$cve" "$cwe"
17352
+
if [[ "$CLIENT_AUTH" == required ]] && [[ -z "$MTLS" ]]; then
17353
+
prln_warning "not having provided client certificate and private key file, the client x509-based authentication prevents this from being tested"
17354
+
fileout "$jsonID" "WARN" "not having provided client certificate and private key file, the client x509-based authentication prevents this from being tested" "$cve" "$cwe"
17326
17355
return 7
17327
17356
fi
17328
17357
@@ -20507,6 +20536,7 @@ tuning / connect options (most also can be preset via environment variables):
20507
20536
--ids-friendly skips a few vulnerability checks which may cause IDSs to block the scanning IP
20508
20537
--phone-out allow to contact external servers for CRL download and querying OCSP responder
20509
20538
--add-ca <CA files|CA dir> path to <CAdir> with *.pem or a comma separated list of CA files to include in trust check
20539
+
--mtls <CLIENT CERT file> path to <CLIENT CERT> file, it must be in PEM format and contain client certificate with certificate key (not encrypted)
20510
20540
--basicauth <user:pass> provide HTTP basic auth information.
grep -q 'BEGIN CERTIFICATE' "$fname" || fatal_cmd_line "\"$fname\" is not CA file in PEM format" $ERR_RESOURCE
23893
23927
done
23894
23928
23929
+
# Check if mTLS has been selected, and if the correct client auth PEM file has been provided by user
23930
+
if [[ ! -z "$MTLS" ]]; then
23931
+
if [[ -f $MTLS ]]; then
23932
+
grep -q 'BEGIN CERTIFICATE' "$MTLS" || fatal_cmd_line "\"$MTLS\" is not a client certificate file in PEM format" $ERR_RESOURCE
23933
+
grep -q 'BEGIN PRIVATE KEY\|BEGIN RSA PRIVATE KEY' "$MTLS" || fatal_cmd_line "\"$MTLS\" the not encrypted private key is missing in the specified PEM file" $ERR_RESOURCE
23934
+
MTLS=$MTLS
23935
+
else
23936
+
[[ -s "$MTLS" ]] || fatal_cmd_line "the specified client certificate file \"$MTLS\" does not exist" $ERR_RESOURCE
23937
+
fi
23938
+
fi
23939
+
23895
23940
"$FAST" && pr_warning "\n'--fast' can have some undesired side effects thus it is not recommended to use anymore\n"
23896
23941
"$SSL_NATIVE" && pr_warning "\nusage of '--ssl-native' is not recommended as it will return incomplete and may even return incorrect results\n"
0 commit comments