Vilnerabilite nan swhkd, yon manadjè chemen kout pou Wayland

Yon seri vilnerabilite yo te idantifye nan swhkd (Simple Wayland HotKey Daemon) ki te koze pa travay kòrèk ak dosye tanporè, paramèt liy lòd ak sipò Unix. Pwogram nan ekri nan Rust epi li okipe peze sou kle nan anviwònman ki baze sou pwotokòl Wayland (yon analòg konfigirasyon-fichye konpatib nan pwosesis sxhkd yo itilize nan anviwònman ki baze sou X11).

Pake a gen ladan yon pwosesis swhks san privilèj ki fè aksyon hotkey, ak yon pwosesis swhkd background ki kouri kòm rasin epi ki reyaji ak aparèy opinyon nan nivo API uinput. Yo itilize yon priz Unix pou òganize entèraksyon ant swhks ak swhkd. Sèvi ak règ Polkit, nenpòt itilizatè lokal ka kouri pwosesis /usr/bin/swhkd kòm rasin epi pase paramèt abitrè ba li.

Idantifye vilnerabilite:

  • CVE-2022-27815 – Sove yon PID pwosesis nan yon fichye ki gen yon non previzib ak nan yon anyè ke lòt itilizatè yo kapab ekri (/tmp/swhkd.pid). Nenpòt itilizatè ka kreye yon fichye /tmp/swhkd.pid epi mete pid nan yon pwosesis ki egziste deja ladan l, ki pral fè swhkd pa kapab kòmanse. Si pa gen okenn pwoteksyon kont kreye lyen senbolik nan /tmp, vilnerabilite a ka itilize pou kreye oswa ranplase fichye nan nenpòt anyè sistèm (PID la ekri nan dosye a) oswa detèmine sa ki nan nenpòt ki dosye sou sistèm nan (swhkd enprime a. tout sa ki nan dosye PID a nan stdout). Li enpòtan pou remake ke nan ranje a lage yo te deplase dosye a PID pa nan anyè /run a, men nan anyè a /etc (/etc/swhkd/runtime/swhkd_{uid}.pid), kote li tou pa fè pati.
  • CVE-2022-27814 - Lè w manipile opsyon liy kòmand "-c" yo itilize pou presize yon fichye konfigirasyon, li posib pou detèmine egzistans nenpòt fichye sou sistèm nan. Pa egzanp, pou tcheke /root/.somefile ou ka kouri "pkexec /usr/bin/swhkd -d -c /root/.somefile" epi si fichye a manke, erè a "/root/.somefile pa egziste. ” ap parèt. Kòm nan ka a nan premye vilnerabilite a, fikse pwoblèm nan se konfiansye - fikse pwoblèm nan klou desann nan lefèt ke sèvis piblik ekstèn "chat" ('Command::new ("/bin/cat")).arg (chemen) se kounye a lanse pou li fichye konfigirasyon an. output()').
  • CVE-2022-27819 - Pwoblèm nan gen rapò tou ak itilizasyon opsyon "-c", ki lakòz tout fichye konfigirasyon an chaje ak analize san yo pa tcheke gwosè ak kalite fichye a. Pa egzanp, pou lakòz yon refi sèvis lè w pèdi memwa gratis epi kreye I/O fo, ou ka presize yon aparèy blòk nan demaraj ("pkexec /usr/bin/swhkd -d -c /dev/sda") oswa yon aparèy karaktè ki pwodui yon kouran enfini nan done. Pwoblèm nan te rezoud pa reset privilèj yo anvan ouvèti fichye a, men ranje a pa te konplè, paske se sèlman ID itilizatè a (UID) ki reset, men ID gwoup la (GID) rete menm jan an.
  • CVE-2022-27818 – Yo kreye yon priz Unix lè l sèvi avèk fichye /tmp/swhkd.sock ki te kreye nan yon anyè ekri, ki mennen nan pwoblèm ki sanble ak premye vilnerabilite (nenpòt itilizatè ka kreye /tmp/swhkd.sock epi jenere oswa entèsepte). evènman kle).
  • CVE-2022-27817 - Yo aksepte evènman antre nan tout aparèy ak nan tout sesyon yo, i.e. yon itilizatè ki soti nan yon lòt sesyon Wayland oswa ki soti nan konsole a ka entèsepte evènman yo lè lòt itilizatè yo peze sou kle yo.
  • CVE-2022-27816 Pwosesis swhks la, tankou swhkd, sèvi ak fichye PID /tmp/swhks.pid nan anyè /tmp ki kapab ekri. Pwoblèm nan sanble ak vilnerabilite nan premye, men li pa osi danjere paske swhks ap kouri anba yon itilizatè san privilèj.

Sous: opennet.ru

Add nouvo kòmantè