Другое

Библиотека Libssh: уязвимости и ошибки, которые нужно устранить

Уязвимость Libssh — это «слабое место» инструмента, программы, библиотеки, благодаря которому злоумышленники могут компрометировать информацию, передаваемую пользователем. Уязвимость разного рода свойственна всем библиотекам такого типа, поэтому Libssh не может быть исключением.

Библиотека Libssh — это многофункциональная библиотека, разработанная на языке С++, которая реализует протокол SSH на стороне клиента и сервера. С помощью этой библиотеки разработчик может дистанционно запускать программы, транспортировать пакеты с файлами, организовывать безопасный туннель для передачи данных, управлять ключами шифрования и многое другое.

SSH — это протокол шифрования, который обеспечивает надежную передачу данных между клиентским устройством и сервером благодаря надежным алгоритмам шифрования и строжайшим требованиям к аутентификации клиентских устройств и сервера.

Библиотека Libssh

Библиотека Libssh распространяется с открытым исходным кодом и в свободном доступе. Сама библиотека Libssh не имеет ничего общего с другим похожим проектом Libssh2, который выполняет похожие функции, но разработан и распространяется совсем другими методами.

Libssh редко используется самостоятельно, поэтому очень часто данную библиотеку используют совместно с другими криптографическими пакетами:

  • Libgcrypt;

  • Libcrypto.

Основная цель этой библиотеки — позволить разработчикамочень просто интегрировать возможности SSH в свое программное обеспечение, разрабатываемое на языках программирования С или С++.

Сама по себе библиотека Libssh считается очень надежной, и она отлично справляется со своими функциональными обязанностями. Однако периодически ее «титул надежности» компрометирует та или иная уязвимость, обнаруженная в Libssh в процессе работы с этим инструментом.

Уязвимость Libssh

Любая обнаруженная уязвимость в Libssh всегда устраняется в кратчайшие сроки, но каждый раз она омрачает доверие к этому инструменту.

Несколько последних уязвимостей Libssh:

  • уязвимость Libssh «CVE-2021-3634», которая характеризовалась переполнением кучи буфера обмена, что открывало злоумышленникам возможность запроса смены ключа шифрования, что, в свою очередь, приводило к чтению зашифрованных данных;

  • уязвимость Libssh «CVE-2020-16135», которая не затрагивала каких-либо критических функций, но все равно нарушала безопасность приложений;

  • уязвимость Libssh «CVE-2020-1730», которая затрагивала возможность отказа работы приложения на стороне сервера или клиента в процессе обработки ключей AES-CTR при помощи OpenSSL;

  • уязвимость Libssh «CVE-2019-14889», которая затрагивала комплексную защиту исходного кода приложений, использующих описанную библиотеку; это даже не одна уязвимость, а несколько вероятных, которые были обнаружены благодаря аудиту компании по безопасности Cure53;

  • уязвимость Libssh «CVE-2018-10933», которая позволяла злоумышленникам обходить этап аутентификации в серверных приложениях;

  • и др.

Разработчики библиотеки Libssh очень тесно сотрудничают со своим сообществом, с другими разработчиками и аудиторскими компаниями, поэтому они очень быстро реагируют на все возникающие баги и ошибки, которые обнаруживают пользователи данного инструмента. Это к тому, что в год у библиотеки Libssh выходит по несколько патчей, в которых устраняются десятки, а то и сотни разных ошибок и уязвимостей, которые невозможно перечислить в рамках одной статьи.

Одно видно точно любая, даже самая мелкая уязвимость в Libssh никогда не будет игнорироваться и устранится в ближайшем обновлении библиотеки. Не зря разработчиков этой библиотеки консультируют и поддерживают разработчики компании Mozilla, а самой библиотекой для организации зашифрованного доступа к пользовательским данным пользуются такие компании, как:

  • KDE — разработчики одноименного окружения рабочего стола на многих Linux-дистрибутивах;

  • GitHub — крупное сообщество профессиональных программистов и по совместительству система контроля версий программных проектов, хостинг и многое другое;

  • X2Go — компания-разработчик рабочего стола «Х»;

  • и др.

Заключение

Любая уязвимость в библиотеке Libssh всегда будет устранена вовремя и очень быстро, потому что разработчики этого продукта гордятся им и следят за своей репутацией. Именно поэтому их продуктом пользуются и оказывают ему доверие многие именитые компании. Да, возможно, библиотека Libssh — это не самый лучший и легкий способ для организации SSH в своем приложении, но, по крайней мере, она стремится к этому статусу.

Схожие статьи

Что такое индекс на телефоне, как его узнать, где он находится
Другое

Что такое индекс на телефоне, как его узнать, где он находится

Замена фона без хромакея. Лучшие способы сменить фон бесплатно
Другое

Замена фона без хромакея. Лучшие способы сменить фон бесплатно

Приведение типов в Delphi: преобразование целых чисел в строку и обратно
Другое

Приведение типов в Delphi: преобразование целых чисел в строку и обратно

Что нужно знать, чтобы стать инженером QA: краткое руководство
Другое

Что нужно знать, чтобы стать инженером QA: краткое руководство

×