SUSE waxay soo jeedinayaan in la joojiyo isticmaalka utmp si wax looga qabto arrinta Y2038 ee Glibc

Y2038

Dhibaatada sanadka 2038 waxay sababi kartaa qayb ka mid ah software-ka inay fashilmaan sanadkaas. Dhibaatadu waxay saamaysaa barnaamijyada isticmaala POSIX-ku-salaysan matalaadda wakhtiga.

Thorsten Kukuk, hogaamiye kooxeed ka SUSE Technology Future (Kooxda Farsamada Mustaqbalka, waxay horumarisaa openSUSE MicroOS iyo SLE Micr), kuwaas oo horey u hogaaminayay mashruuca SUSE LINUX Enterprise Server 10 sano, soo jeediyay in laga takhaluso /var/run/utmp faylka qaybinta in si buuxda wax looga qabto arrinta Y2038 ee Glibc.

Iyadoo taas leh waxaa la soo jeediyay in la dhaqaajiyo dhammaan codsiyada adeegsada utmp, wtmp iyo lastlog si aad u hesho liiska isticmaalayaasha isticmaalaya systemd-logind.

Janaayo 19, 2038, saacaduhu way buux dhaafi doonaan muddo cayiman nooca 32-bit time_t. Gudaha Glibc, in kasta oo la soo bandhigay nooca 64-bit time_t, si loo ilaaliyo la jaanqaadka codsiyada 32-bit userspace, nooca 32-bit time_t ayaa wali lagu isticmaalaa xaaladaha qaarkood ee goobaha 64-bit.

Waxaa jira laba dhibaato oo waaweyn oo utmp/tmpx leh glibc tusaale ahaan x86-64:

Aag 32-bit time_t ah ayaa loo isticmaalaa wakhtiga, kaas oo buux dhaafi doona 2038
Waxaa jira arrimo qaabeyn u oggolaanaya weerarka DoS ( utmp/wtmp xannibista waxay u oggolaaneysaa isticmaale aan mudnaanta lahayn inuu diido adeegga)
Falanqaynta dhibaatada labaad ee horumariyeyaasha glibc waxay muujisay in daemon dheeraad ah loo baahan doono si loo maareeyo gelitaanka utmp/tmpx.

Inkastoo ay jiraan dhibaatooyin kale oo...

Mid ka mid ah kiisaska noocaas ah waa faylka /var/run/utmp, kaas oo kaydiya xogta ku saabsan isticmaalayaasha hadda ku xiran nidaamka. Goobta wakhtiga ee utmp waxa lagu dejiyay iyadoo la isticmaalayo qiime 32-bit time_t ah.

Waxaa lagu xusay in. Si fudud u beddelka beerta utmp waqti ka dib nooca 32-bit oo loo beddelo nooca 64-bit ma shaqeyn doono, maadaama tani ay bedeli doonto Glibc ABI (noocku wuxuu bedeli doonaa shaqooyinka sida login(), getutid() iyo utmpname()) oo jebiya waafaqsanaanta codsiyada adeegsada utmp, oo ay ku jiraan w, who, uptime, login, su, sudo, useradd , systemd, sysvinit, tcsh, maamulayaasha bandhiga xterm, emacs, openssh, qemu, samba, rsyslog, iwm.

Dabo-xumada iyo hawl-karnimada oo badan awgeed. horumariyayaashii Glibc wuu diiday fikradda ah in la beddelo inta yar ee wakhtiga_t nooca utmp. Isla sababtaas awgeed, ikhtiyaarka ah in la isticmaalo booska bannaan ee qaab dhismeedka utmp si loogu daro waqti dheeri ah oo 64-bit ah ayaa meesha laga saaray.

Sidoo kale, beddelka qoto dheer ee nooca utmp ma xalliyo dhibaatooyinka kale ee jira, tusaale ahaan, u qorista utmp waxay u baahan tahay ogolaansho gaar ah, taas oo u baahan habraac si loo siiyo mudnaanta dheeraadka ah. Dhibaato kale ayaa ah in naqshadeynta utmp ay u ogolaato isticmaalayaasha maxalliga ah inay sameeyaan weerarrada DoS ee jebiya adeegga utmp iyagoo isticmaalaya qufulka faylka, taasoo ka dhigaysa mid aan suurtagal ahayn in la hubiyo in nuxurka utmp uu ka tarjumayo xaaladda dhabta ah ee nidaamka.

Waxaa la soo jeediyay in la isticmaalo habraac asal oo dheeri ah si loo maareeyo gelitaanka utmp, laakiin hawlaha noocan oo kale ah waxaa horeyba u jiray hab-socod-logind lagumana talinayo in la bilaabo hannaan kale oo khaas ah (codsiyada waxay yeelan doonaan inay u gudbiyaan xogta laba koontaroolayaal isku mar).

Isla mar ahaantaana, xitaa iyada oo la xallinayo dhibaatada weerarrada DoS, nuxurka utmp ayaa weli ah mid wargelin ah, iyada oo aan dammaanad qaadin muujinta dhabta ah.

Tusaale ahaan, kombuyuutarrada kala duwan ee terminal iyo multiplexers waxay si kala duwan uga tarjumayaan gobolkooda: socodsiinta shan terminal GNOME waxay keeni doontaa in hal isticmaale lagu muujiyo utmp, halka socodsiinta shan konsole ama xterm terminal ee KDE waxay dhalin doontaa lix. Sidoo kale, habdhaqanka shaashadda iyo tmux way ku kala duwan yihiin, kiiska ugu horreeya fadhi kasta waxaa lagu tiriyaa isticmaale gooni ah iyo kan labaad oo keliya hal isticmaale ayaa ka muuqda dhammaan fadhiyada.

Natiijo ahaan, sida xalka ugu fudud, waxaa la soo jeediyay in la soo dejiyo dhammaan codsiyada si ay u isticmaalaan adeegga systemd-logind Beddelka hore u jiray iyo, ka dib markii aysan jirin barnaamijyo dhab ah oo galaya utmp, jooji qoraalka utmp. Si loo beddelo wtmp, waxaa la soo jeediyay in loo diyaariyo API-yada qorista iyo akhrinta macluumaadka ku saabsan isticmaalayaasha isticmaalaya systemd-journald.

Ugu dambeyntii, waxaa xusid mudan in saldhigga code ee nooca xiga ee systemd 254 mar hore waxaa ku jira hawlaha lagama maarmaanka ah si loo bixiyo bedelka xogta utmp iyada oo la adeegsanayo libsystemd iyadoo la adeegsanayo sd-login.ho API iyada oo loo sii marayo DBUS.

Haddii aad xiisaynayso inaad wax badan ka ogaato, waxaad kala tashan kartaa faahfaahinta Xiriirka soo socda.


Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Ka mas'uul ah xogta: AB Internet Networks 2008 SL
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.