View previous topic :: View next topic |
Author |
Message |
sirro Veteran


Joined: 20 Jul 2003 Posts: 1472 Location: aachen.nrw.de.eu
|
Posted: Mon Dec 17, 2007 1:22 pm Post subject: |
|
|
Quote: | Quote: | Wenn man Zugriff auf ein Benutzerkonto hat, dass sich Admin-Rechte beschaffen kann, dann gibt es doch sicher reichlich Möglichkeiten das auch ohne xhost auszunutzen, oder? |
Schwierig. Da braucht man dann zumindest einen zweiten Expoit, der einem die Rechte erhöhen kann. Also einen Exploit für den Kernel oder ein suid-Programm. Davon gibt es nicht allzu viele. |
Wieso schwierig? Wenn der Nutzer sich Adminrecht beschaffen kann, dann muss er ja "nur" solange warten bis der User sich diese Recht auch beschafft und schon kann er die entsprechenden Daten abgreifen.
Wenn er das nicht kann dann beschraenkt es sich natuerlich auf einen zusaetzlichen Exploit.
Quote: | Jein: Der mit sudox/sux explizit dazu autorisierte Benutzer kann auf den X-Server zugreifen. |
Und damit hat der vollen Zugriff. Habe ich also keine unpriv. Benutzer (sondern nur einen normalen) dann ist das IMHO Jacke wie Hose wie ich dem Zugriff gebe. Zugriff hat er am Ende immer.
Dein Scenario mit einem unpriv. User ist natuerlich etwas anderes. Da hast du ja im Prinzip ein Mehrbenutzersystem indem die Benutzer zwar alle von die genutzt werden, aber unterschiedliche Vertrauensstufen haben.
Insofern nehme ich allerdings meine generelle Empfehlung für xhost zurück, aber werde es trotzdem noch benutzen, da es bei mir keine zusätzliche Unsicherheit bringt. |
|
Back to top |
|
 |
mv Watchman


Joined: 20 Apr 2005 Posts: 6780
|
Posted: Mon Dec 17, 2007 1:26 pm Post subject: |
|
|
alex00 wrote: | Möchte ein Programm so starten, dass es als root läuft, möchte aber nicht jedesmal das root-passwort eingeben müssen. |
Wie erwähnt: Aus Sicherheitsgründen sollte das nur ein Programm sein, mit dem man nicht viel Schaden anrichten kann.
Dann schreibst Du Dir ein Skript: Code: | #! /bin/sh
export DISPLAY=":0.0"
export XAUTHORITY="$HOME/.Xauthority"
gewuenschtes_programm gewuenschte_parameter |
(wenn dem Skript Parameter übergeben werden sollen, die es an das Programm weiterreichen soll, müssen diese ggf. natürlich erst sehr vorsichtig auf Konsistenz und Sicherheit überprüft werden). Dann gibst Du dieses Skript explizit für den Benutzer (ggf. noch mit NOPASSWD, so dass Du nie nach dem Passwort gefragt wirst) in der /etc/sudoers frei. Da kannst Du es einfach mit sudo starten.
In dem Skript bin ich jetzt davon ausgegangen, dass $HOME nicht verändert wird - das hängt von Deiner sudo-Konfiguration ab. Alternativ kannst Du auch z.B. DISPLAY und XAUTHORITY als User setzen (etwa in ~/.bashrc o.ä.) und dann /etc/sudoers so konfigurieren, dass diese Variablen bei dem gewünschten Kommando von sudo beibehalten werden (IIRC mit keep_env+="DISPLAY XAUTHORITY"). In dem Fall brauchst Du gar kein Script... |
|
Back to top |
|
 |
mv Watchman


Joined: 20 Apr 2005 Posts: 6780
|
Posted: Mon Dec 17, 2007 1:53 pm Post subject: |
|
|
sirro wrote: | Wieso schwierig? Wenn der Nutzer sich Adminrecht beschaffen kann, dann muss er ja "nur" solange warten bis der User sich diese Recht auch beschafft |
Da kann er bei einem vernünftig adminstrierten System warten, bis er schwarz wird.
Normalerweise sollte sich der Nutzer nur Adminrechte für bestimmte wohldefinierte (ungefährliche) Aufgaben (wie etwa zum Abschießen von Druckjobs o.ä.) beschaffen können. Na schön - ein Angreifer, kann dann jederzeit meine Druckjobs abschießen, wenn er viel Geduld hatte...
Quote: | Quote: | Jein: Der mit sudox/sux explizit dazu autorisierte Benutzer kann auf den X-Server zugreifen. |
Und damit hat der vollen Zugriff. Habe ich also keine unpriv. Benutzer (sondern nur einen normalen) dann ist das IMHO Jacke wie Hose wie ich dem Zugriff gebe. |
Es ist immer noch ein Unterschied, ob jetzt nur root (der das sowieso kann, wenn er nur will) auf den aktuellen X-Server zugreifen kann, oder ob das jeder der Benutzer in Deiner password Datei kann; beispielsweise der Benutzer, mit dem Du im Netz unterwegs bist. Wenn sich der letzte nicht von dem Benutzer unterscheidet, mit dem Du eingeloggt bist, hast Du sowieso schon unsicher konfiguriert - da ist es dann wirklich fast egal, weil Dein Rechner dann ohnehin unsicher ist.
Quote: | Da hast du ja im Prinzip ein Mehrbenutzersystem indem die Benutzer zwar alle von die genutzt werden, aber unterschiedliche Vertrauensstufen haben. |
Das ist auch das mindeste was man machen soll. Sonst kannst Du gleich als root im Netz surfen... |
|
Back to top |
|
 |
sirro Veteran


Joined: 20 Jul 2003 Posts: 1472 Location: aachen.nrw.de.eu
|
Posted: Mon Dec 17, 2007 1:54 pm Post subject: |
|
|
mv wrote: | Wenn sich der letzte nicht von dem Benutzer unterscheidet, mit dem Du eingeloggt bist, hast Du sowieso schon unsicher konfiguriert - da ist es dann wirklich fast egal, weil Dein Rechner dann ohnehin unsicher ist. |
Das meine ich doch. |
|
Back to top |
|
 |
think4urs11 Bodhisattva


Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
|
Back to top |
|
 |
alex00 l33t

Joined: 12 Jul 2004 Posts: 747 Location: Wien
|
Posted: Thu Dec 20, 2007 8:02 am Post subject: |
|
|
Also jetzt schein ich mich echt zu dumm anzustellen. Wenn ich die Befehle wie oben beschrieben der Reihe nach eingebe, bekomme ich immer noch die Fehlermeldung, dass er sich mit dem x-server nicht verbinden kann. |
|
Back to top |
|
 |
stalinski Tux's lil' helper

Joined: 14 Jan 2005 Posts: 106 Location: Berlin,Germany
|
Posted: Thu Dec 20, 2007 10:43 am Post subject: |
|
|
Jetzt nicht direkt zum thema.
Aber wie hast du deine sudoers editiert?
Am besten waere es, wenn du dafuer das dafuer vorgesehene Programm benutzt: visudo
Gruss,
Sven |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|