Cargando…

Coverage-guided differential testing of TLS implementations based on syntax mutation

Transport layer security (TLS) protocol is the most widely used security protocol in modern network communications. However, protocol vulnerabilities caused by the design of the network protocol or its implementation by programmers emerge one after another. Meanwhile, various versions of TLS protoco...

Descripción completa

Detalles Bibliográficos
Autores principales: Pan, Yan, Lin, Wei, He, Yubo, Zhu, Yuefei
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2022
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8786154/
https://www.ncbi.nlm.nih.gov/pubmed/35073360
http://dx.doi.org/10.1371/journal.pone.0262176
_version_ 1784639055953133568
author Pan, Yan
Lin, Wei
He, Yubo
Zhu, Yuefei
author_facet Pan, Yan
Lin, Wei
He, Yubo
Zhu, Yuefei
author_sort Pan, Yan
collection PubMed
description Transport layer security (TLS) protocol is the most widely used security protocol in modern network communications. However, protocol vulnerabilities caused by the design of the network protocol or its implementation by programmers emerge one after another. Meanwhile, various versions of TLS protocol implementations exhibit different behavioral characteristics. Researchers are attempting to find the differences in protocol implementations based on differential testing, which is conducive to discovering the vulnerabilities. This paper provides a solution to find the differences more efficiently by targeting the TLS protocol handshake process. The differences of different implementations during the fuzzing process, such as code coverage and response data, are taken to guide the mutation of test cases, and the seeds are mutated based on the TLS protocol syntax. In addition, the definition of duplicate discrepancies is theoretically explored to investigate the root cause of the discrepancies and to reduce the number of duplicate cases that are caused by the same reason. Besides, the necessary conditions for excluding duplicate cases are further analyzed to develop the deduplication strategy. The proposed method is developed based on open-source tools, i.e., NEZHA and TLS-diff. Three types of widely used TLS protocol implementations, i.e., OpenSSL, BoringSSL, and LibreSSL, are taken for experimental testing. The experimental results show that the proposed method can effectively improve the ability to find differences between different implementations. Under the same test scale or the same time, the amount of discrepancies increases by about 20% compared to TLS-diff, indicating the effectiveness of the deduplication strategy.
format Online
Article
Text
id pubmed-8786154
institution National Center for Biotechnology Information
language English
publishDate 2022
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-87861542022-01-25 Coverage-guided differential testing of TLS implementations based on syntax mutation Pan, Yan Lin, Wei He, Yubo Zhu, Yuefei PLoS One Research Article Transport layer security (TLS) protocol is the most widely used security protocol in modern network communications. However, protocol vulnerabilities caused by the design of the network protocol or its implementation by programmers emerge one after another. Meanwhile, various versions of TLS protocol implementations exhibit different behavioral characteristics. Researchers are attempting to find the differences in protocol implementations based on differential testing, which is conducive to discovering the vulnerabilities. This paper provides a solution to find the differences more efficiently by targeting the TLS protocol handshake process. The differences of different implementations during the fuzzing process, such as code coverage and response data, are taken to guide the mutation of test cases, and the seeds are mutated based on the TLS protocol syntax. In addition, the definition of duplicate discrepancies is theoretically explored to investigate the root cause of the discrepancies and to reduce the number of duplicate cases that are caused by the same reason. Besides, the necessary conditions for excluding duplicate cases are further analyzed to develop the deduplication strategy. The proposed method is developed based on open-source tools, i.e., NEZHA and TLS-diff. Three types of widely used TLS protocol implementations, i.e., OpenSSL, BoringSSL, and LibreSSL, are taken for experimental testing. The experimental results show that the proposed method can effectively improve the ability to find differences between different implementations. Under the same test scale or the same time, the amount of discrepancies increases by about 20% compared to TLS-diff, indicating the effectiveness of the deduplication strategy. Public Library of Science 2022-01-24 /pmc/articles/PMC8786154/ /pubmed/35073360 http://dx.doi.org/10.1371/journal.pone.0262176 Text en © 2022 Pan et al https://creativecommons.org/licenses/by/4.0/This is an open access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
spellingShingle Research Article
Pan, Yan
Lin, Wei
He, Yubo
Zhu, Yuefei
Coverage-guided differential testing of TLS implementations based on syntax mutation
title Coverage-guided differential testing of TLS implementations based on syntax mutation
title_full Coverage-guided differential testing of TLS implementations based on syntax mutation
title_fullStr Coverage-guided differential testing of TLS implementations based on syntax mutation
title_full_unstemmed Coverage-guided differential testing of TLS implementations based on syntax mutation
title_short Coverage-guided differential testing of TLS implementations based on syntax mutation
title_sort coverage-guided differential testing of tls implementations based on syntax mutation
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8786154/
https://www.ncbi.nlm.nih.gov/pubmed/35073360
http://dx.doi.org/10.1371/journal.pone.0262176
work_keys_str_mv AT panyan coverageguideddifferentialtestingoftlsimplementationsbasedonsyntaxmutation
AT linwei coverageguideddifferentialtestingoftlsimplementationsbasedonsyntaxmutation
AT heyubo coverageguideddifferentialtestingoftlsimplementationsbasedonsyntaxmutation
AT zhuyuefei coverageguideddifferentialtestingoftlsimplementationsbasedonsyntaxmutation