[workaround gefunden] root darf auf meinen X-Server zugreife

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
smutbert
Beiträge: 8363
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

[workaround gefunden] root darf auf meinen X-Server zugreife

Beitrag von smutbert » 04.09.2015 16:09:28

Hallo,

dieser Thread, "gksu und Anpassung von /etc/pam.d/su" hat mich wieder auf etwas aufmerksam gemacht, was ich schon seit einiger Zeit wissen wollte:

In Debian war es bei mir vor jessie eigentlich immer notwendig mit xhost den Zugriff zu erlauben bevor ich ein X-Programm als root ausführen konnte. Wobei das jetzt nichts mit jessie an sich zu tun haben muss sondern möglicherweise auch nur daran liegt, dass ich jetzt wieder meistens gdm und Gnome verwende davor die meisten Zeit slim/lightdm oder keinen Displaymanager und irgendeinen anderen Windowmanager oder eine anderen Desktopumgebung (aber das werde ich noch ausprobieren)

Kennt ihr eine ("debiangerechte") Art das mit gdm und gnome wieder so einzurichten, dass nur der lokal angemeldete Benutzer auf X zugreifen kann und niemand anderer?

lg smutbert
Zuletzt geändert von smutbert am 06.09.2015 00:27:11, insgesamt 1-mal geändert.

dufty2
Beiträge: 1714
Registriert: 22.12.2013 16:41:16

Re: root darf auf meinen X-Server zugreifen

Beitrag von dufty2 » 04.09.2015 18:15:55

Vermute kommt von systemd, genauer

Code: Alles auswählen

$ cat /etc/X11/xinit/xinitrc.d/50-systemd-user.sh
#!/bin/sh

systemctl --user import-environment DISPLAY XAUTHORITY

Benutzeravatar
The Hit-Man
Beiträge: 2253
Registriert: 21.11.2004 17:01:56
Wohnort: Menden ( Sauerland )
Kontaktdaten:

Re: root darf auf meinen X-Server zugreifen

Beitrag von The Hit-Man » 04.09.2015 18:19:12

Ist das denn nicht egal? Denn root darf doch eh alles auch wenn du als user erst xhost eingeben müstest, kann root das doch eh umgehen. Von daher?
Wer HTML postet oder gepostetes HTML quotet oder sich gepostetes oder
gequotetes HTML beschafft, um es in Verkehr zu bringen, wird geplonkt.

damals windows, früher ubuntu, danach debian, heute arch-linux ;)

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: root darf auf meinen X-Server zugreifen

Beitrag von rendegast » 04.09.2015 18:30:27

Eigentlich doch sowas

Code: Alles auswählen

xhost
xhost -
xhost - ....

Aber richtig, habe mich auch schon immer gefragt,
wo so ein 'xhost +[local]' eigentlich abgelegt wird,
da ich das nie zweimal eingeben mußte (auch nach Neustart nicht).
Und in einem xterm bekommt root auch nicht mehr die Nachricht
"Nicht erlaubt".
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
smutbert
Beiträge: 8363
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: root darf auf meinen X-Server zugreifen

Beitrag von smutbert » 04.09.2015 19:53:36

Das wird gespeichert - bist du sicher? Zumindest auf meinem Notebook ohne Displaymanager merkt sich das System da gar nichts.

@dufty2
Diese Datei gibt es auf meinem jessie gar nicht und ich finde auch auf Anhieb keine ähnliche/vergleichbare.
The Hit-Man hat geschrieben:Ist das denn nicht egal? Denn root darf doch eh alles auch wenn du als user erst xhost eingeben müstest, kann root das doch eh umgehen. Von daher?
Umgehen kann er es bestimmt, aber mir geht es um einen weiteren Aspekt:
Ich möchte nicht irrtümlich grafische Programme als root starten können. Die Folgen sind oft nur harmlos, aber zumindest lästig, wie zB wenn root dann Dateien unter dem /var/run/…-Verzeichnisses des Benutzers anlegt und so diesem zB den Weg zu einem funktionierenden Pulseaudio verbaut (wie hier geschehen).

dufty2
Beiträge: 1714
Registriert: 22.12.2013 16:41:16

Re: root darf auf meinen X-Server zugreifen

Beitrag von dufty2 » 04.09.2015 21:28:29

smutbert hat geschrieben: @dufty2
Diese Datei gibt es auf meinem jessie gar nicht und ich finde auch auf Anhieb keine ähnliche/vergleichbare.
Mea culpa, das ist das systemd aus stretch/testing, das enthält jene Datei.

Benutzeravatar
smutbert
Beiträge: 8363
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: root darf auf meinen X-Server zugreifen

Beitrag von smutbert » 05.09.2015 11:41:03

Trotzdem danke, ist ja gut zu wissen, wo man in Zukunft vielleicht suchen muss... bei mir unter jessie scheint jedenfalls gdm schuld zu sein. Ich habe nämlich ein paar Kombinationen ausprobiert:

Mate oder Gnome, egal ob ohne Displaymanager oder mit lightdm:

Code: Alles auswählen

$ xhost 
access control enabled, only authorized clients can connect
SI:localuser:smutbert
Mate oder Gnome mit gdm:

Code: Alles auswählen

$ xhost 
access control enabled, only authorized clients can connect
SI:localuser:smutbert
SI:localuser:Debian-gdm
SI:localuser:root
Debian-gdm ist nehme ich an notwendig, weil die Bildschirmsperre von gdm kommt?
Ich habe aber bis jetzt kein Skript und keine Konfigurationsdatei in gdm gefunden, wo das festgelegt wird.

@Rendegast
In keiner der von mit gestesteten Konstellationen wurde das, was ich mit xhost angestellt habe, über einen Neustart hinweg gespeichert. Nur An-/Abmelden habe ich gar nicht getestet, aber selbst da würde ich erwarten, dass die Änderungen futsch sind.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: root darf auf meinen X-Server zugreifen

Beitrag von rendegast » 05.09.2015 13:18:11

Da kommt noch was her
/etc/X11/Xsession.d/35x11-common_xhost-local (Debianx11-common)

Code: Alles auswählen

if type xhost >/dev/null 2>&1; then
  xhost +si:localuser:$(id -un) || :
fi
und nach manpage in eventuellen /etc/X#.hosts.

SI:localuser:Debian-gdm
SI:localuser:root
sollte nach der NEWS aus gdm3(jessie) nicht mehr da sein(?)
===============
Version 2.30.1
===============
...
- Drop xhost localuser:gdm and localuser:root when the user session starts.
Fixes bug #605350.
(Bug Debian Bugreport605350 beschäftigt sich aber gar nicht mit xhost
EDIT Ups, gemeint ist https://bugzilla.gnome.org/show_bug.cgi?id=605350)
Durch debian wieder hineingepatcht,
oder (hier) eine aus früheren gdm-Versionen verbliebene Session-Datei?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
smutbert
Beiträge: 8363
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: root darf auf meinen X-Server zugreifen

Beitrag von smutbert » 05.09.2015 17:27:48

===============
Version 2.30.1
===============
ist ja schon ein Zeiterl her, wurde gdm danach nicht schon einmal komplett neu geschrieben und aufgeräumt. Ich habe da auch noch in Erinnerung, dass gdm die umask auf einen fixen Wert gesetzt hat und einige weitere Ungereimtheiten, die seit gdm3 (?) weg sind.

Und meinst du eine beim Paketbauen übriggebliebene Datei oder eine auf meinem System übriggebliebene?
Zweiteres kanns eigentlich nicht sein, weil mir das hier auf einer nigelnagelneuen Installation (wieder) aufgefallen ist.

___

/etc/X11/Xsession.d/35x11-common_xhost-local ist jedenfalls nicht die Ursache (bin mir nicht sicher was du gemeint hast), dieses Skript wird ja bereits vom Benutzer ausgeführt, dh durch Deaktivieren wird man nur die einzige Zeile los, die mich überhaupt nicht stört

Code: Alles auswählen

$ xhost 
access control enabled, only authorized clients can connect
SI:localuser:Debian-gdm
SI:localuser:root
aber ich habe diese Datei jetzt für einen Workaround genutzt.
/etc/X11/Xsession.d/35x11-common_xhost-local

Code: Alles auswählen

# This file is sourced by Xsession(5), not executed.

# If xhost (from x11-xserver-utils) is installed, use it to give access 
# to the X server to any process from the same user on the local host.
# Unlike other uses of xhost, this is safe since the kernel can check 
# the actual owner of the calling process.

if type xhost >/dev/null 2>&1; then
  xhost +si:localuser:$(id -un) || :
  xhost -si:localuser:Debian-gdm || :
  xhost -si:localuser:root || :
fi
vielleicht schreib ich es noch stattdessen in eine andere neuangelegte Datei, damit es bei einem Update nicht verlorengeht...

wieder einmal ein herzliches Dankeschön :THX:

Antworten