Fórum Root.cz

Hlavní témata => Distribuce => Téma založeno: Hamparle 15. 10. 2020, 10:34:41

Název: Nahrazení hesla v Linuxu
Přispěvatel: Hamparle 15. 10. 2020, 10:34:41
Když mám nainstalovaný linux, kterému jsem zapomněl heslo pro svůj účet i pro root (uživatele, ne web o počítačích), a samozřejmě mám přístup k počítači včetně úložiště, jde nějak zprovoznit do použivatelného stavu, aby se tam šlo přihlásit? Například :
-provést novou instalaci (když vím o jakou jde distribuci) na další HDD a pak obsah disku přepsat tím existujícím mimo pár klíčových souborů (různé /etc/passwd, v tom se nevyznám)
- natvrdo nějak zeditovat obsah souboru obsahující login údaje (to /etc/passowords)
Název: Re:nahrazení hesla linux
Přispěvatel: alex6bbc 15. 10. 2020, 10:39:26
najdi si jak nabootovat do single mode, premountovat disk i pro zapis a vymazat hash hesla.
Název: Re:nahrazení hesla linux
Přispěvatel: Hamparle 15. 10. 2020, 11:21:11
a když grub není? předpokládám, že single mode je nějaká volba v bootparametrech...

ten zapis a vymazat hesla musím dělat z aktuálního systému nebo to jde "offline" (klidně i z jiného počítače, kde je připojen disk)
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Petr Krčmář 15. 10. 2020, 11:36:05
Pokud není Grub, tak se systém zavádí nějakým jiným zavaděčem a neviděl jsem situaci, že by nebylo možné jádru předat parametr.

Každopádně je samozřejmě možné heslo nastavit i offline, je zahašované v souboru /etc/shadow a ten záznam se dá vytvořit třeba pomocí mkpasswd. Stačí pak nahradit ten řádek novým a heslo je změněno.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: RDa 15. 10. 2020, 11:41:10
Proc tak komplikovane... vytahnu disk s instalaci a zmenim v nem heslo.
Kód: [Vybrat]
sudo bash
mount /dev/zapomenuto1 /mnt/x
chroot /mnt/x /bin/bash
passwd
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: LivingLegend 15. 10. 2020, 20:55:49
ze zvědavosti, o jaké distro se jedná?
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Jakub Štech 16. 10. 2020, 00:20:11
Pokud není Grub, tak se systém zavádí nějakým jiným zavaděčem a neviděl jsem situaci, že by nebylo možné jádru předat parametr.

Pokud zavádíte kernel přímo z UEFI (třeba přes efistub), tak mu parametry buď nemáte jak předat (musíte je nastavit přímo v jádře přes CONFIG_CMDLINE), a nebo je nemáte jak změnit (protože jsou zakompilovány do unified kernel image a firmware PC to zrovna neumí).
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: k3dAR 16. 10. 2020, 03:35:08
Pokud není Grub, tak se systém zavádí nějakým jiným zavaděčem a neviděl jsem situaci, že by nebylo možné jádru předat parametr.

Pokud zavádíte kernel přímo z UEFI (třeba přes efistub), tak mu parametry buď nemáte jak předat (musíte je nastavit přímo v jádře přes CONFIG_CMDLINE), a nebo je nemáte jak změnit (protože jsou zakompilovány do unified kernel image a firmware PC to zrovna neumí).

nebi pri pouziti zavadece SicherBoot a aktivniho SecureBoot umyslne brani upravy boot parametru...
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: SB 16. 10. 2020, 11:48:31
Tak potom je nejjednodušší připojit disk jinam, nebo nabootovat z klíčenky a soubor /etc/shadow upravit, přičemž buďto stávající hashované heslo nahradím nějakým známým z mého systému (nemusím jej složitě vyrábět), nebo, pokud si dobře pamatuju, tak se dalo heslo i vymazat, a pak se přihlašovalo bez hesla.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Jakub Štech 16. 10. 2020, 17:45:22
...

Nejbezpečnější je vlézt do toho připojeného rootfs pomocí chroot(1) a pak to provést nativně pomocí passwd(1) nebo jiného nástroje, který máte přímo v tom systému. Ruční editací nebo úpravou nástrojem z nabootované live distribuce se může stát, že uděláte nějaký překlep nebo použijete hashovací funkci, kterou nativní systém zrovna nepodporuje :)
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: _Jenda 17. 10. 2020, 04:14:48
Proc tak komplikovane... vytahnu disk s instalaci a zmenim v nem heslo.
Kód: [Vybrat]
sudo bash
mount /dev/zapomenuto1 /mnt/x
chroot /mnt/x /bin/bash
passwd
Fun fact: lidi tohle dělají, aniž by si uvědomovali, že tímto spustili bash z toho cizího systému pod rootem na svém systému (a z chrootu kde máte roota se dá snadno uniknout). Přidejte do svého bashe rootkit a užívejte si přístupu na stroje lidí, kteří vám chtěli změnit heslo.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Standa2017 17. 10. 2020, 07:16:42
Pro nahrazení hesla (ne změnu) bych si přidal klíč do /root/.ssh/authorized_keys .
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: aaa158 17. 10. 2020, 10:46:56
Proc tak komplikovane... vytahnu disk s instalaci a zmenim v nem heslo.
Kód: [Vybrat]
sudo bash
mount /dev/zapomenuto1 /mnt/x
chroot /mnt/x /bin/bash
passwd
Fun fact: lidi tohle dělají, aniž by si uvědomovali, že tímto spustili bash z toho cizího systému pod rootem na svém systému (a z chrootu kde máte roota se dá snadno uniknout). Přidejte do svého bashe rootkit a užívejte si přístupu na stroje lidí, kteří vám chtěli změnit heslo.

Fun fact: toto je osobne PC (podla OP), clovek ktory chrootne hdd ktory nasiel na ulici a pripojil do PC na ktorom ma dolezite data... je to samozrejme jeho problem..
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: skunkos 20. 10. 2020, 08:35:05
Proc tak komplikovane... vytahnu disk s instalaci a zmenim v nem heslo.
Kód: [Vybrat]
sudo bash
mount /dev/zapomenuto1 /mnt/x
chroot /mnt/x /bin/bash
passwd
Tomu chroot se dá vyhnout, passwd má krásný parametr -R.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Miroslav Šilhavý 20. 10. 2020, 10:38:42
Tak potom je nejjednodušší připojit disk jinam, nebo nabootovat z klíčenky a soubor /etc/shadow upravit, přičemž buďto stávající hashované heslo nahradím nějakým známým z mého systému (nemusím jej složitě vyrábět), nebo, pokud si dobře pamatuju, tak se dalo heslo i vymazat, a pak se přihlašovalo bez hesla.

Pamatujete si to správně. Nejjednodušší je spustit jádro s parametrem init=/bin/sh, a pokud to nejde (secureboot apod.), pak jakýkoliv linux (třeba z jakéhokoliv live CD), připojit disk, a ze shadow souboru heslo prostě vymazat. Chroot je blbost, je to složitější a nebezpečnější.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Hamparle 20. 10. 2020, 18:05:34
Díky všem za rady,nakonec jsem užil nahrazení řetězce :$6$salt$hodnota$: na ::.

Jen ze zvědavosti,nejsou na tohle navázané nějaké klíčenky či úložiště hesel v různých userspace programech přes gnome-keyring atd?
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Miroslav Šilhavý 20. 10. 2020, 18:09:39
Jen ze zvědavosti,nejsou na tohle navázané nějaké klíčenky či úložiště hesel v různých userspace programech přes gnome-keyring atd?

Pokud vím, tak ne, a nedovedu si ani představit mechanismus, jak by to jít mělo.
Tuto funkcionalitu najdete na Windows - jakmile admin změní heslo (tj. bez znalosti původního), zneplatní se uložené klíče v certificate store.
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: k3dAR 20. 10. 2020, 19:07:07
Jen ze zvědavosti,nejsou na tohle navázané nějaké klíčenky či úložiště hesel v různých userspace programech přes gnome-keyring atd?

Pokud vím, tak ne, a nedovedu si ani představit mechanismus, jak by to jít mělo.
Tuto funkcionalitu najdete na Windows - jakmile admin změní heslo (tj. bez znalosti původního), zneplatní se uložené klíče v certificate store.

Samozrejme ze ano, resp. pokud uzivatel NEpouziva autologin, ale prihlasuje se rucne, tak se mu tim automaticky odemkne zminovana gnome klicenka, ktera pri zalozeni pouzila heslo uzivatele, takze po zmene hesla uzivatele je potreba pustit spravce klicenky, zadat PUVODNI heslo a to nove, aby se klicence heslo zmenilo na stejna jako ma nove uzivatelsky ucet, pokud to uzivatel neudela a ZNA puvodni heslo (coz tazatel nezna) tak si klicenka (tim ze je neodemcena) pri prvnim (v ramci beziciho systemu) pusteni zepta o heslo (to puvodni) a uzivatel ji dodatecne takto odemkne, pokud ale PUVODNI heslo nezna, tak klicenku neodemkne...
Název: Re:Nahrazení hesla v Linuxu
Přispěvatel: Miroslav Šilhavý 20. 10. 2020, 19:09:44
@k3dAR

Já měl na mysli jiný mechanismus. Na Windows, pokud dojde k násilnému změnění hesla, tak se ke klíčům už nedostanete.

To, co popisujete, je single sign on k počítači a klíčence. Ta v případě linuxu zůstane netknutá, jen pod starým heslem.