Сотрудниками компании BiLiM Systems обнаружены и устранены ошибки в исходных кодах netfilter (ядро версии 2.6.10) и iptables (модуль libipt_hashlimit).
В официальное ядро версии 2.6.10 была включена поддержка в правилах iptables условий hashlimit, позволяющих задавать пороги соответствия для квартетов (srcaddr, srcport, dstaddr, dstport) подобно тому, как условие limit позволяло задавать пороги для всех адресов сразу. К сожалению, модуль libipt_hashlimit.c (iptables) для работы с этим условием содержит целый ряд ошибок при обработке параметров и эти ошибки просто не позволяют использовать модуль. После обнаружения ошибок был незамедлительно (22 января 2005 года) проинформирован разработчик модуля Harald Welte и открыт Bug Track. В исходный код данного модуля были внесены изменения и корректный файл можно загрузить с сайта, воспользовавшись приведенной ссылкой.
После устранения ошибок в модуле iptables было проведено тщательное тестирование модуля netfilter (ipt_hashlimit.c), обеспечивающего поддержку соответствия hashlimit в ядре Linux. В модуле также были обнаружены две ошибки, которые, к счастью, не оказывают критического воздействия на работу системы и не снижают уровня безопасности, однако существенно затрудняют использование соответствия hashlimit. По результатам проверки 26 января также были направлены сообщения разработчикам и открыт Bug Track.
Обнаруженные ошибки были исправлены и скорректированный файл ipt_hashlimit.c доступен по приведенной ссылке.
Дата обновления 02.02.2005
[an error occurred while processing this directive] [an error occurred while processing this directive]