Re: Call for testing TLS 1.3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 30/04/18 05:41 PM, Matt Caswell wrote:


On 30/04/18 21:55, Dennis Clarke wrote:
On 30/04/18 03:48 PM, Salz, Rich via openssl-users wrote:
   I think that makes a very strong argument that TLS 1.3 should be
enabled by default if it all possible.


Question would be "why would it not be?"

TLSv1.3 behaves differently to TLSv1.2. Applications written with
TLSv1.2 in mind might not work as expected when TLSv1.3 is negotiated.

Some of the issues that might be encountered are here:

https://wiki.openssl.org/index.php/TLS1.3

We have already seen a handful of issues. For example in this one an
application has implemented a PSK callback. Due to the way PSK works in
TLSv1.3 the callback can get called earlier in the process than in
TLSv1.2. Suddenly in the presence of TLSv1.3 this particular application
callback has started to crash (we don't know why yet):

https://github.com/openssl/openssl/issues/6110


I'm having no joy with apache 2.4.33 which just tossed a sigILL :

Reading mod_ssl.so
t@1 (l@1) program terminated by signal ILL (illegal opcode)
0xffffffff70d97320: TLSv1_2_enc_data       :    .word            0xffffffff
Current function is ssl_init_ctx_protocol
  613       ctx = SSL_CTX_new(method);
(dbx) where
current thread: t@1
[1] 0xffffffff70d97320(0x1002dc9d0, 0x0, 0x0, 0xfffffffffffffff8, 0x0, 0x1002dccf8), at 0xffffffff70d97320 [2] SSL_CTX_new(0xffffffff70d942b8, 0x1002dc9d0, 0x3b40, 0x2, 0xffffffff742619fc, 0xffffffff74367460), at 0xffffffff7424bc00 =>[3] ssl_init_ctx_protocol(s = 0x10026ddc0, p = 0x1001f8a68, ptemp = 0x100228c68, mctx = 0x1002be698), line 613 in "ssl_engine_init.c" [4] ssl_init_ctx(s = 0x10026ddc0, p = 0x1001f8a68, ptemp = 0x100228c68, mctx = 0x1002be698), line 1076 in "ssl_engine_init.c" [5] ssl_init_server_ctx(s = 0x10026ddc0, p = 0x1001f8a68, ptemp = 0x100228c68, sc = 0x1002be658, pphrases = 0x1002b51a0), line 1740 in "ssl_engine_init.c" [6] ssl_init_ConfigureServer(s = 0x10026ddc0, p = 0x1001f8a68, ptemp = 0x100228c68, sc = 0x1002be658, pphrases = 0x1002b51a0), line 1842 in "ssl_engine_init.c" [7] ssl_init_Module(p = 0x1001f8a68, plog = 0x100226c58, ptemp = 0x100228c68, base_server = 0x10022ac78), line 369 in "ssl_engine_init.c" [8] ap_run_post_config(pconf = 0x1001f8a68, plog = 0x100226c58, ptemp = 0x100228c68, s = 0x10022ac78), at 0x10007d094
  [9] main(argc = 3, argv = 0xffffffff7ffff6d8), line 739 in "main.c"
(dbx) list
  613       ctx = SSL_CTX_new(method);
  614
  615       mctx->ssl_ctx = ctx;
  616
  617       SSL_CTX_set_options(ctx, SSL_OP_ALL);
  618
  619   #if OPENSSL_VERSION_NUMBER < 0x10100000L
  620       /* always disable SSLv2, as per RFC 6176 */
  621       SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2);
  622
(dbx)

I'm digging around in there now ...

(dbx) listi 612, 613
  612   #endif
  613       ctx = SSL_CTX_new(method);
0xffffffff6e689b60: ssl_init_ctx_protocol+0x0330: ldx [%fp + 1991], %o0 0xffffffff6e689b64: ssl_init_ctx_protocol+0x0334: call _PROCEDURE_LINKAGE_TABLE_+0x1160 [PLT] ! 0xffffffff6e9afa60
0xffffffff6e689b68: ssl_init_ctx_protocol+0x0338:       nop
0xffffffff6e689b6c: ssl_init_ctx_protocol+0x033c:       mov      %o0, %o1
0xffffffff6e689b70: ssl_init_ctx_protocol+0x0340: stx %o1, [%fp + 1999]

(dbx) print method
method = 0xffffffff70d942b8
(dbx) x 0xffffffff70d942b8/8x
0xffffffff70d942b8: DTLSv1_2_enc_data+0x0400: 0x0001 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000
(dbx)
(dbx) x 0xffffffff6e9afa60/16x
0xffffffff6e9afa60: _PROCEDURE_LINKAGE_TABLE_+0x1160 [PLT]: 0x0100 0x0000 0x0b22 0xf6d1 0x8239 0x60bf 0x81c0 0x6000 0xffffffff6e9afa70: _PROCEDURE_LINKAGE_TABLE_+0x1170 [PLT]: 0x0100 0x0000 0x0100 0x0000 0x0100 0x0000 0x0100 0x0000
(dbx)

no idea why an illegal opcode slipped into the mix here but I may revert
back to 1.1.0h and do a sanity check, run httpd inside the debugger or
at least the foregorund and then try 1.1.1-pre5 again. I don't want to
have to unwind frames here and try to figure out why that call was sick.

oodles of fun.

dc
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux