<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libcrypto/x509, branch OPENBSD_7_1</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_1</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_1'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2023-02-07T15:59:30+00:00</updated>
<entry>
<title>Fix arbitrary memory read in GENERAL_NAME_cmp()</title>
<updated>2023-02-07T15:59:30+00:00</updated>
<author>
<name>bluhm</name>
<email></email>
</author>
<published>2023-02-07T15:59:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=ad1c8162ed483dc5234494f59b209481e4a44243'/>
<id>urn:sha1:ad1c8162ed483dc5234494f59b209481e4a44243</id>
<content type='text'>
The ASN.1 template for GENERAL_NAME and its corresponding C structure
disagree on the type of the x400Address member. This results in an ASN.1
string to be considered as an ASN.1 type, which allows an attacker to read
(essentially) arbitrary memory. Fix this by forcing comparison as strings.

While the underlying type confusion has been present since time immemorial,
this particular bug came with the EdiPartyName fix (6.8/008_asn1.patch.sig).

Reported by David Benjamin, fix suggested by jsing.

Release date for this was set to be January 31. Unilaterally pushed back to
February 7 by OpenSSL by way of announcement of many completely unrelated
embargoed issues, some of which they had been sitting on since July 2020.

from tb@; OK beck@ jsing@

this is errata/7.1/022_x509.patch.sig
</content>
</entry>
<entry>
<title>name constraints: be more careful with NULs</title>
<updated>2022-03-26T16:34:21+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-26T16:34:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=ac8744d51889c42d26769c65c226f6a4ab45da5e'/>
<id>urn:sha1:ac8744d51889c42d26769c65c226f6a4ab45da5e</id>
<content type='text'>
An IA5STRING is a Pascal string that can have embedded NULs and is
not NUL terminated (except that for legacy reasons it happens to be).

Instead of taking the strlen(), use the already known ASN.1 length and
use strndup() instead of strdup() to generate NUL terminated strings
after some existing code has checked that there are no embedded NULs.

In v2i_GENERAL_NAME_ex() use %.*s to print the bytes. This is not
optimal and might be switched to using strvis() later.

ok beck inoguchi jsing
</content>
</entry>
<entry>
<title>Make gcc 4 happier about x509_addr.c</title>
<updated>2022-03-16T11:44:36+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-16T11:44:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=295526693f6a6e844f3d22eebc8f50fdf9fedf49'/>
<id>urn:sha1:295526693f6a6e844f3d22eebc8f50fdf9fedf49</id>
<content type='text'>
gcc 4 on sparc64 issues a few 'warning: value computed is not used'.
There are two cases: sk_set_cmp_function() returns the old comparison
function of the stack which we don't care about. The one warning about
an sk_delete() is about a return value that we know already and which
we will free a few lines down.

ok inoguchi miod
</content>
</entry>
<entry>
<title>Allow constraints of the form @domain.com</title>
<updated>2022-03-14T21:29:46+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-14T21:29:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2189fd34b7b61fc89bd474d85ac954a2fb1b6d71'/>
<id>urn:sha1:2189fd34b7b61fc89bd474d85ac954a2fb1b6d71</id>
<content type='text'>
Some things issue and expect that we support a non-standard extension of
accepting any email address from a host by prefixing an email name
constraint with @. This used to be the case with the old code as well.

Pointed out and based on a diff by Alex Wilson.

ok jsing
</content>
</entry>
<entry>
<title>Rework ownership handling in x509_constraints_validate()</title>
<updated>2022-03-14T21:15:49+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-14T21:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cdd92616160505c509e5c7f6736fcbaadcdd9afc'/>
<id>urn:sha1:cdd92616160505c509e5c7f6736fcbaadcdd9afc</id>
<content type='text'>
Instead of having the caller allocate and pass in a new
x509_constraints_name struct, handle allocation inside
x509_constraints_validate(). Also make the error optional.
All this is done to simplify the call sites and to make it
more obvious that there are no leaks.

ok jsing
</content>
</entry>
<entry>
<title>Relax the check of x509_constraints_dirname()</title>
<updated>2022-03-13T17:23:02+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-13T17:23:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=80a47514c89065d34f61afd4698b0f8182c45d60'/>
<id>urn:sha1:80a47514c89065d34f61afd4698b0f8182c45d60</id>
<content type='text'>
The dirname constraint must be a prefix in DER format, so relax the
check from requiring equal-length strings to allow shorter names also.

From Alex Wilson

ok jsing
</content>
</entry>
<entry>
<title>Add x509_constraints_validate() to x509_internal.h</title>
<updated>2022-03-13T17:08:04+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-13T17:08:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cd66e82e3090c8e0b602600f92762eec03e1f998'/>
<id>urn:sha1:cd66e82e3090c8e0b602600f92762eec03e1f998</id>
<content type='text'>
From Alex Wilson

ok jsing
</content>
</entry>
<entry>
<title>Check name constraints using the proper API</title>
<updated>2022-03-13T16:48:49+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-13T16:48:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=7bdf8508440bb6ad889ebb6210b36e2e45db8c79'/>
<id>urn:sha1:7bdf8508440bb6ad889ebb6210b36e2e45db8c79</id>
<content type='text'>
The previous versions were too strict and disallowed leading dots.

From Alex Wilson

ok jsing
</content>
</entry>
<entry>
<title>style tweak</title>
<updated>2022-03-13T16:30:31+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-13T16:30:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=6a05251669a841118ef2afb995c9fdf4ec6f7abf'/>
<id>urn:sha1:6a05251669a841118ef2afb995c9fdf4ec6f7abf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add missing error check after strdup()</title>
<updated>2022-03-13T16:25:58+00:00</updated>
<author>
<name>tb</name>
<email></email>
</author>
<published>2022-03-13T16:25:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=eb5306b751b98d33dc4833a353cd77e6e3a9d3ad'/>
<id>urn:sha1:eb5306b751b98d33dc4833a353cd77e6e3a9d3ad</id>
<content type='text'>
From Alex Wilson

ok jsing
</content>
</entry>
</feed>
