OpenWrt 19.07.1 жаңартуы пакетті бұрмалау осалдығын жоюмен

OpenWrt таратуының түзететін шығарылымдары жарияланды 18.06.7 и 19.07.1, онда ол жойылады қауіпті осалдық (CVE-2020-7982) бума менеджерінде опкг, ол MITM шабуылын жасауға және репозиторийден жүктелген пакеттің мазмұнын ауыстыруға мүмкіндік береді. Бақылау сомасын тексеру кодындағы қатеге байланысты шабуылдаушы сандық қол қойылған пакеттік индексте бар SHA-256 бақылау сомасы еленбейтін жағдайлар жасай алады, бұл жүктелген ipk ресурстарының тұтастығын тексеру механизмдерін айналып өтуге мүмкіндік береді.

Мәселе 2017 жылдың ақпанынан кейін пайда болды толықтырулар бақылау сомасының алдындағы бос орындарды елемеу үшін код. Бос орындарды өткізіп жіберу кезіндегі қатеге байланысты, жолдағы орынға көрсеткіш жылжытылмады және SHA-256 он алтылық ретті декодтау циклі басқаруды дереу қайтарып, нөлдік ұзындықтың бақылау сомасын қайтарды.

OpenWrt ішіндегі opkg пакетінің менеджері түбірлік құқықтармен іске қосылғандықтан, MITM шабуылы болған жағдайда, пайдаланушы «opkg install» пәрменін орындап жатқанда, шабуылдаушы репозиторийден жүктелген ipk бумасына тыныш өзгерістер енгізе алады және орнату кезінде шақырылатын пакетке өзіңіздің өңдеуші сценарийлеріңізді қосу арқылы оның түбірлік құқықтарымен кодының орындалуы. Осалдықты пайдалану үшін шабуылдаушы дұрыс және қол қойылған пакет индексін ауыстыруды да ұйымдастыруы керек (мысалы, downloads.openwrt.org сайтынан берілген). Өзгертілген буманың өлшемі индексте анықталған бастапқы өлшемге сәйкес келуі керек.

Толық микробағдарламаны жаңартпау қажет болған жағдайда, келесі пәрмендерді орындау арқылы тек opkg пакет менеджерін жаңартуға болады:

cd / tmp
opkg жаңартуы
opkg жүктеп алу opkg
zcat ./opkg-lists/openwrt_base | grep -A10 "Пакет: opkg" | grep SHA256sum
sha256sum ./opkg_2020-01-25-c09fe209-1_*.ipk

Содан кейін көрсетілген бақылау сомасын салыстырыңыз және олар сәйкес келсе, орындаңыз:

opkg install ./opkg_2020-01-25-c09fe209-1_*.ipk

Жаңа нұсқалар тағы біреуін жояды осалдық кітапханада либубокс, бұл функцияда өңделген кезде буфердің толып кетуіне әкелуі мүмкін blobmsg_format_json арнайы пішімделген серияланған екілік немесе JSON деректері. Кітапхана netifd, procd, ubus, rpcd және uhttpd сияқты тарату компоненттерінде, сондай-ақ пакетте қолданылады. аук (sysUpgrade CLI бағдарламасына қатысты). Буфердің толып кетуі «қос» түрдегі үлкен сандық атрибуттар блоб блоктарында жіберілген кезде орын алады. Жүйенің осалдықтарға қатысты осалдығын пәрменді орындау арқылы тексеруге болады:

$ubus қоңырауы luci getFeatures\
‘{ “баник”: 00192200197600198000198100200400.1922 }’

Осалдықтарды жою және жинақталған қателерді түзетумен қатар, OpenWrt 19.07.1 шығарылымы Linux ядросының нұсқасын да жаңартты (4.14.162-ден 4.14.167-ге дейін), 5 ГГц жиіліктерін пайдалану кезінде өнімділік мәселелерін шешті және Ubiquiti Rocket M-ге қолдауды жақсартты. Titanium, Netgear WN2500RP v1 құрылғылары,
Zyxel NSA325, Netgear WNR3500 V2, Archer C6 v2, Ubiquiti EdgeRouter-X, Archer C20 v4, Archer C50 v4 Archer MR200, TL-WA801ND v5, HiWiFi HC5962, Xiaomi Mi Router 3 Pro және Netgear.

Ақпарат көзі: opennet.ru

пікір қалдыру