1
0
mirror of https://github.com/drwetter/testssl.sh.git synced 2025-07-18 11:41:56 +02:00
Commit Graph

815 Commits

Author SHA1 Message Date
6a9b0e01fc - polishing and IPv6-related 2016-06-02 09:59:52 +02:00
51f4c9ac9e Merge pull request from typingArtist/365_fix_ipv6_handling
drwetter#365 fix ipv6 handling
2016-06-02 09:27:14 +02:00
2c69e83f5b https://github.com/drwetter/testssl.sh/issues/365 add UNBRACKETED_IPV6 quirks option
Since some OpenSSL binaries, namely Gentoo’s, don’t support bracketed
IPv6 addresses but unbracketed ones, specified as the -connect option,
the UNBRACKETED_IPV6 environment variable can be set to true for
disabling the automatic addition of brackets around IPv6 addresses on
such platforms.
2016-05-27 20:11:47 +02:00
cf62353fc6 https://github.com/drwetter/testssl.sh/issues/365 ensure DNS PTR lookups use un-bracketed IPv6 address
While standard OpenSSL requires the literal IPv6 address enclosed
in [brackets], standard DNS lookup tools don’t support the additional
characters. Before making reverse PTR lookups, these brackets have to
be removed from the IPv6 addresses.
2016-05-27 19:54:23 +02:00
1074c062c7 Merge branch 'master' of github.com:drwetter/testssl.sh 2016-05-27 17:44:08 +02:00
e1a8306286 - try to address
- WARNING in fileout is MEDIUM now
- NOT ok for medium on screen squashed
2016-05-27 17:43:45 +02:00
1ecad208fe Update Readme.md 2016-05-26 18:03:07 +02:00
6fb15e83fa global $OPENSSL_NR_CIPHERS 2016-05-26 12:56:55 +02:00
65193cdcee Merge pull request from dcooper16/run_rc4_show_each_fix
run_pfs() and run_rc4() show each fixes
2016-05-24 23:47:23 +02:00
e0c147ec86 run_pfs() and run_rc4() show each fixes
When run_rc4() is run with the "--show-each" option, but without the "--wide" option, a list of all RC4 ciphers is printed, without any distinction between those that are supported by the server and those that are not. This is the same issue I noted in  for run_pfs().

In run_pfs(), the displayed output was corrected, but all ciphers were still being added to $pfs_ciphers, so the list of supported PFS ciphers sent to fileout() was incorrect.

This PR fixes both issues.
2016-05-24 13:57:47 -04:00
5a03e96304 - consequently removed "NOT ok" for not-av of TLS 1.2 2016-05-23 22:42:40 +02:00
bf17a17b70 - 3DES in standard cipher list is medium, thus "NOT ok" is too much (need for elegant general way for "medium")
(see also https://www.keylength.com/en/8/)
2016-05-23 18:56:05 +02:00
aa99c5eb88 - FIX
- LF removed in JSON
2016-05-20 13:45:53 +02:00
803e363310 Merge pull request from dcooper16/server_key_size
Fix typo in Server key size check
2016-05-20 08:16:48 +02:00
fbf25d7ae1 Merge pull request from dcooper16/cert_sig_algo
Recognize more signature algorithms
2016-05-20 08:12:52 +02:00
2ffed62d53 Recognize more signature algorithms
This PR adds to the list of signature algorithms recognized in certificate_info().
2016-05-19 16:45:56 -04:00
dccf9bef63 Fix typo in Server key size check
When certificate_info() is trying to determine what type of public key the server has so that it can determine whether the key size is acceptable, it sometimes looks at $cert_sig_algo rather than $cert_key_algo. This PR fixes that and also adds support for DSA public keys.
2016-05-19 16:39:06 -04:00
9a1425da14 - FIX
- polish 
2016-05-18 19:06:26 +02:00
3dc94d2b3b Merge pull request from dcooper16/parse_tls_serverhello_with_added_checks
parse_tls_serverhello() with added checks
2016-05-18 08:18:47 +02:00
2a0a382321 Don't use dec2hex
The dec2hex() was actually converting from hex to decimal. Since it was only being used in one place, and wasn't really needed there, I just deleted it.
2016-05-17 12:02:12 -04:00
cba7fddbdd Revised parse_tls_serverhello()
Revised parse_tls_serverhello() to more carefully check the response for errors, and to provide for more flexibility (e.g., if handshake messages are split across multiple fragments).
2016-05-16 16:52:51 -04:00
4eefe0df8b Merge pull request from thomaspatzke/master
logfile, jsonfile and csvfile parameters work without =
2016-05-11 00:14:24 +02:00
269a9e8c60 - fix LF in JSON/CSV output
- fix EV detection
2016-04-21 18:44:57 +02:00
948118c927 Merge pull request from dcooper16/fix_typos
Fix some typos
2016-04-21 18:21:51 +02:00
cf84d69171 Fix some typos
Note: I deleted line 207, "HAS_SSL2=false", since it was a repeat of line 203.
2016-04-21 12:04:33 -04:00
c62177044b - FIX 2016-04-20 18:53:04 +02:00
199708f94c Merge pull request from dcooper16/run_cipher_per_proto_speedup
run_cipher_per_proto speedup
2016-04-08 22:11:59 +02:00
e7c27a6dbe Merge pull request from dcooper16/neat_list_bugfix
Fix typo in neat_list()
2016-04-08 21:57:47 +02:00
bbb8af804e Fix typo in neat_list()
The last line of neat_list currently uses $HEXC as the parameter to show_rfc_style(), but it should use $hexcode. At the moment using $HEXC instead of $hexcode makes no difference, since hexcode="$1" and in all calls to neat_list() the first parameter is $HEXC. However, this bug could create problems in the future since neat_list() will misbehave if the value of the first parameter (hexcode) isn't the same as $HEXC.
2016-04-08 14:49:44 -04:00
52bd89921b Update Readme.md 2016-04-04 21:52:57 +02:00
bbcc869dec run_cipher_per_proto speedup
This PR makes basically the same changes to run_cipher_per_proto() as I previously made to run_allciphers(). The main difference is that in this function, round 0 consists of a single call to "$OPENSSL s_client" with "-cipher" including all of the locally supported ciphers. The reason for the difference is that in run_allciphers() its saves time to assume the server supports at least one cipher suite. In the case of run_cipher_per_proto(), however, it is likely that the server will not support some protocols at all, so its usually faster to start with a single call to "$OPENSSL s_client" that tests whether the server supports the protocol at all.
2016-03-31 09:38:20 -04:00
16927f523f - NOT OK ==> NOT ok
- FIX  (--show-each w/o --wide)
- polishing PR 
2016-03-30 23:28:31 +02:00
1ea6e944f3 - new chacha/poly ciphers 2016-03-29 21:56:54 +02:00
bed1a602f1 - small hint for new chacha/poly ciphers 2016-03-29 21:56:31 +02:00
62f34cfda2 Merge branch 'master' of github.com:drwetter/testssl.sh 2016-03-29 19:47:26 +02:00
02f6e07709 - ipv6 changes (tested with 1.0.2h) 2016-03-29 19:46:44 +02:00
c033ebd885 Merge pull request from dcooper16/fix_mapping_RFC_typo
Fix typo in mapping-rfc.txt
2016-03-29 19:18:04 +02:00
02e41951cb Fix typo in mapping-rfc.txt
There is a tab on the line for SSL_CK_RC2_128_CBC_WITH_MD5. When testssl.sh is called with "-E" and "--show-each," this causes the string "not a/v" to be printed two characters to the right of the same string on every other line (at least on Linux systems). This PR just deletes the tab character.
2016-03-29 09:23:59 -04:00
c4d84451f1 Merge pull request from dcooper16/run_allciphers_speedup
run_allciphers() speedup
2016-03-28 18:41:03 +02:00
eac2df6d81 run_allciphers() speedup
The run_allciphers() function currently works by calling "$OPENSSL s_client" once for each cipher suite supported by $OPENSSL. In the case of "OpenSSL 1.0.2-chacha (1.0.2e-dev)" that means 195 calls to  "$OPENSSL s_client" even though servers tend to only support a small fraction of these cipher suites.

This PR produces the same output as the current run_allciphers() with fewer calls to "$OPENSSL s_client", which results in the function running faster (usually much faster). The basic idea behind the revised function is to test cipher suites in blocks. If $OPENSSL supports 195 cipher suites, then it group these cipher suites into 4 blocks of 64 (with the final block being smaller). It makes one call to "$OPENSSL s_client" with cipher suites 1-64, and if it fails, then it knows that none of these 64 cipher suites are supported by the server and it doesn't need to perform any more tests on these 64 cipher suites. If it succeeds, then it breaks the 64 cipher suites into 4 blocks of 16 and calls "$OPENSSL s_client" with each of those blocks. The blocks of 16 that are successful are broken into blocks of 4, and for each of the successful blocks of 4 the individual cipher suites are tested.

For testssl.sh and www.google.com the number of calls to "$OPENSSL s_client" is reduced from 195 to 88. For github.com the number of calls is reduced to 56!

I haven't made any changes to run_cipher_per_proto yet, but if this PR is accepted I can make the same changes in that function.

Thanks,

David
2016-03-25 10:00:50 -04:00
c684ba7d9c - polishing 2016-03-25 11:52:23 +01:00
ad8fd1804a Merge pull request from Niko78/patch-2
Update README.md
2016-03-25 09:22:35 +01:00
e233480ca2 Update README.md 2016-03-25 09:20:20 +01:00
a95c807c5e Delete microsoft.pem 2016-03-25 09:07:45 +01:00
7bb8ecc566 - now the stores are properly named 2016-03-24 18:56:26 +01:00
53b0843664 - added Apple certificate store
- renamed the other stores accordingly (caps in the beginng)
2016-03-24 18:52:10 +01:00
dd30b8225e - FIX (thx, @dawsonpaul 2016-03-21 23:03:42 +01:00
b5b158d5b2 - BREACH missed a LF 2016-03-19 18:15:38 +01:00
ab7f66533c - FIX
- add  MicrosoftSharePointTeamServices in header detection
2016-03-19 17:20:36 +01:00
a0b7d04974 Update README.md 2016-03-14 22:40:29 +01:00