Ausgaben interpretieren: Unter welcher UID läuft der Prozess

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Ausgaben interpretieren: Unter welcher UID läuft der Prozess

Beitrag von inne » 28.06.2017 16:41:47

Hallo,

ich habe Serverprogramm installiert und das ist so konfiguriert, dass es unter der UID "foo/123" mit GID "444" läuft.
Nun wird unter netstat UID 0 und unter ps UID 123 angezeigt. Kann mir das jemand erklären bitte!

Code: Alles auswählen

netstat -tulpen
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode       PID/Program name
tcp        0      0 0.0.0.0:1234            0.0.0.0:*               LISTEN      0          11772       730/foo        
udp        0      0 0.0.0.0:1235            0.0.0.0:*                           0          11766       730/foo         
...

Code: Alles auswählen

ps -lA
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
5 S   123   730     1  0  80   0 - 54678 SyS_ep ?        00:23:16 foo
...

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Ausgaben interpretieren: Unter welcher UID läuft der Pro

Beitrag von uname » 28.06.2017 17:03:01

Erklären kann ich das nicht auch wenn es wohl an der Interpretation der netstat-Ausgabe liegt. Ich würde mal mit Debianlsof oder unter /proc/730 schauen.

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Ausgaben interpretieren: Unter welcher UID läuft der Pro

Beitrag von inne » 28.06.2017 18:10:18

Also lsof +p <PID>, lsof +p <PID> -a -i?
Es geht um Debiantor, was vielleicht einige hier auch installiert haben.

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: Ausgaben interpretieren: Unter welcher UID läuft der Pro

Beitrag von cosmac » 28.06.2017 22:47:34

hi,

ein Programm kann mehrere verschiedene UIDs gleichzeitig haben. cat /proc/$pid/status zeigt 4 davon an: Real, effective, saved set, and filesystem UID. Dazu kommen ca. 40 capabilities, die einem Programm bestimmte Aktionen erlauben, ohne dass volle root-Rechte nötig sind. Umgekehrt kann ein Programm mit der UID 0 starten und dann auf capabilities verzichten.
Beware of programmers who carry screwdrivers.

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Ausgaben interpretieren: Unter welcher UID läuft der Pro

Beitrag von uname » 29.06.2017 08:23:36

Bei sollte der Benutzer angeführt sein. Bei /proc/$pid/status poste die Zeile, die mit Uid beginnt.
Ich könnte mir vorstellen, dass es als Benutzer läuft, da scheinbar nur ein lokaler SOCKS-Server bereitgestellt wird, der keinen priviligierten Port benötigt.

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Ausgaben interpretieren: Unter welcher UID läuft der Pro

Beitrag von inne » 29.06.2017 10:23:35

Ich gehe auch davon aus. Es ist mir nur aufgefallen, weil ich alle Prozesse, besonders Sockets (netstat), die (im VPN) unter Root laufen abschalten wollte. Vor allem so Dienste wie z.B. Samba (Da suche ich z.Z. noch eine Alternative für ein NAS im VPN – Aber dazu später vlt. ein eigenes Thema).

Die Frage ist, welches Tool nimmt man denn nun, um herauszufindenden ob ein Prozess/Socket mit Root-Rechten läuft?
Ich nutzte sonst noch: ps -u root -U root -o pid,comm,command

Der Prozess von oben:

Code: Alles auswählen

cat /proc/730/status | grep "^Uid:"
Uid:	123	123	123	123
@cosmac: Findet man zu deinem Beitrag, einen guten deutschen Text, der das etwas mehr im Detail erklärt? Bzw. kennst du einen?

Antworten