Fórum Root.cz

Hlavní témata => Software => Téma založeno: debil 16. 08. 2018, 15:53:45

Název: Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak
Přispěvatel: debil 16. 08. 2018, 15:53:45
Zdravim, vytvoril jsem takovou situaci...
Ubuntu 18.04, jinak bezne pouzivany, stabilni system na desktopu.

Chtel jsem vyvtorit noveho uzivatele, rekneme developer.
#adduser developer ...vse OK
$su - developer ...OK
developer$groups ...developer, root (?!)

ano..opravdu muze psat do g+rw souboru roota.

#gpasswd -d developer root ...
> gpasswd: user 'developer' is not a member of 'root'

# cat /etc/group |grep root
root:x:0:
# cat /etc/passwd |grep root
root:x:0:0:root:/root:/bin/bash

Cim to muze byt? A zejmena, proc je rozdil v tom, co vraci groups a co gpasswd?
Diky moc
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: ByCzech 16. 08. 2018, 16:05:03
Protože:

Kód: [Vybrat]
gpasswd -d developer root
odebere uživatele developer ze skupiny root... Blik!
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 16:15:31
Protože:

Kód: [Vybrat]
gpasswd -d developer root
odebere uživatele developer ze skupiny root... Blik!

Coze?
Mozna jsem se spatne vyjadril, ale prave v tom je problem!
gpasswd tvrdi, ze neodebere, neb tam neni.
x
groups (a systemova opravneni) tvrdi, ze je. Tj i prave po volane delete pres gpasswd.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: ByCzech 16. 08. 2018, 16:20:08
Protože:

Kód: [Vybrat]
gpasswd -d developer root
odebere uživatele developer ze skupiny root... Blik!

Coze?

Vidličky a nože.

RTFM!

Citace
-d, --delete user
Remove the user from the named group.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 16:28:32
RTFM!

Porad nic. Nechapu co myslis, nebo co delam blbe?

# gpasswd -d developer root
Removing user developer from group root
gpasswd: user 'developer' is not a member of 'root'
# su - developer -c groups
developer root
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: ByCzech 16. 08. 2018, 16:58:51
RTFM!

Porad nic. Nechapu co myslis, nebo co delam blbe?

# gpasswd -d developer root
Removing user developer from group root
gpasswd: user 'developer' is not a member of 'root'
# su - developer -c groups
developer root

Blbě děláš to, že dáš odebrat uživatele ze skupiny a divíš se, že tam následně není. Pokud tě plete hlášení, že uživatele ze skupiny odebere a nahlásí, že tedy už není členem, tak doporučuji více tekutin, to bude z horka.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 17:05:10
nevim, jestli se snazis pomoct, nebo potrebujes ty tekutiny..
Koukni se, co vypisuje nasledne
 su - developer -c groups

Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: Lol Phirae 16. 08. 2018, 17:06:04
(https://www.lovequotesmessages.com/wp-content/uploads/2018/04/man_with_brain_stupid_meme1.jpg)
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: BoneFlute 16. 08. 2018, 17:10:16
Blik!

Proč ta agresivita?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: operator++ 16. 08. 2018, 17:13:01
Hmmm, nemůže to být tím, že se změna skupin projevuje až po odhlášení a přihlášení? Pokud ten příkaz sahá do kernelu, mohlo by to být tím.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: operator++ 16. 08. 2018, 17:14:17
Hmmm, beru zpět, přihlašuješ se do developera přes su. Asi se taky radši jdu napít :D
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: . 16. 08. 2018, 17:14:48
Blbě děláš to, že dáš odebrat uživatele ze skupiny a divíš se, že tam následně není.
Diví se, že tam JE i když podle gpasswd ne!
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: BoneFlute 16. 08. 2018, 17:16:53
Příkaz
Kód: [Vybrat]
id developer vrací co?

Jinak mě teda ve Fedoře všechno v cajku. Co mrknout na /etc/skel, nebo kde je umístěné pravidlo, kam zařadit nového uživatele. Ve Fedoře se vytvoří stejně pojmenovaná skupina.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: Martin Mlynář 16. 08. 2018, 17:17:02
Tohle teda nepozoruji. Osobne bych odhadl, ze mas nejakou dalsi skupinu, ktera je default s gid 0?

Kód: [Vybrat]
docker run -ti ubuntu:bionic bash
root@33aa27260f3d:/# adduser developer
Adding user `developer' ...
Adding new group `developer' (1000) ...
Adding new user `developer' (1000) with group `developer' ...
Creating home directory `/home/developer' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for developer
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
root@33aa27260f3d:/# su - developer
developer@33aa27260f3d:~$ groups
developer
developer@33aa27260f3d:~$ id
uid=1000(developer) gid=1000(developer) groups=1000(developer)
developer@33aa27260f3d:~$
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: ByCzech 16. 08. 2018, 17:25:26
Blbě děláš to, že dáš odebrat uživatele ze skupiny a divíš se, že tam následně není.
Diví se, že tam JE i když podle gpasswd ne!

A co původní dotaz? Taky tak skončil? Rýpe do toho bez potřebných znalostí nebo troluje.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 18:00:52
Příkaz
Kód: [Vybrat]
id developer vrací co?

Jinak mě teda ve Fedoře všechno v cajku. Co mrknout na /etc/skel, nebo kde je umístěné pravidlo, kam zařadit nového uživatele. Ve Fedoře se vytvoří stejně pojmenovaná skupina.
Diky, /etc/skel jeste zkusim..ale stejne, odebrat by jit melo!

# su -l - developer -c id
uid=1004(developer) gid=1004(developer) groups=1004(developer),0(root)
# gpasswd -d developer root
Removing user developer from group root
gpasswd: user 'developer' is not a member of 'root'
# echo $?
3   // jen err, ze uz tam neni. ale pro jistotu zkusim jeste
# gpasswd -a developer root
Adding user developer to group root
# gpasswd -d developer root
Removing user developer from group root
# echo $?
0   // uz OK
# su -l - developer -c id
uid=1004(developer) gid=1004(developer) groups=1004(developer),0(root)
// ...FUUUUU


@Martin Mlynar:
Diky, dobry napad s koliznim gid, ale taky ne!

# cat /etc/group | grep root
root:x:0:
# cat /etc/group | grep :0:
root:x:0:
# cat /etc/group | grep developer
developer:x:1004:developer
# cat /etc/passwd | grep developer
developer:x:1004:1004:,,,:/home/developer:/bin/bash


Tak jsem koukal do /etc/skel , u me je to slozka s obsahem:
-rw-r--r-- 1 root root   220 Sep 19  2012 .bash_logout
-rw-r--r-- 1 root root  3771 Jun 24  2016 .bashrc
drwxr-xr-x 1 root root    66 Aug 11 17:44 .config
-rw-r--r-- 1 root root  8980 Oct  4  2013 examples.desktop
-rw-r--r-- 1 root root 14965 Apr  9 19:28 .face
drwxr-xr-x 1 root root    10 Aug 11 17:44 .kde
-rw-r--r-- 1 root root   807 Apr  4 20:30 .profile


Zkousel jsem pridat uzivatele pres useradd, adduser, oba maji skupinu root.
Zkousel jsem updatovani skupin, pro ostatni, zda se, funguje:

# useradd tmpp
# gpasswd -a tmpp developer
Adding user tmpp to group developer
# su -l - tmpp -c id
No directory, logging in with HOME=/
uid=1005(tmpp) gid=1005(tmpp) groups=1005(tmpp),0(root)
# gpasswd -d tmpp developer
Removing user tmpp from group developer
# su -l - tmpp -c id
No directory, logging in with HOME=/
uid=1005(tmpp) gid=1005(tmpp) groups=1005(tmpp),0(root)


@ByCzech, netrolluju, ale mam problem, ktery neni uplne trivialni. Snazil ses pomoct..diky, ale asi neporozumnel problemu.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: hrdina 16. 08. 2018, 19:20:31
Nemas tam naky kerberos, nss nebo neco takovyho? Naky rootkit? :P
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: BoneFlute 16. 08. 2018, 19:35:53
Diky, /etc/skel jeste zkusim..ale stejne, odebrat by jit melo!
...
Tak jsem koukal do /etc/skel , u me je to slozka s obsahem:
-rw-r--r-- 1 root root   220 Sep 19  2012 .bash_logout
-rw-r--r-- 1 root root  3771 Jun 24  2016 .bashrc
drwxr-xr-x 1 root root    66 Aug 11 17:44 .config
-rw-r--r-- 1 root root  8980 Oct  4  2013 examples.desktop
-rw-r--r-- 1 root root 14965 Apr  9 19:28 .face
drwxr-xr-x 1 root root    10 Aug 11 17:44 .kde
-rw-r--r-- 1 root root   807 Apr  4 20:30 .profile
Ej, sorry, to je mimo.

Podle man stránky k useradd tak platí, že pokud není určena skupina, tak záleží na nějakém příznaku USERGROUPS_ENAB v /etc/login.defs, případně GROUP v /etc/default/useradd. (Fedora) Mrkni, zda v tom souboru nemáš GROUP=0
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 19:49:51
Kerberos, nss nemam. je to normalni,pracovne-domaci ntb. Driv to fungovalo (starsi uzivatele).
Rootkit - taky si zacinam rikat, nebo chyba v "su"?

Uz jsem zkousel i restartovat, porad..

2 etc/skel ..jj, koukal jsem do /etc/defaits/useradd i do login.defs, user skupinu mam, ale vytvari se spravne s novym uzivatelem (viz id: je ve skupinach developer,root)
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: J 16. 08. 2018, 19:53:41
A kdyz se prihlasis bez su, tak jaky mas groupy?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: black3r 16. 08. 2018, 20:11:27
Ja teda nss mam aj na pracovnom notebooku.., pre istotu skus poslat vystupy z `getent group | grep :0`, `getent passwd | grep developer` a `cat /etc/nsswitch.conf` ?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 20:36:19
A kdyz se prihlasis bez su, tak jaky mas groupy?

Bingo!
Pri prihlaseni rovnou do toho uzivatele ma je skupinu 'developer'!
Podezreni je tedy na `su`, ktery nejak pribaluje rootovskou skupinu? :O

U me je /bin/su poskytovano balickem login,
login/bionic,now 1:4.5-1ubuntu1 amd64 [installed]
Overoval jsem md5sum a binarky sedi.

Muzete prosim nekdo na Debianu/Ubuntu/KDE Neon overit tuhle chybu?
Postup:
su - <no-root-user> -l -c id
Chyba: prida mu to skupinu 0(root)

Da se toho nejak zneuzit, krom toho, ze takto "prepnuty" user muze mazat rootovo soubory, ktere maji g+w ?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 20:38:37
jeste ls -l su

-rwsr-xr-x 1 root root 44664 led 25  2018 /bin/su

ten sticky bit mit ma, ze?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: Karel 16. 08. 2018, 20:50:53
ma

btw to su poustis jako jaky uzivatel?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 20:59:39
btw to su poustis jako jaky uzivatel?
tak i tak, v obou pripadech prida roota.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: Martin Mlynář 16. 08. 2018, 21:26:36
a co zahrabane nekde kolem /etc/pam.d/su?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: _Tomáš_ 16. 08. 2018, 21:59:57
podle mě bude zakopaný pes někde v /etc/pam.d, hoď sem výpis a obsah souborů.

Také je vhodné zjistit za jakých okolností tam ten root je a kdy není, tj.
- sudo
- su
- id pod rootem
- ssh login
- login do desktopu

Mohlo by pomoc zavolat ten su s strace a hodit sem výpis, aspoň uvídime, které moduly jsou aktivní a kam kluk všude šahá.

Stejně tak se může jednat o nějakou nákazu, projít výpis lsof, mrknout na /proc/modules a ověřit grup cfg.

Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 22:19:58
@Martin: do /etc/pam.d/su jsem se ted dival, nic mnou meneneho, ani nic podezreleho. Jestli mam prohlidnout cele pam.d, tak tam je toho dost (ne nutne podezrele, jen hodne souboru)

podle mě bude zakopaný pes někde v /etc/pam.d, hoď sem výpis a obsah souborů.

Také je vhodné zjistit za jakých okolností tam ten root je a kdy není, tj.
- sudo
- su
- id pod rootem
- ssh login
- login do desktopu

Mohlo by pomoc zavolat ten su s strace a hodit sem výpis, aspoň uvídime, které moduly jsou aktivní a kam kluk všude šahá.

Stejně tak se může jednat o nějakou nákazu, projít výpis lsof, mrknout na /proc/modules a ověřit grup cfg.

- sudo -u developer id  //OK (tj neni root grp)
- su - developer -c id //spatne, je.
- #id //OK root:root:root
- ssh login //nemam povoleny
- login do desktopu //OK, jak GUI (sddm), tak TTY

Rootkit - mozne to je vzdycky, ale nemel by byt extra duvod (torrenty, hry apod nepouzivam). Volal jsem krhunter a na /bin/su nic nehlasi. Stejne tak kontrola md5sum.

Strace... vypise toho strasne moc, nejaky vhodny format, jak to mam zavolat? A taky, je tam treba neco anynimizovat?
Diky za dobry postup k debugovani!
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: Karel 16. 08. 2018, 22:30:03
jeste mozna /etc/default/su

a zkusit jinou su binarku?

naky posahany kontejnery mebo namespaces tam nemas?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 23:03:24
jeste mozna /etc/default/su

a zkusit jinou su binarku?

naky posahany kontejnery mebo namespaces tam nemas?

Nejsem v kontejneru :)

login (su) jsem si zkusil skompilovat z gitu, ale nedarilo se mi slinkovat s libpam, takze su selhalo. Pak jsem nainstaloval starsi verzi z ubuntu xenial (4.2-3) a tam stejna chyba (ale jen jsem zavolal su - ..., bal jsem se restartovat, aby se neco uplne nepodelalo).
Tj., vede to, ze to neni primo v su, ale necem pod nim? (PAM?)
Jak na ten strace? bylo by zajimavy videt rozdil volani mezi tim su a sudo.

Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: k3dAR 16. 08. 2018, 23:06:13
Bingo!
Pri prihlaseni rovnou do toho uzivatele ma je skupinu 'developer'!
Podezreni je tedy na `su`, ktery nejak pribaluje rootovskou skupinu? :O

Muzete prosim nekdo na Debianu/Ubuntu/KDE Neon overit tuhle chybu?
Postup:
su - <no-root-user> -l -c id
Chyba: prida mu to skupinu 0(root)

mas to nejake rozbite...

Kód: [Vybrat]
$ lsb_release -d
Description: Ubuntu 18.04.1 LTS

$ su - k3dar -c id
Heslo:
uid=1000(k3dar) gid=1000(k3dar) skupiny=1000(k3dar),4(adm),20(dialout),24(cdrom),27(sudo),30(dip),46(plugdev),110(netdev),120(lpadmin),128(sambashare),130(kvm),131(libvirt)
btw: zbytecne uvadis - a -l coz je to same "-, -l, --login" ;-)
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: debil 16. 08. 2018, 23:33:12
Tj., vede to, ze to neni primo v su, ale necem pod nim? (PAM?)

Tak jo, vyresino! Diky vsem, co meli uzitecne komentare ! ;)

Chyba je v su & modulu pam-fscrypt.

Muzete to prosim nekdo overit?
0/ useradd developer
1/ \su - developer -c id
1.1/ vs: sudo -u developer id
2/ apt install libpam-fscrypt
2.1/ pam-auth-update --enable fscrypt
3/ ...opakovat 1/

// zpet: pam-auth-update --disable fscrypt; apt remove libpam-fscrypt

Jeste jednou diky moc vsem. A ja jdu hlasit bug.
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak
Přispěvatel: _Tomáš_ 17. 08. 2018, 09:23:18

ha :), zpětně se podívej do /etc/pam.d, určitě si tam kluk něco změnil. Tenhle modul neznám, je možné, že je to jeho cíl.

Citace
- #id //OK root:root:root

myslel jsem "id developer", tj. jak je vidět uživatel dříve než se přihlásí. Právě jeho "přihlášení" přes su generuje událost v rámci pam modulů a ty mohou zasahovat do v podstatě všeho.

Strace obsahuje sycally do kernelu, pokud mezi aplikací a kernelem přenášíš důvěrná data, můžeš jeho zveřejněním ty data také zveřejnit, v tomhle případě by ale v obsahu nemělo být nic citlivého. Obsahuje právě informace o souborech, ke kterým dané volání přistoupilo, chtěl jsem z toho zjistit, jestli je v pam nějaká událost přetížená a jestli tam něco zasahuje.

Jak koukám fscrypt je nějaká go aplikace, přidává vlastní .so modul do pamu, zdrojáky jsou tady https://github.com/google/fscrypt, ale na první pohled nevidím, proč přidává uživatele do skupiny root, s oprávnění a skupinami ale docela aktivně manipuluje
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak
Přispěvatel: _Tomáš_ 17. 08. 2018, 09:24:57
jo v /etc/pam.d/ tě nespíš budou zajímat soubory /etc/pam.d/system-auth a /etc/pam.d/system-login, kde ne přidaný pam_fscrypt.so. Vzhledem k tomu, že mají hodně aktivní vývoj a ty instaluješ z ubuntu repositáře, je možné, že máš starou chybnou verzi, kdo ví.