[gnutls-devel] GnuTLS | Fix interleaved handshake handling in TLS 1.3 (!708)

Daiki Ueno gitlab at mg.gitlab.com
Wed Jul 18 16:16:39 CEST 2018


New Merge Request !708

https://gitlab.com/gnutls/gnutls/merge_requests/708

Branches: tmp-handshake-interleave to master
Author:    Daiki Ueno
Assignee:  
Approvers: Simon Josefsson, Nikos Mavrogiannopoulos, Hubert Kario, Tim Rühsen, Andreas Metzler, Tom, Ander Juaristi, Tomáš Mráz, Anderson Sasaki and GnuTLS devel mailing list


Previously, we disabled some tests from `tlsfuzzer/scripts/test-tls13-zero-length-data.py`, which utilizes unusual splitting of a handshake message (the first 2 bytes and the remaining).  This series makes GnuTLS handle it correctly and enables those tests.

There are three places needed to be fixed:
- `_gnutls_parse_record_buffered_msgs()`: take into account of very short fragmentation (< 4 bytes)
- `check_recv_type()`: fail early in `recv_headers()`, if there is a partial handshake message in the buffer
- the length check in `parse_handshake_header()`: take into account of zero-length fragment

## Checklist
 * [x] Test suite updated with functionality tests

## Reviewer's checklist:
 * [ ] Any issues marked for closing are addressed
 * [ ] There is a test suite reasonably covering new functionality or modifications
 * [ ] Function naming, parameters, return values, types, etc., are consistent and according to `CONTRIBUTION.md`
 * [ ] This feature/change has adequate documentation added
 * [ ] No obvious mistakes in the code

-- 
Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/merge_requests/708
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/20180718/dfe5c5b2/attachment-0001.html>


More information about the Gnutls-devel mailing list