Ако бъдат използвани, тези пропуски могат да позволят на нападателите да получат неоторизиран достъп до чувствителна информация или като цяло да причинят проблеми
Новината беше публикувана от NetSecurityLab, в която се споменава това са идентифицирали уязвимост (посочен под CVE-2023-4809) в кода на пакетния филтър „pf“ на FreeBSD.
Споменава се, че уязвимостта може да се използва, за да позволи заобикаляне на правилата за блокиране на IPv6 манипулиране на фрагментирани IPv6 пакети. Проблемът възниква при използване на pf за филтриране на IPv6 трафик с "скраб фрагмент сглобете отново» активиран.
PF е разработен като част от базовата система OpenBSD. Въпреки това, той беше успешно пренесен към други системи, като FreeBSD, която постепенно го възприе, първо като пакет, а след това се превърна в една от трите филтриращи подсистеми, предлагани от ядрото.
PF е филтър за пакети, първоначално написан за OpenBSD. PF може да сглоби отново фрагментирани IPv6 пакети, за да приложи правила върху повторно сглобения пакет. Това позволява на pf да филтрира информация за протокола от горния слой (напр. TCP, UDP).
Относно уязвимостта
Споменава се, че уязвимостта се дължи на грешка, която присъства в "атомния" драйвер за парчета, усъвършенстван тип фрагментация, при който само първият и единствен фрагмент образува фрагментирано предаване (пакетът се фрагментира, като се използва само един фрагмент).
IPv6 пакетите в режим на „атомарно“ фрагментиране, които посочват повече от един хедър на разширение на фрагмент, не бяха отхвърлени като невалидни, а бяха обработени като отделни фрагменти. Следователно правилата, предназначени да бъдат приложени към окончателния пакет, сглобен отново от фрагменти, не работят.
Нападателят може да заобиколи PF правилата, като изпрати специално създадени IPv6 пакети които, противно на изискванията на спецификациите, съдържат няколко разширени заглавки с фрагментирани данни.
От страна на оригиналната OpenBSD реализация на PF, се споменава, че това не е засегнат от уязвимост, тъй като през 2013 г., по време на внедряването на атомни фрагменти, беше добавена проверка към кода за анализиране на заглавката в PF, която блокира IPv6 пакети с различни специфични за фрагменти заглавки. Функция, която съдържа необходимата проверка, не е пренесена към FreeBSD, така че внедряването на PF в системата е засегнато.
Нашите тестове показват, че FreeBSD обработва тези атомарни фрагменти чрез възстановяване на оригиналния пакет (благодарение на процеса на отстраняване на грешки), но не прилага никакви правила, които се прилагат към слоеве четири и по-горе (например предпоследното правило в конфигурацията по-горе) pf. По този начин фрагментът отговаря на други правила в конфигурацията на защитната стена и му е разрешено да премине. Освен това процесът на отстраняване на грешки е коригирал пакета, така че сега всяка операционна система зад защитната стена приема пакета.
Проверихме, че можем да установим пълна двупосочна комуникация между нападателя и жертвата зад защитната стена на FreeBSD, както и UDP трафик и ICMPv6 трафик между тях.
От друга страна, и не по-малко важно, си струва да споменем и да се възползваме от мястото, че говорим за уязвимост, че корекцията е направена и в безжичния стек на FreeBSD на уязвимост (CVE-2022-47522), идентифициран през март и известен с кодовото име MacStealer. Тази уязвимост засяга механизма за опашка за буфериране на кадри, преди да ги изпрати до получателите, както и пропуски в управлението на контекста на сигурността за кадри на опашка.
Уязвимостта може да се използва за прихващане на трафика на други потребители, заобикаляйки MAC изолацията на клиента, дори ако на клиентите не е разрешено да комуникират помежду си (например за атакуване на потребители в корпоративни мрежи, където потребителите са отделени един от друг). където протоколите WPA2 и WPA3 се използват в режим на изолация на клиента).
И накрая, заслужава да се спомене, че уязвимостта беше коригирана под формата на корекция в актуализациите на FreeBSD 13.2-p3 и 12.4-p5. Дрямка заинтересовани да научите повече за това, можете да проверите подробностите в следваща връзка.