Impact
Picotls is a TLS protocol library that allows users select different crypto backends based on their use case.
When parsing a spoofed TLS handshake message, picotls (specifically, bindings within picotls that call the crypto libraries) may attempt to free the same memory twice. This double free occurs during the disposal of multiple objects without any intervening calls to malloc Typically, this triggers the malloc implementation to detect the error and abort the process. However, depending on the internals of malloc and the crypto backend being used, the flaw could potentially lead to a use-after-free scenario, which might allow for arbitrary code execution.
Patches
The vulnerability has been addressed in commit TBD.
References
We thank Kian Kai Ang (@QUICTester) for reporting the issue.
Impact
Picotls is a TLS protocol library that allows users select different crypto backends based on their use case.
When parsing a spoofed TLS handshake message, picotls (specifically, bindings within picotls that call the crypto libraries) may attempt to free the same memory twice. This double free occurs during the disposal of multiple objects without any intervening calls to malloc Typically, this triggers the malloc implementation to detect the error and abort the process. However, depending on the internals of malloc and the crypto backend being used, the flaw could potentially lead to a use-after-free scenario, which might allow for arbitrary code execution.
Patches
The vulnerability has been addressed in commit TBD.
References
We thank Kian Kai Ang (@QUICTester) for reporting the issue.