> Sent: Friday, June 05, 2020 at 1:03 AM
> From: "Stuart Henderson" <s...@spacehopper.org>
> To: "Alex Free" <ale...@mail.com>
> Cc: "f.holop" <min...@obiit.org>, ports@openbsd.org
> Subject: Re: curl with libidn
>
> On 2020/06/05 00:21, Alex Free wrote:
> > > Sent: Friday, June 05, 2020 at 12:05 AM
> > > From: "Stuart Henderson" <s...@spacehopper.org>
> > > To: "Alex Free" <ale...@mail.com>
> > > Cc: "f.holop" <min...@obiit.org>, ports@openbsd.org
> > > Subject: Re: curl with libidn
> > >
> > > On 2020/06/04 22:39, Alex Free wrote:
> > > > > Sent: Thursday, June 04, 2020 at 4:53 PM
> > > > > From: "f.holop" <min...@obiit.org>
> > > > > To: ports@openbsd.org
> > > > > Subject: curl with libidn
> > > > >
> > > > > hi,
> > > > >
> > > > > atm curl is unable to open non ascii domains.
> > > > > is there a reason why it's not compiled with libidn?
> > > > > (same goes for lynx)
> > > > >
> > > > > -f
> > > > > --
> > > > >
> > > > >
> > > >
> > > > If it compiles fine a flavor should be added to both.
> > >
> > > hahaha no.
> > >
> > >
> >
> > Your right it should just be a dependency to both.
>
> If it's readded at all then it should just be a dependency (flavours
> in common libraries are a big problem). (it would be libidn2 not libidn,
> they are different codebases and supporting different IDNA specs).
>
> When IDN support was removed from the curl port before, upstream had
> hurriedly switched from libidn to libidn2 (despite at the time libidn
> being fairly well updated, and libidn2 having been mostly dead for
> about 5 years). IIRC this was to avoid problems with differences
> between the two IDNA specs (afaik both of which are still in use,
> though I have some recollection of at least some TLDs disallowing
> domains which conflict between the two? not sure..).
>
> Adding it would add more code to something that is quite a common
> dependency. Maybe it's useful enough to be worth it (being from a
> country with mostly 7-bit charset I don't get much of a vote in this ;)
> but along with the upside of support IDNs, there is a downside to
> pulling in (historically a bit buggy) code to all ports using the
> library.
>
> FWIW here are some of the more important libidn2 bugs.
>
> CVE-2019-12290
>
> GNU libidn2 before 2.2.0 fails to perform the roundtrip checks specified
> in RFC3490 Section 4.2 when converting A-labels to U-labels. This makes
> it possible in some circumstances for one domain to impersonate another.
> By creating a malicious domain that matches a target domain except for
> the inclusion of certain punycoded Unicode characters (that would be
> discarded when converted first to a Unicode label and then back to an
> ASCII label), arbitrary domains can be impersonated.
>
> CVE-2019-18224
>
> idn2_to_ascii_4i in lib/lookup.c in GNU libidn2 before 2.1.1 has a
> heap-based buffer overflow via a long domain string.
>
> CVE-2017-14062
>
> Integer overflow in the decode_digit function in puny_decode.c in
> Libidn2 before 2.0.4 allows remote attackers to cause a denial of
> service or possibly have unspecified other impact.
>
> CVE-2017-14061
>
> Integer overflow in the _isBidi function in bidi.c in Libidn2 before
> 2.0.4 allows remote attackers to cause a denial of service or possibly
> have unspecified other impact.
>

Why are flavors in common libraries a big problem putting aside the
security issues and quality of code in this case?

Reply via email to