Досмеялись. Серьезная ошибка в GnuTLS.

Совсем недавно OSS-энтузиасты весело радовались серьезному проколу компании Apple, в результате которого SSL-соединения стали уязвимы к атакам MiTM (хотя были и мнения, что это не прокол, а осознанное вредительство в рамках программ NSA). Так вот, зря радовались.

Есть такая криптобиблиотека - GnuTLS, мэйнтейнером которой является инженер Red Hat, Nikos Mavrogiannopoulos. Ее используют такие известные приложения, как emacs + email/nntp, wget, vlc, network-manager, mutt, empathy и многие другие. Просто попробуйте удалить ее с помощью sudo yum remove gnutls и вы поймете ее важность. И вот, в феврале инженер Red Hat, Suman Jana, нашел (и предложил патч для исправления) удивительную ошибку в GnuTLS - промежуточные сертификаты приравнивались к корневым. Оказалось не очень страшно, и проявляется лишь в ряде частных случаев. И вроде уже все успокоились, как тут внезапно обнаружили что в старой линейке RHEL 5.x есть похожая ошибка, впервые опубликованная еще в 2009 году. А потом Nikos обнаружил еще более значительную дыру - GnuTLS не возвращает ошибку в ряде случаев проверки сертификата, а успешно завершает валидацию, причем дыра существует с 2005 года. Oops!

Патчи, конечно, уже есть - раз, два, три, и Red Hat отрапортовал о выходе исправления для RHEL 5.x и RHEL 6.x, но учитывая сложность обновления серверных систем (не все еще используют виртуализацию и облака, гордясь большим аптаймом физических машин) уязвимость будет присутствовать на множестве машин.

Проблема, кстати, очень показательна. Это и зоопарк несовместимых, под разными лицензиями, и плохо пересекающихся по функционалу криптобиблиотек, чья консолидация идет очень тяжело. Это и то, что исправить ошибку такого масштаба реалистично лишь в случае динамической линковки, и без bundled libs, о проблемах с которыми пишут регулярно, в т.ч. и наши участники. Это и недостаток рабочих рук при разработке фундаментальных библиотек, занимаются которыми ведет всего лишь несколько компаний. Но главное, это то, что не стоит раньше времени хихикать над проприетарными продуктами. Как бы потом над нами не посмеялись.

На ArsTechnica уже проводят параллели с багом Apple.