An issue was discovered in the OpenSSL library in Ruby when two OpenSSL::X509::Name
objects are compared using ==
, depending on the ordering, non-equal objects may return true. When the first argument is one character longer than the second, or the second argument contains a character that is one less than a character in the same position of the first argument, the result of ==
will be true. This could be leveraged to create an illegitimate certificate that may be accepted as legitimate and then used in signing or encryption operations.