[openssl-commits] [openssl] OpenSSL_1_0_1-stable update

Dr. Stephen Henson steve at openssl.org
Fri Jul 22 14:21:34 UTC 2016


The branch OpenSSL_1_0_1-stable has been updated
       via  6adf409c7432b90c06d9890787fe56c48f2a16e7 (commit)
      from  beaa2c03e70b523f006003a489497a18b4d53e6c (commit)


- Log -----------------------------------------------------------------
commit 6adf409c7432b90c06d9890787fe56c48f2a16e7
Author: Dr. Stephen Henson <steve at openssl.org>
Date:   Thu Jul 21 15:24:16 2016 +0100

    Fix OOB read in TS_OBJ_print_bio().
    
    TS_OBJ_print_bio() misuses OBJ_txt2obj: it should print the result
    as a null terminated buffer. The length value returned is the total
    length the complete text reprsentation would need not the amount of
    data written.
    
    CVE-2016-2180
    
    Thanks to Shi Lei for reporting this bug.
    
    Reviewed-by: Matt Caswell <matt at openssl.org>
    (cherry picked from commit 0ed26acce328ec16a3aa635f1ca37365e8c7403a)

-----------------------------------------------------------------------

Summary of changes:
 crypto/ts/ts_lib.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/crypto/ts/ts_lib.c b/crypto/ts/ts_lib.c
index c51538a..e0f1063 100644
--- a/crypto/ts/ts_lib.c
+++ b/crypto/ts/ts_lib.c
@@ -90,9 +90,8 @@ int TS_OBJ_print_bio(BIO *bio, const ASN1_OBJECT *obj)
 {
     char obj_txt[128];
 
-    int len = OBJ_obj2txt(obj_txt, sizeof(obj_txt), obj, 0);
-    BIO_write(bio, obj_txt, len);
-    BIO_write(bio, "\n", 1);
+    OBJ_obj2txt(obj_txt, sizeof(obj_txt), obj, 0);
+    BIO_printf(bio, "%s\n", obj_txt);
 
     return 1;
 }


More information about the openssl-commits mailing list