Fórum Root.cz

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

Název: Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak
Přispěvatel: debil kdy 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 kdy 16. 08. 2018, 16:05:03
Protože:

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 kdy 16. 08. 2018, 16:15:31
Citace od: ByCzech kdy 16. 08. 2018, 16:05:03
Protože:

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 kdy 16. 08. 2018, 16:20:08
Citace od: debil kdy 16. 08. 2018, 16:15:31
Citace od: ByCzech kdy 16. 08. 2018, 16:05:03
Protože:

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 kdy 16. 08. 2018, 16:28:32
Citace od: ByCzech kdy 16. 08. 2018, 16:20:08
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 kdy 16. 08. 2018, 16:58:51
Citace od: debil kdy 16. 08. 2018, 16:28:32
Citace od: ByCzech kdy 16. 08. 2018, 16:20:08
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 kdy 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 kdy 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 kdy 16. 08. 2018, 17:10:16
Citace od: ByCzech kdy 16. 08. 2018, 16:05:03
Blik!

Proč ta agresivita?
Název: Re:Novy uzivatel je clenem skupiny root, gpasswd tvrdi opak!
Přispěvatel: operator++ kdy 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++ kdy 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: . kdy 16. 08. 2018, 17:14:48
Citace od: ByCzech kdy 16. 08. 2018, 16:58:51
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 kdy 16. 08. 2018, 17:16:53
Příkaz 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ář kdy 16. 08. 2018, 17:17:02
Tohle teda nepozoruji. Osobne bych odhadl, ze mas nejakou dalsi skupinu, ktera je default s gid 0?

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 kdy 16. 08. 2018, 17:25:26
Citace od: . kdy 16. 08. 2018, 17:14:48
Citace od: ByCzech kdy 16. 08. 2018, 16:58:51
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 kdy 16. 08. 2018, 18:00:52
Citace od: BoneFlute kdy 16. 08. 2018, 17:16:53
Příkaz 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 kdy 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 kdy 16. 08. 2018, 19:35:53
Citace od: debil kdy 16. 08. 2018, 18:00:52
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 kdy 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 kdy 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 kdy 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 kdy 16. 08. 2018, 20:36:19
Citace od: J kdy 16. 08. 2018, 19:53:41
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 kdy 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 kdy 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 kdy 16. 08. 2018, 20:59:39
Citace od: Karel kdy 16. 08. 2018, 20:50:53
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ář kdy 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: Exceptions kdy 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 kdy 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)

Citace od: AoK kdy 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.

- 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 kdy 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 kdy 16. 08. 2018, 23:03:24
Citace od: Karel kdy 16. 08. 2018, 22:30:03
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 kdy 16. 08. 2018, 23:06:13
Citace od: debil kdy 16. 08. 2018, 20:36:19
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...

$ 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 kdy 16. 08. 2018, 23:33:12
Citace od: debil kdy 16. 08. 2018, 23:03:24
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: Exceptions kdy 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: Exceptions kdy 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í.