Glibc pẹlu atunṣe fun ailagbara memcpy ti a pese sile nipasẹ awọn olupilẹṣẹ Aurora OS

Awọn olupilẹṣẹ ti ẹrọ ẹrọ alagbeka Aurora (orita ti Sailfish OS ti o dagbasoke nipasẹ ile-iṣẹ Open Mobile Platform) pin itan ti o ṣafihan nipa imukuro lominu ni palara (CVE-2020-6096) ni Glibc, eyiti o han nikan lori pẹpẹ ARMv7. Alaye nipa ailagbara ti ṣafihan pada ni Oṣu Karun, ṣugbọn titi di awọn ọjọ aipẹ, awọn atunṣe ko si, botilẹjẹpe awọn ailagbara naa sọtọ ipele giga ti ewu ati pe o jẹ apẹẹrẹ iṣẹ ti ilokulo ti o fun ọ laaye lati ṣeto ipaniyan koodu nigba ṣiṣe akoonu data ni ọna kan ninu awọn iṣẹ memcpy () ati memmove (). Package atunse fun Debian и Ubuntu ko tii tii tu silẹ ati pe ailagbara naa wa ni aibikita fun o fẹrẹ to oṣu meji lati akoko ifihan gbangba ati oṣu marun lati akoko ti a ti fi leti awọn olupilẹṣẹ Glibc.

Ailagbara naa ṣafihan ararẹ ni imuse ti memcpy () ati memmove () ni ede apejọ fun ARMv7 ati pe o ṣẹlẹ nipasẹ sisẹ aṣiṣe ti awọn iye odi ti paramita ti o pinnu iwọn agbegbe ti a daakọ. Awọn iṣoro pẹlu idagbasoke alemo bẹrẹ nigbati awọn ile-iṣẹ suse и Red Hat kede pe awọn iru ẹrọ wọn ko ni ipa nipasẹ iṣoro naa, nitori wọn ko kọ fun awọn eto 32-bit ARMv7, ati pe ko kopa ninu ṣiṣẹda atunṣe kan. Awọn olupilẹṣẹ ti ọpọlọpọ awọn ipinpinpin ifibọ dabi ẹni pe wọn ti gbarale ẹgbẹ Glibc, ati pe wọn ko ni ipa ni itara ni mimuradi atunṣe naa.

Aṣayan alemo Lati dènà iṣoro naa, Huawei fẹrẹ dabaa lẹsẹkẹsẹ pe o gbiyanju lati rọpo awọn ilana apejọ ti n ṣiṣẹ pẹlu awọn operands ti a fowo si (bge ati blt) pẹlu awọn analogues ti ko fowo si (blo ati bhs). Awọn olutọju Glibc ṣe agbekalẹ eto awọn idanwo lati ṣayẹwo ọpọlọpọ awọn ipo aṣiṣe, lẹhin eyi o wa ni pe patch Huawei ko dara ati pe ko ṣe ilana gbogbo awọn akojọpọ ṣee ṣe ti data igbewọle.

Niwọn igba ti Aurora OS ni itumọ 32-bit fun ARM, awọn olupilẹṣẹ rẹ pinnu lati pa ailagbara naa funrararẹ ati funni ni ojutu kan si agbegbe. Iṣoro naa ni pe o jẹ dandan lati kọ imuse ede apejọ ti o munadoko ti iṣẹ naa ati ṣe akiyesi ọpọlọpọ awọn aṣayan fun awọn ariyanjiyan titẹ sii. Awọn imuse naa ti tun kọ nipa lilo awọn ilana ti a ko fowo si. Patch O wa ni kekere, ṣugbọn iṣoro akọkọ ni mimu iyara ipaniyan ati yago fun ibajẹ iṣẹ ṣiṣe ti memcpy ati awọn iṣẹ memmove, lakoko mimu ibamu pẹlu gbogbo awọn akojọpọ ti awọn iye titẹ sii.

Ni ibẹrẹ Oṣu Keje, awọn ẹya meji ti atunṣe ti pese sile, ti o kọja ilana idanwo ti awọn olutọju Glibc ati suite idanwo inu ti Aurora. Ni Oṣu Karun ọjọ 3, ọkan ninu awọn aṣayan ti yan ati rán si akojọ ifiweranṣẹ Glibc. A ose nigbamii
daba alemo miiran ti o jọra ni ọna, eyiti o ṣe atunṣe iṣoro kan ninu imuse multiarch, eyiti Huawei ti gbiyanju tẹlẹ lati ṣatunṣe. Idanwo gba osu kan ati ìforúkọsílẹ ofin nitori pataki ti patch.
July 8 awọn atunṣe won gba si ẹka akọkọ ti itusilẹ glibc 2.32 ti n bọ. Imuse pẹlu awọn abulẹ meji - akoko fun multiarch imuse ti memcpy fun ARMv7, ati keji fun imuse ede apejọ gbogbogbo ti memcpy () ati memmove () fun ARM.

Iṣoro naa ni ipa lori awọn miliọnu awọn ẹrọ ARMv7 ti nṣiṣẹ Linux, ati laisi imudojuiwọn ti o yẹ, awọn oniwun wa ninu eewu nigbati wọn ba so wọn pọ si nẹtiwọọki (awọn iṣẹ nẹtiwọọki-wiwọle ati awọn ohun elo ti o gba data titẹ sii laisi awọn ihamọ iwọn le kọlu). Fun apẹẹrẹ, ilokulo ti a pese sile nipasẹ awọn oniwadi ti o ṣe idanimọ ailagbara fihan bi o ṣe le kọlu olupin HTTP ti a ṣe sinu eto alaye ọkọ ayọkẹlẹ kan nipa fifiranṣẹ ibeere GET ti o tobi pupọ ati gba iwọle gbongbo si eto naa.

orisun: opennet.ru

Fi ọrọìwòye kun