[PATCH] SSL: missing free calls in $ssl_client_s_dn and $ssl_client_i_dn

Nikolay Morozov n.morozov at securitycode.ru
Tue Mar 26 15:09:12 UTC 2019


# HG changeset patch
# User Nikolay Morozov <n.morozov at securitycode.ru>
# Date 1553582037 -10800
#      Tue Mar 26 09:33:57 2019 +0300
# Node ID 419a691bbd0601b0bba5068026b57d0b9a5c25e8
# Parent  d9c3917c7f901ac2a0f4a483f3229a63b51840c5
SSL: missing free calls in $ssl_client_s_dn and $ssl_client_i_dn.

If X509_get_issuer_name() or X509_get_subject_name() returned NULL,
this could lead to a certificate reference leak.  It cannot happen
in practice though, since each function returns an internal pointer
to a mandatory subfield of the certificate successfully decoded by
d2i_X509() during certificate message processing (closes #1751).

diff -r d9c3917c7f90 -r 419a691bbd06 src/event/ngx_event_openssl.c
--- a/src/event/ngx_event_openssl.c     Wed Mar 06 20:46:09 2019 +0300
+++ b/src/event/ngx_event_openssl.c     Tue Mar 26 09:33:57 2019 +0300
@@ -4622,6 +4622,7 @@

     name = X509_get_subject_name(cert);
     if (name == NULL) {
+        X509_free(cert);
         return NGX_ERROR;
     }

@@ -4673,6 +4674,7 @@

     name = X509_get_issuer_name(cert);
     if (name == NULL) {
+        X509_free(cert);
         return NGX_ERROR;
     }

Заявление о конфиденциальности

Данное электронное письмо и любые приложения к нему являются конфиденциальными и предназначены исключительно для адресата. Если Вы не являетесь адресатом данного письма, пожалуйста, уведомите немедленно отправителя, не раскрывайте содержание другим лицам, не используйте его в каких-либо целях, не храните и не копируйте информацию любым способом.


More information about the nginx-devel mailing list