Проект GNU опубликовал выпуск библиотеки libmicrohttpd 0.9.55, представляющей простой API для встраивания функциональности HTTP-сервера в приложения. Библиотека поддерживает протокол HTTP 1.1, TLS, инкрементальную обработку POST-запросов, basic- и digest-аутентификацию, IPv6, HOUTcast и различные методы мультиплексирования слединений (select, poll, pthread, thread pool). Среди поддерживаемых платформ: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Android, macOS, Win32, Symbian и z/OS. Выпуск примечателен исправлением недоработок, выявленных в результате аудита безопасности кодовой базы, проведённого компанией Least Authority в рамках инициативы Mozilla по аудиту важных открытых проектов. В ходе аудита были выявлены четыре проблемы, одна из которых отнесена к умеренно опасным уязвимостям, две к неопасным и одна помечена как замечание. Из проблем отмечается использование функции форматирования строки sprintf без явного указания размера буфера (например sprintf(buf, "%s", str)), а также функции strcpy, вместо которых следовало применять snprintf и strncpy. Также выявлены проблемы с обращением к файловому дескриптору до его инициализации при сборке в режиме "-Wall" и обработкой заголовков с пробелами, которые должны отбрасываться в соответствии с требованиями RFC 7230. Из не связанных с безопасностью изменений отмечается устранение проблем со сборкой на Linux-системах без поддержки epoll, обеспечение поддержки опции MHD_OPTION_STRICT_FOR_CLIENT и информационной переменной MHD_CONNECTION_INFO_REQUEST_HEADER_SIZE, проведение чистки от устаревшего кода и оптимизация определения закрытия соединения keep-alive.
Источник: http://www.opennet.ru/opennews/art.shtml?num=46612
LinuxForum.Fans
Подведены итоги аудита кода библиотеки GNU libmicrohttpd
Автор: R2-D2
1 сообщений
317 просмотров
Войдите или зарегистрируйтесь, чтобы ответить.