[gnutls-devel] GnuTLS | gnutls_record_send() fails with GNUTLS_E_INVALID_REQUEST (#823)

Development of GNU's TLS library gnutls-devel at lists.gnutls.org
Wed Aug 28 22:17:12 CEST 2019




Guido Trentalancia commented:


Example of a BAD session browsing https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases:

GTLS: Keeping ciphersuite c0.2f (GNUTLS_ECDHE_RSA_AES_128_GCM_SHA256)
GTLS: Keeping ciphersuite c0.13 (GNUTLS_ECDHE_RSA_AES_128_CBC_SHA1)
GTLS: Keeping ciphersuite 00.9d (GNUTLS_RSA_AES_256_GCM_SHA384)
GTLS: Keeping ciphersuite c0.9d (GNUTLS_RSA_AES_256_CCM)
GTLS: Keeping ciphersuite 00.35 (GNUTLS_RSA_AES_256_CBC_SHA1)
GTLS: Keeping ciphersuite 00.9c (GNUTLS_RSA_AES_128_GCM_SHA256)
GTLS: Keeping ciphersuite c0.9c (GNUTLS_RSA_AES_128_CCM)
GTLS: Keeping ciphersuite 00.2f (GNUTLS_RSA_AES_128_CBC_SHA1)
GTLS: Keeping ciphersuite 00.9f (GNUTLS_DHE_RSA_AES_256_GCM_SHA384)
GTLS: Keeping ciphersuite cc.aa (GNUTLS_DHE_RSA_CHACHA20_POLY1305)
GTLS: Keeping ciphersuite c0.9f (GNUTLS_DHE_RSA_AES_256_CCM)
GTLS: Keeping ciphersuite 00.39 (GNUTLS_DHE_RSA_AES_256_CBC_SHA1)
GTLS: Keeping ciphersuite 00.9e (GNUTLS_DHE_RSA_AES_128_GCM_SHA256)
GTLS: Keeping ciphersuite c0.9e (GNUTLS_DHE_RSA_AES_128_CCM)
GTLS: Keeping ciphersuite 00.33 (GNUTLS_DHE_RSA_AES_128_CBC_SHA1)
GTLS: EXT[0xd7d6f0]: Preparing extension (Maximum Record Size/1) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (OCSP Status Request/5) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension OCSP Status Request/5 (5 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Client Certificate Type/19) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Server Certificate Type/20) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Supported Groups/10) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sent group SECP256R1 (0x17)
GTLS: EXT[0xd7d6f0]: Sent group SECP384R1 (0x18)
GTLS: EXT[0xd7d6f0]: Sent group SECP521R1 (0x19)
GTLS: EXT[0xd7d6f0]: Sent group X25519 (0x1d)
GTLS: EXT[0xd7d6f0]: Sent group FFDHE2048 (0x100)
GTLS: EXT[0xd7d6f0]: Sent group FFDHE3072 (0x101)
GTLS: EXT[0xd7d6f0]: Sent group FFDHE4096 (0x102)
GTLS: EXT[0xd7d6f0]: Sent group FFDHE6144 (0x103)
GTLS: EXT[0xd7d6f0]: Sent group FFDHE8192 (0x104)
GTLS: EXT[0xd7d6f0]: Sending extension Supported Groups/10 (20 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Supported EC Point Formats/11) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension Supported EC Point Formats/11 (2 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (SRP/12) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Signature Algorithms/13) for 'client hello'
GTLS: EXT[0xd7d6f0]: sent signature algo (4.1) RSA-SHA256
GTLS: EXT[0xd7d6f0]: sent signature algo (8.9) RSA-PSS-SHA256
GTLS: EXT[0xd7d6f0]: sent signature algo (8.4) RSA-PSS-RSAE-SHA256
GTLS: EXT[0xd7d6f0]: sent signature algo (4.3) ECDSA-SHA256
GTLS: EXT[0xd7d6f0]: sent signature algo (8.7) EdDSA-Ed25519
GTLS: EXT[0xd7d6f0]: sent signature algo (5.1) RSA-SHA384
GTLS: EXT[0xd7d6f0]: sent signature algo (8.10) RSA-PSS-SHA384
GTLS: EXT[0xd7d6f0]: sent signature algo (8.5) RSA-PSS-RSAE-SHA384
GTLS: EXT[0xd7d6f0]: sent signature algo (5.3) ECDSA-SHA384
GTLS: EXT[0xd7d6f0]: sent signature algo (6.1) RSA-SHA512
GTLS: EXT[0xd7d6f0]: sent signature algo (8.11) RSA-PSS-SHA512
GTLS: EXT[0xd7d6f0]: sent signature algo (8.6) RSA-PSS-RSAE-SHA512
GTLS: EXT[0xd7d6f0]: sent signature algo (6.3) ECDSA-SHA512
GTLS: EXT[0xd7d6f0]: sent signature algo (2.1) RSA-SHA1
GTLS: EXT[0xd7d6f0]: sent signature algo (2.3) ECDSA-SHA1
GTLS: EXT[0xd7d6f0]: Sending extension Signature Algorithms/13 (32 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (SRTP/14) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Heartbeat/15) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (ALPN/16) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Encrypt-then-MAC/22) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Extended Master Secret/23) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Session Ticket/35) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension Session Ticket/35 (0 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Key Share/51) for 'client hello'
GTLS: EXT[0xd7d6f0]: sending key share for SECP256R1
GTLS: EXT[0xd7d6f0]: sending key share for X25519
GTLS: EXT[0xd7d6f0]: Sending extension Key Share/51 (107 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Supported Versions/43) for 'client hello'
GTLS: Advertizing version 3.4
GTLS: Advertizing version 3.3
GTLS: Advertizing version 3.2
GTLS: Advertizing version 3.1
GTLS: EXT[0xd7d6f0]: Sending extension Supported Versions/43 (9 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Post Handshake Auth/49) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Safe Renegotiation/65281) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension Safe Renegotiation/65281 (1 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Server Name Indication/0) for 'client hello'
GTLS: HSK[0xd7d6f0]: sent server name: 'github.githubassets.com'
GTLS: EXT[0xd7d6f0]: Sending extension Server Name Indication/0 (28 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Cookie/44) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (Early Data/42) for 'client hello'
GTLS: EXT[0xd7d6f0]: Preparing extension (PSK Key Exchange Modes/45) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension PSK Key Exchange Modes/45 (3 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Record Size Limit/28) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension Record Size Limit/28 (2 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (ClientHello Padding/21) for 'client hello'
GTLS: EXT[0xd7d6f0]: Sending extension ClientHello Padding/21 (152 bytes)
GTLS: EXT[0xd7d6f0]: Preparing extension (Pre Shared Key/41) for 'client hello'
GTLS: HSK[0xd7d6f0]: CLIENT HELLO was queued [512 bytes]
GTLS: REC[0xd7d6f0]: Preparing Packet Handshake(22) with length: 512 and min pad: 0
GTLS: ENC[0xd7d6f0]: cipher: NULL, MAC: MAC-NULL, Epoch: 0
GTLS: REC[0xd7d6f0]: Sent Packet[1] Handshake(22) in epoch 0 and length: 517
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xee86b0]: SSL 3.3 Handshake packet received. Epoch 0, length: 123
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet Handshake(22) with length: 123
GTLS: REC[0xee86b0]: Decrypted Packet[0] Handshake(22) with length: 123
GTLS: HSK[0xee86b0]: SERVER HELLO (2) was received. Length 119[119], frag offset 0, frag length: 119, sequence: 0
GTLS: ASSERT: buffers.c[get_last_packet]:1162
GTLS: ASSERT: buffers.c[_gnutls_handshake_io_recv_int]:1413
GTLS: HSK[0xee86b0]: Server's version: 3.3
GTLS: EXT[0xee86b0]: Parsing extension 'Supported Versions/43' (2 bytes)
GTLS: EXT[0xee86b0]: Negotiated version: 3.4
GTLS: HSK[0xee86b0]: Selected cipher suite: GNUTLS_AES_128_GCM_SHA256
GTLS: EXT[0xee86b0]: Parsing extension 'Key Share/51' (69 bytes)
GTLS: HSK[0xee86b0]: Selected group SECP256R1 (2)
GTLS: EXT[0xee86b0]: client generated SECP256R1 shared key
GTLS: REC[0xee86b0]: Preparing Packet ChangeCipherSpec(20) with length: 1 and min pad: 0
GTLS: ENC[0xee86b0]: cipher: NULL, MAC: MAC-NULL, Epoch: 0
GTLS: REC[0xee86b0]: Sent Packet[2] ChangeCipherSpec(20) in epoch 0 and length: 6
GTLS: REC[0xee86b0]: Sent ChangeCipherSpec
GTLS: REC[0xee86b0]: Initializing epoch #1
GTLS: INT: CLIENT WRITE KEY [16]: 66311c0d1e91e672ac9066f2a8ff1fe2
GTLS: INT: SERVER WRITE KEY [16]: f77d0fce1957a538eaa9a378d3fbcd34
GTLS: INT: CLIENT WRITE IV [12]: fb70ca41c5f227fc088af612
GTLS: INT: SERVER WRITE IV [12]: 195694312daca347a6796a06
GTLS: REC[0xee86b0]: Epoch #1 ready
GTLS: HSK[0xee86b0]: TLS 1.3 re-key with cipher suite: GNUTLS_AES_128_GCM_SHA256
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xee86b0]: SSL 3.3 ChangeCipherSpec packet received. Epoch 1, length: 1
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet ChangeCipherSpec(20) with length: 1
GTLS: REC[0xee86b0]: SSL 3.3 Application Data packet received. Epoch 1, length: 37
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet Application Data(23) with length: 37
GTLS: REC[0xee86b0]: Decrypted Packet[0] Handshake(22) with length: 20
GTLS: HSK[0xee86b0]: ENCRYPTED EXTENSIONS (8) was received. Length 16[16], frag offset 0, frag length: 16, sequence: 0
GTLS: HSK[0xee86b0]: parsing encrypted extensions
GTLS: EXT[0xee86b0]: Parsing extension 'Server Name Indication/0' (0 bytes)
GTLS: EXT[0xee86b0]: Parsing extension 'Supported Groups/10' (6 bytes)
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xee86b0]: SSL 3.3 Application Data packet received. Epoch 1, length: 3107
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet Application Data(23) with length: 3107
GTLS: REC[0xee86b0]: Decrypted Packet[1] Handshake(22) with length: 3090
GTLS: HSK[0xee86b0]: CERTIFICATE (11) was received. Length 3086[3086], frag offset 0, frag length: 3086, sequence: 0
GTLS: ASSERT: buffers.c[get_last_packet]:1162
GTLS: ASSERT: buffers.c[_gnutls_handshake_io_recv_int]:1413
GTLS: HSK[0xee86b0]: parsing certificate message
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xee86b0]: SSL 3.3 Application Data packet received. Epoch 1, length: 281
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet Application Data(23) with length: 281
GTLS: REC[0xee86b0]: Decrypted Packet[2] Handshake(22) with length: 264
GTLS: HSK[0xee86b0]: CERTIFICATE VERIFY (15) was received. Length 260[260], frag offset 0, frag length: 260, sequence: 0
GTLS: HSK[0xee86b0]: Parsing certificate verify
GTLS: HSK[0xee86b0]: verifying TLS 1.3 handshake data using RSA-PSS-RSAE-SHA256
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xee86b0]: SSL 3.3 Application Data packet received. Epoch 1, length: 53
GTLS: REC[0xee86b0]: Expected Packet Handshake(22)
GTLS: REC[0xee86b0]: Received Packet Application Data(23) with length: 53
GTLS: REC[0xee86b0]: Decrypted Packet[3] Handshake(22) with length: 36
GTLS: HSK[0xee86b0]: FINISHED (20) was received. Length 32[32], frag offset 0, frag length: 32, sequence: 0
GTLS: HSK[0xee86b0]: parsing finished
GTLS: HSK[0xee86b0]: sending finished
GTLS: HSK[0xee86b0]: FINISHED was queued [36 bytes]
GTLS: REC[0xee86b0]: Preparing Packet Handshake(22) with length: 36 and min pad: 0
GTLS: ENC[0xee86b0]: cipher: AES-128-GCM, MAC: AEAD, Epoch: 1
GTLS: REC[0xee86b0]: Sent Packet[1] Handshake(22) in epoch 1 and length: 58
GTLS: ASSERT: constate.c[_gnutls_epoch_get]:836
GTLS: REC[0xee86b0]: Allocating epoch #2
GTLS: REC[0xee86b0]: Initializing epoch #2
GTLS: INT: CLIENT WRITE KEY [16]: fc252b87cf210773e5bdc55991cb8819
GTLS: INT: SERVER WRITE KEY [16]: 686b122160748f1cd693ed1a865e1d3e
GTLS: INT: CLIENT WRITE IV [12]: e5bd963992f104637ad909b7
GTLS: INT: SERVER WRITE IV [12]: 9f877cfb42f3c86fc0b732f8
GTLS: REC[0xee86b0]: Epoch #2 ready
GTLS: HSK[0xee86b0]: TLS 1.3 re-key with cipher suite: GNUTLS_AES_128_GCM_SHA256
GTLS: REC[0xee86b0]: Start of epoch cleanup
GTLS: REC[0xee86b0]: Epoch #0 freed
GTLS: REC[0xee86b0]: Epoch #1 freed
GTLS: REC[0xee86b0]: End of epoch cleanup
GTLS: REC[0xfef650]: SSL 3.3 Handshake packet received. Epoch 0, length: 69
GTLS: REC[0xfef650]: Expected Packet Handshake(22)
GTLS: REC[0xfef650]: Received Packet Handshake(22) with length: 69
GTLS: ASSERT: name_constraints.c[gnutls_x509_crt_get_name_constraints]:470
GTLS: REC[0xfef650]: Decrypted Packet[0] Handshake(22) with length: 69
GTLS: HSK[0xfef650]: SERVER HELLO (2) was received. Length 65[65], frag offset 0, frag length: 65, sequence: 0
GTLS: ASSERT: buffers.c[get_last_packet]:1162
GTLS: ASSERT: buffers.c[_gnutls_handshake_io_recv_int]:1413
GTLS: HSK[0xfef650]: Server's version: 3.3
GTLS: HSK[0xfef650]: SessionID length: 0
GTLS: HSK[0xfef650]: SessionID: c0
GTLS: HSK[0xfef650]: Selected cipher suite: GNUTLS_ECDHE_RSA_AES_128_GCM_SHA256
GTLS: EXT[0xfef650]: Parsing extension 'Safe Renegotiation/65281' (1 bytes)
GTLS: EXT[0xfef650]: Parsing extension 'Server Name Indication/0' (0 bytes)
GTLS: EXT[0xfef650]: Parsing extension 'Supported EC Point Formats/11' (4 bytes)
GTLS: EXT[0xfef650]: Parsing extension 'Session Ticket/35' (0 bytes)
GTLS: EXT[0xfef650]: Parsing extension 'OCSP Status Request/5' (0 bytes)
GTLS: HSK[0xfef650]: Safe renegotiation succeeded
GTLS: ASSERT: buffers.c[get_last_packet]:1171
GTLS: REC[0xfef650]: SSL 3.3 Handshake packet received. Epoch 0, length: 2991
GTLS: REC[0xfef650]: Expected Packet Handshake(22)
GTLS: REC[0xfef650]: Received Packet Handshake(22) with length: 2991
GTLS: ASSERT: name_constraints.c[gnutls_x509_crt_get_name_constraints]:470
GTLS: The pull function has been replaced but not the pull timeout.GTLS: ASSERT: buffers.c[_gnutls_io_check_recv]:748
GTLS: ASSERT: buffers.c[_gnutls_stream_read]:337
GTLS: ASSERT: buffers.c[_gnutls_io_read_buffered]:589
GTLS: ASSERT: record.c[recv_headers]:1140
GTLS: ASSERT: record.c[_gnutls_recv_in_buffers]:1271
GTLS: ASSERT: session.c[gnutls_session_get_data2]:125
GTLS: ASSERT: record.c[_gnutls_send_tlen_int]:464
gnutls error = -10[gnutls-bad.txt](/uploads/9dc256d91d3c1c82fce2fc63a102061a/gnutls-bad.txt)

-- 
Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/issues/823#note_209493841
You're receiving this email because of your account on gitlab.com.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20190828/97152c6b/attachment-0001.html>


More information about the Gnutls-devel mailing list