Jak se dostat do účtu jiného přihlášeného uživatele na stejném počítači
6. 01. 2006, 15:06 · Nakousnutá jabka · Bleskovka
Přiznám se, že nevím, zda to je úmysl, nebo bezpečnostní chyba, ale rozhodně mě tento “objev” rozhodil. Nepřišel jsem na to osobně, upozornila mě Péťa, která svého současného přítele “konvertuje” z Linuxu na Maca a který to objevil. Tímto tedy představa o bezpečnosti Mac OS X dostala trochu na frak. (Samozřejmě je možné, že objevuji objevené, krátké hledání na Google Mac mi nic nenašlo, ale kdo ví.)
Problém se podle provedených testů týká Mac OS X 10.3.x (testováno na 10.3.9) i 10.4.x (testováno 10.4.2 a 10.4.3).
Předpoklady:
• uživatel (útočník) má na počítači účet s administrátorskými právy
• uživatel (útočník) má fyzický přístup ke stroji
• přihlášený uživatel (oběť) má nastavenou ochranu heslem při usnutí nebo zobrazení spořiče obrazovky a je přihlášený – je jedno, zda je to běžný uživatelský účet, administrátorský nebo dokonce root!
• nemá vliv zda je aktivní Fast Users Switching
V případě uspání počítače nebo zobrazení screensaveru se po probuzení nebo nějaké aktivitě klávesnice/myši zobrazí dialog pro vložení jména/hesla. V tento okamžik je možné vložit jméno/heslo uživatele s admin právy a ten se tak dostane do aktivního účtu přihlášeného uživatele!
To znamená, že lze zneužít nejen veškerá data uživatele (což lze při fyzickém přístupu k počítači i tak poměrně snadno přes Terminal a sudo), ale především se útočník dostane ke spuštěným aplikacím, které mohou obsahovat citlivá data (například odemčená “peněženka” na hesla, přístup k bankovnímu účtu, jiná soukromá data). A samozřejmě pokud se někdo neoprávněně dostane k root uživateli, je to ještě nepříjemnější.
Chyba je velice snadno zneužitelná v prostředí, kde admin sítě má na každém stroji účet a tak si běžný uživatel nemůže být jist, zda někdo při jeho nepřítomnosti nebude jakkoliv zasahovat do jeho účtu a jeho soukromých dat. Jedinou ochranou je pak buď vypínat aplikace, které mohou obsahovat citlivé informace, nebo se odhlašovat.
Zajímá mě váš názor na tento problém, osobně to považuji za docela těžkou chybu Mac OS X. Zdá mi, že to je úmysl, tedy výsledek návrhu, ale osobně mi přijde, že to může znamenat velmi nepříjemnou kompromitaci soukromých dat uživatelů.
Ochrana je asi jediná—nastavit auto. odhlášení při nečinnosti…
...stejně je mi to divné…
— agent 6.1.2006 15:30 #
— Milanek 6.1.2006 15:32 #
— agent 6.1.2006 15:34 #
— ED 6.1.2006 15:47 #
Obavam se, ze to neni bug, ale zamer. Modelova situace: dva kolegove v praci, jeden pocitac (nebo 30 studentu – 1 pocitac ;) ). Jeden kolega odejde a pocitac uspi. Druhy kolega na nem potrebuje pracovat, co ted – restartovat natvrdo pocitac?. Ne, prijde admin, zada heslo, prepne uzivatele a jede se dal. Prvni uzivatel neprijde o rozdelanou praci, druhy muze delat.
Takze se obavam ze je to “intended behaviour”, ale mohlo by to byt nekde jasne uvedene…nebo treba je, ale kdesi hluboko v anglicke dokumentaci, kam bezny uzivatel neprijde.
— hroch32 6.1.2006 15:54 #
— hroch32 6.1.2006 15:59 #
— Petr Hrncir 6.1.2006 16:05 #
ad skola a podobne – pro podobne ucely je Fast User Switching, pri existenci teto funkce neni jediny duvod, aby bylo mozne se prihlasit takto snadno do uctu jineho uzivatele. chyba je to :(
— Martin Ler 6.1.2006 16:19 #
— Ezekiel 6.1.2006 16:19 #
— Ezekiel 6.1.2006 16:20 #
— hroch32 6.1.2006 16:29 #
Ezekiel: To co popisujete, nesouvisí s bezpečností systému, ale s bezpečnostní uvnitř nějaké organizace… Mac OS X JE z tohoto pohledu bezpečný...
— agent 6.1.2006 16:30 #
teda aspon doufam :)
[5] na 10.3.9. jsem to ted testoval (na 10.4.3. mam jen jeden admin ucet a tak jsem to netestoval, na 10.3.9. jeden admin a jeden user) a pro situaci, kdy se chce zalogovat dalsi user staci mit povoleno fast user switching a v login okne pri pokusu o vypnuti screensaveru je moznost “switch user”.
Imo by se mel admin po tom zalogovani dostat na svuj ucet, ne na ten uzivatelsky… nejak nevydim duvod, proc by se mel potrebovat dostat na uzivatelsky (napada nekoho duvod?)
— Kichi 6.1.2006 16:31 #
— Martin Ler 6.1.2006 16:35 #
Stejne si ale nedovedu predstavit, jak by se to tam dostalo nahodou, nemuzu se zbavit dojmu, ze to tam dal Apple schvalne…ted me uz ovsem nenapada duvod
— hroch32 6.1.2006 16:36 #
— hroch32 6.1.2006 16:38 #
— Petr Hrncir 6.1.2006 16:48 #
— agent 6.1.2006 16:59 #
— Petr Hrncir 6.1.2006 17:03 #
Petr Hrncir: keychain IMHO nevyresetujes.
— Martin Ler 6.1.2006 17:32 #
A co se vlastne stane, kdyz je root heslo odlisne od admin hesla a admin, ktery nezna root heslo zada sudo a pak svoje heslo? Necha ho to provest sudo?
Myslim tim teoretickou situaci, kdy je nekolik useru a nekolik adminu s tim, ze jen jeden z adminu je “super” admin a ten se muze zalogovat jako root (zna heslo). Nebo jsem mimo?
— Kichi 6.1.2006 17:46 #
— Martin Ler 6.1.2006 18:06 #
— Modrak 6.1.2006 18:20 #
Zaheslování souborů dost pomůže ale proti odchytávání klávesnice (aneb zaznamenání hesla) pomocí kext to stejně nefunguje.
— Petr Baláš 6.1.2006 20:34 #
— agent 6.1.2006 21:09 #
— jt 6.1.2006 21:42 #
agent: [25] Sudo spravci (tomu, kdo zna jeho heslo) dovoluje ziskat prava libovolneho uzivatele. (A i kdyz to neni dulezite: Administrator muze kdykoli aktivovat implicitne neaktivni ucet superuzivatele.)
jt: [26] Vypni si automaticke prihlasovani.
Ezekiel: [9] Lze si nastavit OpenFirmware heslo a tak tomu zamezit. Fyzicky pristup k pocitaci ale bez ohledu na to znamena absolutni pristup k (nezasifrovanym) datum (vyndat disk, pripojit jinam). S tim se neda nic delat.
— Adam Nohejl 6.1.2006 23:00 #
— Martin Ler 7.1.2006 00:23 #
Chci-li pocitac skutecne chranit, neprihlasim se a nenecham ho nestrezeny spat (pokud tedy podeziram spravce, mam duvody byt paranoidni atd.) – bez ohledu na to, zda je prihlaseni spravce o trochu slozitejsi nebo snazsi.
Je to i vec nazoru, ale vadi mi ten senzacni titulek clanku – i kdyz to pozdeji pises, neni v nem, ze musis mit spravcovske heslo. Kdyby to v titulku bylo uvedene, nikoho by to nijak zvlast neprekvapilo, natoz aby v tom videl nejakou bezpecnostni diru. Spravce ma totiz nad pocitacem v podstate absolutni moc, zbytek jsou detaily.
— Adam Nohejl 7.1.2006 00:45 #
— Martin Ler 7.1.2006 02:19 #
Obavam se ze zbytene to trivializujes a podcenujes. Sestup z programatorskych vysin, kde si muzes hrat na dumpovani pameti, odchytavani klaves pres kernel extenzny a podobne ptakoviny, do realneho zivota, kde muzes takhle snadno nekomu skodit, vedet co vedet nemas a podobne.
— Martin Ler 7.1.2006 02:23 #
2) MaLer ma pravdu, ze jde hlavne o zneuziti zamcene session, jejich spustenych aplikaci (napriklad prihlaseny web browser v eBance – do niz by se jinak nikdo nedostal ani kdyby si precetl vsechny moje data na disku). To je myslim dost velky problem.
3) ALE – je iluzorni si predstavovat, ze admin u vas na pocitaci neco nemuze. Napriklad se muze ve vyse zminene firemni siti pripojit na pocitac pres SSH a screensaver proste zabit, ze ano…
Vysledek: Taky si nemyslim, ze to je ve screensaveru nahodou – je to feature a ne bug. Chyba Apple je hlavne v tom, ze dava obcas uzivatelum pocit, ze nektera jejich data/programy jsou na pocitaci bezpecna i pred adminem. Nejsou. Nikdy.
— zzen 7.1.2006 07:05 #
agent: Prestan prosimte delat rozdil mezi adminem a rootem. Je to v praxi to samy – i kdyz Apple se obcas snazi nam namlouvat neco jinyho.
— zzen 7.1.2006 07:06 #
Je to asi o 10 vterin zdlouhavejsi, ale vysledek stejny jako u toho maca.
Opravdu bych to povazoval za normalni vlastnost.
Nebo ma linux strasny bezpecnostni problem rovnou v navrhu?
— nm 7.1.2006 07:21 #
Taky si myslim, ze to tam je umyslne. Myslim ale, ze by Apple mel 1)na to rozumne upozornit, 2)predevsim umoznit to vypnout – pripad, co popisuje MaLer, mi prijde docela realny. Proste mam nekdy dojem, ze v ramci marketingu obcas Apple presvedcuje lidi o bezbecnosti, ktera je pouze iluzorni. Vysledek je – budme aspon trochu paranoidni. Rozhodne neodchazet od kompu spojenho s bankou.
— hroch32 7.1.2006 08:59 #
— agent 7.1.2006 10:15 #
Není to tak trochu proti pracovní smlouvě a neměl by být dotyčný patřične postižen – za zneužívání pracovní doby?
Pokud jsem někde zaměstnaný, tak v práci mé soukromé věci nemají co dělat. Každý zaměstnavatel musí být radostí bez sebe, když si jeho zaměstnanci posílají v pracovní době příkazy za svoje soukromé faktury a pod.
Když jsem doma, tak tam k počítači nikoho s bootovacím CD nepustím, pokud se tam někdo vloupá, tak to si rovnou může odnést celý počítač.
Martin Sluka
— Martin Sluka 7.1.2006 10:50 #
A nebo nakonfigurovat selinux (http://www.nsa.gov/selinux/) a věřím, že to půjde nakonfigurovat tak, že to bude bezpečné. Ale bude to otravovat uživatele.
— Petr Baláš 7.1.2006 11:38 #
— Petr Baláš 7.1.2006 11:47 #
— Petr Baláš 7.1.2006 11:52 #
— koko 7.1.2006 11:53 #
— koko 7.1.2006 11:59 #
Navic admin to nezakaze, plni to funkci “fast user switching” na macu. Taky by musel vypnout sshd!
Proste “branit se” pred pristupem admina je podle me nepochopeni rozdeleni roli.
Jina vec je treba ten Keychain. Ten mam i ja nastaveny tak, aby se automaticky zamykal. Ze v me bance clovek nevyridi prikaz bez meho telefonu a hesel snad netreba pripominat, stejne jako to, ze takove veci clovek opravdu nenechava bezet, kdyz od stroje odchazi a ze bezny pracovni stroj prece neni “bezpecny”.
— nm 7.1.2006 12:44 #
— pixy 7.1.2006 12:46 #
— koko 7.1.2006 16:49 #
Na XSERVu se pri zobrazeni okna s accountama
pro zalogovani na pozadi objevi tabulka internet connect a na ni kdyz se klikne tak se zobrazi hlavni horni lista systemu…tam si v pohode potencionalni
utocnik muze v system pref. zalozit vlastni ucet
treba i admin. Nevim jak se to stalo [nejaka chyba]..ale neni to taky zrovna prijemny zjisteni.
— vlasata 7.1.2006 20:30 #
Pro me je to asi jako, kdyby nekomu vadilo, ze mobily se zamcenou klavesnici nevyzaduji vyreseni hlavolamu, ale pouhe stisknuti dvou klaves. Ovsem tezko Ti to muzu vyvratit argumenty, me to prijde banalni a Tobe ne, asi nema cenu to dal resit.
agent [36] napriklad:
sudo cp -R ~/Users/jrandom .nebo chces-li se mermomoci vyhnout superuzivatelskemu pristupu:
sudo -u jrandom cp -R ~/Users/jrandom .— Adam Nohejl 7.1.2006 20:52 #
Uz to tady padlo… prijde mi to spis jako Feature, ktera dokaze v jistem smyslu “ochranit data” uzivatelu. Mame u nas 2 pocitacove ucebny, na kterych probiha podle rozvrhu vyuka (uzivatele maji data ulozena na serveru). Uzivatel si treba na chvili odskoci, zamkne si screensaver a najednou ma zacit hodina. Administrator potrebuje stroj uvolnit, jelikoz system neumoznuje prihlasit 2 sitove uzivatele najednou (tedy FUS by nebyl k nicemu), odemkne screensaver, podiva se zda ma uzivatel vsechna data ulozena a teprve pak jej korektne odhlasi.
Jasne, jsou extremy kdy muze byt clovek zalogovany v e-benkovnictvi, nebo si nezamyka keychain. Ale to je vec uzivatele, jak moc si ceni svych penez, hesel apod. Kdyby neexistovalo zamknuti screensaveru, tak by si na to musel taky davat pozor… Je to jen ochrana pred nahodnym kolemjdoucim.
Pred casem jsem prisel na jinou zajimavou vec. Jeste do nedavna fungovalo to, ze se clovek se znalosti admin(root) hesla serveru dokazal pripojit na sitoveho uzivatele. Pouze do LoginWindow napsal jeho jmeno, sve heslo a HUPS … byl tam!
Mam za to, ze to fungovalo cca na server i cilent OS 10.3.5 (mozna i driv uz si na podrobnosti moc nevzpominam), ale 10.3.9 to jiz neumoznuje.
— A.R. 7.1.2006 21:17 #
— Jan Volf 7.1.2006 22:35 #
— Kichi 7.1.2006 23:04 #
— Martin Ler 8.1.2006 03:27 #
— Petr Baláš 8.1.2006 04:35 #
sranda je totiž v tom, že přes terminál vidí pouze soubory, kdežto takto může plnohodnotně PRACOVAT v tvém účtu—posílat zprávy, mít přístup k chatu apod.—jistě, to vše lze zfalšovat i jinak, ale tohle je celkem dobré usnadnění...
— agent 8.1.2006 10:32 #
BTW zfalšovat odesilatele mailové zprávy je triviální.
— Petr Baláš 8.1.2006 11:12 #
— agent 8.1.2006 13:09 #
2) co když je odesilatel na dialupu?
— Petr Baláš 8.1.2006 15:29 #
Nevim, proc tomu tak je. Ani nevim, jesti je to chyba. Preci jen Admin je Admin a ten se holt muze pripojit pokazde a vsude … dulezite je, ze to funguje pouze pro administratora. Jiny uzivatel se takto neprihlasi.
:-)
— Martin Blaha 8.1.2006 16:19 #
— Martin Ler 8.1.2006 20:54 #
Vzorová situace viz příspěvek 48. (A používáme to dlouho, novinka to není).
— Špendl 8.1.2006 23:47 #
— Martin Ler 9.1.2006 00:42 #
— Špendl 9.1.2006 03:50 #
Podla mna je normalne, ze ak sa administrator snazi prihlasit, tak mu je to umoznene (aj ked je to screen saver ineho uzivatela). Riesenie, kedy by to admina najprv “switchlo” a potom normalne nalogovalo do jeho uctu sa mi tiez nezda vhodne.
Problem je v tom, ze admin by mal mat nad pocitacom uplnu kontrolu a mal by byt schopny skontrolovat, co sa na danom pocitaci robi. Co obcas moze znamenat aj prihlasenie sa do aktualneho “sedenia” a kontroly, co tam uzivatel naozaj robi.
[31] Situacia, ked administratorske heslo koluje po okoli by nemala byt bezna! Lebo uz len samotny fakt, ze ho pozna kazdy je nebezpecny a chyba je v bezpecnostnej politike danej firmy. Akonahle v danej kancelarii sedia iba uzivatelia, je tento “bug” bezpredmetny.
A v pripade admina, ktory chodi z kancelarie do kancelarie a ked najde locknuty pocitac, tak spehuje jeho uzivatela, si treba urychlene najst ineho (teda ak to nema v naplni prace :-).
PS: Ono by slusne bolo, keby sa to dalo nastavit.
— tomas1284 9.1.2006 16:53 #
Mam tomu rozumet tak, ze mate pocitacovou ucebnu a uzivatele, kteri se na ni hlasi maji ?vsichni? lokalni konta?
FUS totiz nedovoluje prihlasit 2 sitove uzivatele soucasne (pokud ano, tak nemam poneti jak)
I na nasich ucebnach jsme FUS byli nuceni vypnout z toho duvodu, ze se nam uzivatele misto odhlaseni pouze prepinali:-(
— A.R. 9.1.2006 19:09 #