Розширення OpenSSL Ruby страждає від вразливості через надто дозвільне відповідність імен хостів, що може призвести до подібних помилок, таких як [CVE-2014-1492][CVE-2014-1492]. Подібні проблеми були знайдені в [Python][python-hostname-bug].

Цій вразливості присвоєно ідентифікатор CVE [CVE-2015-1855][CVE-2015-1855].

Ми настійно рекомендуємо вам оновити Ruby.

## Деталі

Після перегляду [RFC 6125][RFC-6125] та [RFC 5280][RFC-5280], ми знайшли множинні порушення відповідності імен хостів та особливо wildcard сертифікатів.

Розширення OpenSSL Ruby тепер надаватиме алгоритм відповідності на основі рядків, який слідує _більш_ суворій поведінці, як рекомендовано цими RFC. Зокрема, відповідність більше ніж одного wildcard на subject/SAN більше не дозволяється. Також порівняння цих значень тепер нечутливе до регістру.

Ця зміна вплине на поведінку `OpenSSL::SSL#verify_certificate_identity` Ruby.

Конкретно:

* Дозволяється лише один символ wildcard у найлівішій частині імені хоста.
* IDNA імена тепер можуть відповідати лише простому wildcard (наприклад, '\*.domain').
* Subject/SAN повинні бути обмежені лише символами ASCII.

Всі користувачі, які запускають зачеплений випуск, повинні оновитися негайно.

## Зачеплені версії

* Всі версії Ruby 2.0 до Ruby 2.0.0 рівня патчу 645
* Всі версії Ruby 2.1 до Ruby 2.1.6
* Всі версії Ruby 2.2 до Ruby 2.2.2
* до ревізії trunk 50292

## Подяка

Дякуємо Tony Arcieri, Jeffrey Walton, та Steffan Ullrich за повідомлення про цю проблему. Спочатку повідомлено як [Помилка #9644][Bug-9644], та патчі надіслані Tony Arcieri та Hiroshi Nakamura.

## Історія

* Спочатку опубліковано 2015-04-13 12:00:00 (UTC)

[CVE-2014-1492]: https://bugzilla.mozilla.org/show_bug.cgi?id=903885
[python-hostname-bug]: https://bugs.python.org/issue17997
[CVE-2015-1855]: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-1855
[RFC-6125]: https://tools.ietf.org/html/rfc6125
[RFC-5280]: https://tools.ietf.org/html/rfc5280
[Bug-9644]: https://bugs.ruby-lang.org/issues/9644
