» »

Hrošč v konfiguraciji X strežnika omogoča odklepanje brez gesla

Hrošč v konfiguraciji X strežnika omogoča odklepanje brez gesla

Slo-Tech - Francoski bloger "Gu1" je prijavil zoprno napako v konfiguraciji X strežnika verzije 1.11 ali več, ki omogoča odklep zaklenjenega zaslona (xscreensaver) s pritiskom na tipke ctrl-alt-* (zvezdica na numeričnem delu tipkovnice), brez poznavanja gesla od trenutnega ali korenskega uporabnika.

Napaka potrjeno deluje na Fedori 16, unstable različici Debiana, Arch Linux, Gentooja oz. praktično na vseh distribucijah, ki uporabljajo sveže paketke. Trenutni (11.10 Oneiric) in prihajajoči (12.04 Precise) Ubuntu sicer ostajata na 1.10, in tudi mi napake nismo uspeli reproducirati na tem sistemu. 1.11 je sicer izšla lani konec avgusta.

Gu1 je še malo povohljal naokoli (kar je zaradi odprtokodne narave programja v celoti mogoče, dovoljeno in celo zaželeno) in našel vzrok. Razvijalci grafičnega strežnika X so dolgo nazaj vanj vgradili funkcijo AllowClosedownGrabs, ki omogoča ubitje programa, ki si je prisvojil tipkovnico in miš -- prikladno, če se tak program med razvojem ali celo normalno uporabo sesuje. Tipični kandidati so prav window oz. desktop managerji, wine igre in podobno, seveda pa zadeva tudi ohranjevalnike zaslona, ki rabijo za uspešen zaklep sistema dobiti ekskluziven dostop vhodnih naprav. V normalnih pogojih je ta opcija že več let izklopljena, a se je v 1.11-ki zaradi drugačne konfiguracije knjižnice xkb vklopila nazaj. Fedora je že objavila popravek, uporabniki ostalih distribucij pa si jo lahko izklopite v xorg.conf, odsek ServerFlags:


$ cat xorg.conf
Section "ServerFlags"
    Option "AllowDeactivateGrabs" "false"
    Option "AllowClosedownGrabs" "false"
EndSection

$ man xorg.conf
Option "AllowDeactivateGrabs" "boolean"
    This option enables the use of the
    Ctrl+Alt+Keypad-Divide key sequence to deactivate any
    active keyboard and mouse grabs. Default: off.

Option "AllowClosedownGrabs" "boolean"
    This option enables the use of the Ctrl+Alt+Keypad-Multiply key
    sequence to kill clients with an active keyboard or mouse grab
    as well as killing any application that may have locked the
    server, normally using the XGrabServer(3x) Xlib function.
    Default: off.
    *Note* that the options AllowDeactivateGrabs and
    AllowClosedownGrabs will allow users to remove the grab used
    by screen saver/locker programs. An API was written to such
    cases. If you enable this option, make sure your screen
    saver/locker is updated.

Option “DontZap” "boolean"
    This disallows the use of the Terminate_Server XKB action (usu‐
    ally on Ctrl+Alt+Backspace, depending on XKB options). This
    action is normally used to terminate the Xorg server. When this
    option is enabled, the action has no effect. Default: off.


Dolgoročna rešitev je seveda popravek za xscreensaver. Avtorji X strežnika so njegove programerje posebej opozorili na varnostne implikacije od AllowClosedownGrabs in jim celo ponudili poseben API, preko katerega lahko ctrl-alt-* preprosto ignorirajo (podobno kot lahko C koda ignorira KILL/TERM/HUP in druge signale). Žal to nikoli ni bilo izvedeno.

Uporabniki, ki imate občasne težave z neodzivnimi X aplikaciji (zlasti wine ali druge celozaslonske igre) boste morda hoteli vklopiti te opcije. Če ne drugega, bo Option "DontZap" "false" omogočil, da ponovno zaženete grafični vmesnik ne glede na vse. Sicer še vedno obstaja možnost prehoda v tekstovni terminal (ctrl-alt-f1) in poboj problematične aplikacije od tam, oz. če še to ne dela, dostop preko ssh-ja. S tem da je treba povedati, da Ubuntu in še nekatere druge distribucije po privzetem več ne vključujejo ssh strežnika.

53 komentarjev

«
1
2

darkolord ::

:))

poweroff ::

Prebral na eni security mailing listi pred vema dnevoma. Pri meni (Ubuntu) ne deluje, je pa hudo sramoten tale bug.

No, ja... uporabno za forenziko je pa le... :))
sudo poweroff

Icematxyz ::

Se zgodi tudi najboljšim.

mtosev ::

kje je zdaj legendarna linux varnost? a je splavala po vodi?:))
Core i9 10900X, ASUS Prime X299 Edition 30, 32GB 4x8 3600Mhz G.skill, CM H500M,
ASUS ROG Strix RTX 2080 Super, Samsung 970 PRO, UltraSharp UP3017, Win 11 Pro,
Enermax Platimax 1700W | moj oče darko 1960-2016, moj labradorec max 2002-2013

terryww ::

to bo še veselje po faxih...
It is the night. My body's weak.
I'm on the run. No time to sleep.

Icematxyz ::

Če že, potem kakšna delovna okolja, kjer se uporablja Linux na namizju z novejšimi programskimi komponentami. "Šole" dvomim, da se jih to kaj dosti tiče, bolj se gre za kakšna podjetja, ki uporabljajo distribucijo, ki se je to pač tiče. Se pravi z vidika uporabnika gre bolj za obdobje po šoli.

LightBit ::

mtosev je izjavil:

kje je zdaj legendarna linux varnost? a je splavala po vodi?:))

V Linux-u. Ne v X serverju, ki upam, da bo kmalu zamenjan z Wayland-om.

Icematxyz ::

No saj z X strežnikom ni nič tako hudo narobe, da bi ga sedaj kar tako dajali v nič, ker se ustvarja toliko pompa okrog ene nastavitve in ker daje takšen rezultat, kot je zanj nastavljen. Wayland prinaša nekatere odgovore na izzive časa in za to so oči uprte vanj, kaj bo uspel ponuditi.

Tako kot Linux uporabniki radi pogledamo z zanimanjem po kakšnem prihajajočem datotečnem sistemu, tako tudi po prihajajočem zaslonskem strežniku, kar pa ne pomeni, da s trenutnim stanjem nismo zadovoljni. Nekateri so verjetno bolj, drugi pa manj, kar je spet normalno.

denial ::

There's little that I can do to make the screen locker secure so long as the kernel and X11 developers are actively working against security.

Jamie Zawinski, XScreenSaver developer
SELECT finger FROM hand WHERE id=3;

Pithlit ::

Icematxyz je izjavil:

No saj z X strežnikom ni nič tako hudo narobe, da bi ga sedaj kar tako dajali v nič, ker se ustvarja toliko pompa okrog ene nastavitve in ker daje takšen rezultat, kot je zanj nastavljen.

Včasih daje takšne rezultate. Meni nikakor ne uspe ponoviti tega 'bug-a'.
Life is as complicated as we make it...

Blisk ::

Icematxyz je izjavil:

Če že, potem kakšna delovna okolja, kjer se uporablja Linux na namizju z novejšimi programskimi komponentami. "Šole" dvomim, da se jih to kaj dosti tiče, bolj se gre za kakšna podjetja, ki uporabljajo distribucijo, ki se je to pač tiče. Se pravi z vidika uporabnika gre bolj za obdobje po šoli.



Koliko resnih uporabnikov, ali celo serverjev, pa ima prižgan GUI in pa ohranjevalnik zaslona?

Pithlit je izjavil:

Icematxyz je izjavil:

No saj z X strežnikom ni nič tako hudo narobe, da bi ga sedaj kar tako dajali v nič, ker se ustvarja toliko pompa okrog ene nastavitve in ker daje takšen rezultat, kot je zanj nastavljen.

Včasih daje takšne rezultate. Meni nikakor ne uspe ponoviti tega 'bug-a'.


Tudi meni ni ratalo ne na ubuntu ne na fedori :)

Zgodovina sprememb…

  • spremenil: Blisk ()

techfreak :) ::

Koliko resnih uporabnikov, ali celo serverjev, pa ima prižgan GUI in pa ohranjevalnik zaslona?

Resni uporabniki ne uporabljajo GUIja?

jype ::

Resni uporabniki nimajo vključenih takšnih parametrov.

Pithlit ::

Ne. Resni uporabniki raje izgubljajo cajt s konzolo. Še posebej pri urejanju slik, videa, glasbe... pa programiranju kakih brezveznih spletnih strani (in drugih grafičnih aplikacij)...*





*da ne bo pomote... treba vklopit sarkazm detektor.

Resni uporabniki točno vedo katera orodja so najboljša za delo ki ga trenutno opravljajo. GUI ali ne...
Life is as complicated as we make it...

Icematxyz ::

Koliko resnih uporabnikov, ali celo serverjev, pa ima prižgan GUI in pa ohranjevalnik zaslona?


Tukaj pravijo, da se ocene začnejo pri nekje 30 milijonov in navzgor.

Včasih daje takšne rezultate. Meni nikakor ne uspe ponoviti tega 'bug-a'.


Ne saj ta nastavitev v praksi na bistveno nižjem številu Linux uporabnikov na namizju odklene zaslon. Pa še tam ko odklene, če se ne motim je večina že pokrpano?

Tudi meni ni ratalo ne na ubuntu ne na fedori :)


Ubuntu ni sploh bil v igri za to zadevo. Drugače pa na Linux imaš izbiro med GUI in terminalom in načeloma bi se bila neumnost kateremu koli odreči in oboje pride prav.

smihael ::

denial je izjavil:

There's little that I can do to make the screen locker secure so long as the kernel and X11 developers are actively working against security.

Jamie Zawinski, XScreenSaver developer

Če malo poscrollaš dol vidiš, da je človek itak z vsemi skregan. Najraj bi enostavno ukinil KDE in GNOME verzijo ohranjevalnikov, drugim razvijalcem celo reče idioti... Sicer pa v članku lepo piše, da se niti ne bi rabil kaj dosti potruditi, da popravi hrošča.

Isotropic ::

GUI smo imeli celo na hpc clusterju, imagine that. zgleda da le nismo dost strokovnjaki...

Mavrik ::

smihael je izjavil:

denial je izjavil:

There's little that I can do to make the screen locker secure so long as the kernel and X11 developers are actively working against security.

Jamie Zawinski, XScreenSaver developer

Če malo poscrollaš dol vidiš, da je človek itak z vsemi skregan. Najraj bi enostavno ukinil KDE in GNOME verzijo ohranjevalnikov, drugim razvijalcem celo reče idioti... Sicer pa v članku lepo piše, da se niti ne bi rabil kaj dosti potruditi, da popravi hrošča.


Pointi na tistem linku so sicer precej resni in dokaj boleči - X ti pač ne more zakleniti računalnika, če obstaja kup načinov kako ga zaobiti in ubiti.
The truth is rarely pure and never simple.

MrStein ::

A sem edini, ki misli, da ni pametno zaupati dve popolnoma različni nalogi istemu kosu softvera?
Torej zabavo (slikice na ekranu) in varnost (kontrola dostopa).
Saj klovn in varnostnik sta tudi dve ločeni osebi.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Mavrik ::

Hmmm... kaj pa je tvoja rešitev (z jemanjem v obzir trenutne arhitekture Linuxa)?
The truth is rarely pure and never simple.

MrStein ::

A ni očitno?
En program za slikice, en drug za zaklepanje.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Mavrik ::

To ni rešitev. To so pobožne želje. Gotovo znaš opisat kako bi moral biti X strežnik spremenjen da bi to zanesljivo delovalo na Linuxu. Ker drugače si kot misica ko si želi mir na svetu.
The truth is rarely pure and never simple.

MrStein ::

En mali program, ki počne le eno stvar versus klump, ki počne N stvari.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Looooooka ::

Kdor sebe da med "resnega" uporabnika je ze dovolj povedal o svoji sposobnosti.
Enako velja za tiste, ki uporabljajo izgovor "linux kernel je varen tko da se tole ne steje...".
Dokler ima vecina priljubljenih distribucij tole zraven in ga vecina ljudi instalira je to pac resen bug.
Zadevo probavat prodat kot karkoli manjsega je..."neresno".

Icematxyz ::

Dokler ima vecina priljubljenih distribucij tole zraven in ga vecina ljudi instalira je to pac resen bug.


Kolikor je meni znano nima (več).

Gotovo znaš opisat kako bi moral biti X strežnik spremenjen da bi to zanesljivo delovalo na Linuxu. Ker drugače si kot misica ko si želi mir na svetu.


V bistvu, ker si prebral vsebino povezave:

Pointi na tistem linku so sicer precej resni in dokaj boleči - X ti pač ne more zakleniti računalnika, če obstaja kup načinov kako ga zaobiti in ubiti.


Pisec tiste vsebine na koncu napiše, kaj bi bila zanj idealna rešitev.

MrStein ::

Icematxyz je izjavil:

Pointi na tistem linku so sicer precej resni in dokaj boleči - X ti pač ne more zakleniti računalnika, če obstaja kup načinov kako ga zaobiti in ubiti.


Pisec tiste vsebine na koncu napiše, kaj bi bila zanj idealna rešitev.

Naj kaj točno misliš (na katerem linku)?
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Icematxyz ::

Icematxyz ::

Če smo že pri razpravah o implementacijah zaklepanja zaslona. Ubuntu OS gre trenutno v smer, kjer bo upravljanje z zaklenjenim zaslonom prevzel Unity Greeter s pomočjo LightDM. In pa seveda ne moremo mimo prihajajočega Wayland zaslonskega strežnika, kjer je že na voljo vzorčna implementacija zaklepanja.

 Wayland Locked

Wayland Locked



Kot na mnogo drugih področjih, tudi na tem področju Wayland nakazuje velik potencial in bo najverjetneje odlična priloga kakšnem prihajajočem datotečnem sistemu.

Pekka Paalanen

MrStein ::

Icematxyz je izjavil:

http://www.jwz.org/xscreensaver/faq.htm...

Na koncu je: I'm just learning to program X, and I want to write an xscreensaver module. Where should I start?

???
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Icematxyz ::

MrStein je izjavil:

Icematxyz je izjavil:

http://www.jwz.org/xscreensaver/faq.htm...

Na koncu je: I'm just learning to program X, and I want to write an xscreensaver module. Where should I start?

???


In an ideal world, there would be a single X11 request named something like XGrabMagicKeys() that would, analagously to XGrabKeyboard(), disable all of these magic keystrokes until the grab was released or the program exited. It should be an X11 call, not an ioctl(), and especially not a root-only ioctl(). Needless to say, no such interface exists.

poweroff ::

denial je izjavil:

There's little that I can do to make the screen locker secure so long as the kernel and X11 developers are actively working against security.

Jamie Zawinski, XScreenSaver developer

:))

No, če še nekako razumem Linusa, da je na začetku bolj pomembno, da stvari sploh delajo, kot da delajo varno (pa se osebno ne strinjam s tem), je sedaj nastopil čas, ko se bo moralo začeti v varnost vlagati bistveno bolj.

MrStein je izjavil:

En mali program, ki počne le eno stvar versus klump, ki počne N stvari.

Pojma nimaš.

Obstaja en mali program, ki počne točno to - zaklene zaslon. Vendar pa lahko kot root ta program ubiješ (če si sshjan na računalnik). That is, exactly, a problem.
sudo poweroff

MrStein ::

Ne ni. Če si root, je konec pogovora.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

poweroff ::

Ja, ampak stvar je v tem, da se da sistem zasnovati tako, da ga ni.
sudo poweroff

MrStein ::

Your point being... ?
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

poweroff ::

Da nimaš pojma.

Da nimaš pojma, ko praviš, da bi moral biti en mali program, ki počne le eno stvar, ne pa klump, ki počne N stvari. Ker ravno to je problem - tak program zaradi napačne zasnove X-serverja ali celo kernela ne more obstajat.
sudo poweroff

MrStein ::

Your point being?

(razen žalitev)
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

gendale ::

z waylandom ne bo nič, dokler ne bo podpore od nvidie in amdja
seznam zanč moderatorjev in razlogov da so zanč
http://pastebin.com/QiWny5dV
gor je mavrik apple uporabniček (mali možgani in mali penis)

poweroff ::

MrStein, če ne razumeš problema, pol ne nabijaj. Ker je žaljivo za našo inteligenco poslušat take trditve, da bi moral program delat eno samo stvar, pa ni problem v programu, pač pa v X serverju oz. kernelu...
sudo poweroff

Pithlit ::

MrStein: avtomobilska analogija - xscreensaver je un knof v avtu za električni pomik šipe. Pritisneš in šipa se lepo zapre. Sam kaj ti to pomaga če lahko nekdo z daljincem odpre vse šipe?

Kaj ti pomaga xscreensaver če ga lahko ubiješ iz konzole, recimo. Ali pa prek ssh. Lepote modularnosti.
Life is as complicated as we make it...

MrStein ::

Mešate dostop oseb, ki že imajo dostop in zunanjih oseb.

Če je nekdo root se nimamo kaj o X-u menit, ker ima 100% dostop. Lahko vse ubije, lahko vse prebere (razen res redkih izjem).

Če je nekdo user, ki je zaklenil, se spet nimamo kaj menit, saj ima geslo, a ne?

Ostane primer tretje osebe. Tam pa sistem pogrne, ker zaklepanje ni urejeno v enem modulu, ampak raztreseno na več klumpov. (kar je med žaljenjem celo Matthai povedal)

Evo, gre brez žalitev.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Zgodovina sprememb…

  • spremenil: MrStein ()

Blisk ::

Še vedno trdim, da noben resni administrator nima prižganega GUI na serverju, pravzaprav tisti profi, ga sploh nimajo nameščenega. Pa lahko malo preverite glede tega po netu. Ko sem se nazadnje pogovarjal z enim profijem, ki je profi za SElinux je bil šokiran, da imam nameščen na mail serverju GUI. Seveda je pri meni ugasnjen, ko ga ne rabim. Sem premalo profi, da bi vse delal brez GUI.

darkolord ::

Well, you are wrong.

Blisk ::

darkolord je izjavil:

Well, you are wrong.


Malo vprašaj resne sistemce, pa potem povej. Lahko greš na IRC in tam imaš razne profije za katerokoli distribucijo že in vsak ti bo povedal isto.

Če pa ti ne obvladaš brez GUI nič, se pač ne moreš razglašati za profija!

Pithlit ::

Resni sistemci uporabljajo telnet... ne pa IRC.

Pa kaj je s tabo? Zate so sam sistemci profiji al kako? A tisti ki se ukvarjajo z obdelavo videa niso profiji? Pa programerji? Pa grafični oblikovalci? Pa muzičarji? Pa... še kar ena rajda poklicov? Dej se mal zresni no.

Pa tud vsak, ampak čisto vsak, sistemc ki da kaj nase in stbari obvlada bo _vedno_ izbral tisto orodje s katerim bo najbolj učinkovito opravil svoje delo. Če je to GUI je pač GUI.

Zdej pa telnet zalaufat pa na IRC z njim... drugač si en tak sissy da niti smešno ni več!
Life is as complicated as we make it...

darkolord ::

Če pa ti ne obvladaš brez GUI nič
Kaj pa če vse obvladam brez GUI, pa ga vseeno uporabljam?

Zgodovina sprememb…

  • spremenilo: darkolord ()

Cold1 ::

O glej, mem o naprednih uporabnikih (kaj naprednih, strokovnih!), ki da uporabljajo CLI, medtem ko je GUI prihranjen zgolj za preproste, neuke plebejce, je bil povlečen iz naftalina.

In kako priročno, ravno v trenutku ko se izkaže, da je GUI na UNIX-ih katastrofa (zasnovno, ne zgolj izvedbeno), se hitro povrnemo na okope iz '80 let ter kričimo da GUI-jev tako ali tako ne potrebujemo (oziroma sploh ne smemo uporabljati).

Ti šment, še dobro da je na voljo ta izgovor.

(Drugače bi se lahko še zgodilo, da bi kdo prišel na idejo, da Linux ni več najvarnejši sistem na svetu, ali še huje, da nikoli ni bil... bog nas obvaruj.)

Blisk ::

Pithlit je izjavil:

Resni sistemci uporabljajo telnet... ne pa IRC.

Pa kaj je s tabo? Zate so sam sistemci profiji al kako? A tisti ki se ukvarjajo z obdelavo videa niso profiji? Pa programerji? Pa grafični oblikovalci? Pa muzičarji? Pa... še kar ena rajda poklicov? Dej se mal zresni no.

Pa tud vsak, ampak čisto vsak, sistemc ki da kaj nase in stbari obvlada bo _vedno_ izbral tisto orodje s katerim bo najbolj učinkovito opravil svoje delo. Če je to GUI je pač GUI.

Zdej pa telnet zalaufat pa na IRC z njim... drugač si en tak sissy da niti smešno ni več!


A ti na mail ali web serverju obdeluješ video in grafiko?

darkolord je izjavil:

Če pa ti ne obvladaš brez GUI nič
Kaj pa če vse obvladam brez GUI, pa ga vseeno uporabljam?


Če obvladaš brez GUI potem obvladaš!

Zgodovina sprememb…

  • spremenil: Blisk ()

Pithlit ::

Blisk je izjavil:

A ti na mail ali web serverju obdeluješ video in grafiko?

Novica govori o odklepanju X strežnika brez gesla. Not a big enough hint?

Pa da vprašamo drugače... a profiji ne uporabljajo X stražnika? Jaz ga. Če so pa zate profiji sam tisti ki upravljajo mail (in web) strežnike si pa zelo, zelo omenjen.
Life is as complicated as we make it...

Icematxyz ::

In kako priročno, ravno v trenutku ko se izkaže, da je GUI na UNIX-ih katastrofa


Niti ne. Tudi vsebina te novice se ne tiče več večine uporabnikov priljubljenih Linux distribucij. Če pa že razmišljamo čez "okope" X.org strežnika pa je tudi prihodnost svetla z vidika kakšne pametne alternative z drugačno zasnovo, ki sledi trenutnim trendom.

In pa drugače preveč se meša za moje pojme v teh razpravah dvoje: namizna uporaba in strežniki.
«
1
2


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

No sound (Wolfenstein...)

Oddelek: Igre
152093 (1929) Slo-One
»

Ati radeon, Xorg in Xv

Oddelek: Operacijski sistemi
101432 (1304) MasterMind
»

Gentoo setup problem

Oddelek: Operacijski sistemi
251745 (1569) G2
»

Linux / ATI Radeon / problem z driverji

Oddelek: Operacijski sistemi
131743 (1560) ahac
»

Vtis Gentoo Linux 1.4

Oddelek: Operacijski sistemi
211377 (1141) Brane2

Več podobnih tem