Hali,
Nagyon idióta kérdés, ég a pofám miatta, de kénytelen vagyok feltenni, hátha.
Van kb. 100 darab, vmware-rel virtualizált linux.
Ismeretlen root jelszó (meg úgy általában senki nem tud semmit).
Nincs vmi mód arra, hogy a gépek rebootja nélkül, vmware-en át (vcenter, vsphere client, akármi) be lehessen lépni és/vagy root pass-t lehessen cserélni?
Thx.
- 20133 megtekintés
Hozzászólások
*
- A hozzászóláshoz be kell jelentkezni
Reboot nelkul nem tudom...
Rebootal lehet pl grub-ban init=/bin/bash a kernel opciok utan es mar jatszhatsz is.
Vagy:
https://pubs.vmware.com/vcd-51/index.jsp?topic=%2Fcom.vmware.vcloud.use…
De ehhez mind offline kell legyen a guest OS, vagy legalabb egy GRUB kell...
- A hozzászóláshoz be kell jelentkezni
Köszi, de pont idáig jutottam én is. :/
- A hozzászóláshoz be kell jelentkezni
Cserélni nem igazán - snapshotból/mentésből esetleg kinyerhető a shadow tartalma, de azzal csak annyira vagy előrébb, hogy törni megpróbálhatod; én egyébként megnézném, hogy milyen lukas komponensek vannak telepítve, amiben kihasználható local root sérülékenység van.
- A hozzászóláshoz be kell jelentkezni
Csak hangosan gondolkozom: Gondolom klónozni lehet az OS-eket, nem? Klónozod, elindítod a klónt -nem esik ki az élő szolgáltatás- és a klónon a grub-os módszerrel vagy chroottal vagy akárhogy cseréled a jelszót.
- A hozzászóláshoz be kell jelentkezni
Futó OS-t klónozni? Aztán elindítani ugyanazzal az IP-címmel? Izé... Általános módszer biztos nincs.
- A hozzászóláshoz be kell jelentkezni
Futó? Azzal mi bajod? Miért kellene ugyanaz az IP cím? Miért kell neki hálózat?
- A hozzászóláshoz be kell jelentkezni
Csinál egy klónt, vagy visszaáll mentésből, akárhogy, hálózat nélkül, majd ezen a szolgáltatást nem adó gépen cserél jelszót. Kérdés: mit ér el vele? A nagy semmin kívül - mivel a cél a meglévő, futó gépekhez való hozzáférés. Attól, hogy egy másolaton módosít valamit, attól még az eredeti gépen nem történik meg ugyanaz a módosítás...
A futó OS klónozása meg... Oké, snapshotból megoldható - viszont az a snapshot minden lesz, csak konzisztens nem - oké, fs szinten még akár lehet is, de egy DB, vagy akár egy írásra megnyitott állomány tartalma sérült lesz a snapshot-ból készült másolatob, mivelhogy a vmware nem tud egy vm-ben futó Oracle/Postgresql/MySQL, de akár egy tetszőleges nosql adatbázisnak jelezni, hogy tessen mindent flush, meg "begin backup", hogy konzisztens legyen a DB is.
- A hozzászóláshoz be kell jelentkezni
Igazad van, nem gondoltam át teljesen a dolgot.
- A hozzászóláshoz be kell jelentkezni
clone-bol kiszedi a root passwd hasht, aztan raereszti a johntheippert vagy valami rainbowtablas crackert.
Aztan imadozik hogy jocika123 legyen a jelszo, vagy var 1 napot/hetet/honapot/evet/evtizedet amig megtorti. ;)
- A hozzászóláshoz be kell jelentkezni
Ennél szerintem egy local root exploitot könnyebb találni :-P
- A hozzászóláshoz be kell jelentkezni
+1 :D
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
Én azt vettem le, hogy nem tud semmit. Ha klónoz egyet közelebb jut, lesz információ tud tesztelni. Ezért írtam, hogy nem biztos, hogy kell hálózat. Azért megjegyezném, hogy azért a modern hypervisor rendszerek nem csak a diszket klónozzák és snapshootolják törvényszerűen..
- A hozzászóláshoz be kell jelentkezni
Na jó, de attól, hogy a klónon le lett cserélve a jelszó, attól az éles rendszeren nem változik. A klónra meg nem kéne átállni a produkció után, mert a klónon nem lesznek meg azok a változások, amelyek a klónozás pillanata és a sikeres jelszó csere között eltelt idő alatt történtek. Akkor? Mit nyerünk ezzel?
- A hozzászóláshoz be kell jelentkezni
Téves
- A hozzászóláshoz be kell jelentkezni
Merthogy?
- A hozzászóláshoz be kell jelentkezni
Mert a smart data új értelmet nyert: igazából az adatok maguktól átvándorolnak a szerverek között
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
Úgyértem, rosszat írtam
- A hozzászóláshoz be kell jelentkezni
Amivel próbálkoznék:
- futó OSből egy másolat készítése és indítása
- régi OS-ben lecseréled a root jelszót
- másolatot lelövöd, eredetit elindítod
FathoM
Ui.: mivel elég sok rendszer fut, mindezt szkriptelném is.
- A hozzászóláshoz be kell jelentkezni
és a közte érkező leveleket meg kéréseket bedobod a levesbe:)
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
Nem volt mögötte valami puppet/chef/stb.?
Esetleg ssh kulcs? (Bár azt ugye rootnak telepíteni nem egy életbiztosítás.)
- A hozzászóláshoz be kell jelentkezni
Mondjuk meglepne ha ertelmes valaszt kapnal... Egyreszt ugye mert ez elegge alaasna a cloud szolgaltatok / hypervisorok hitelesseget - ambar egyesek szerint ugye minden kinyerheto a futo gepbol, meg a betoltott SSH kulcsok is (legalabbis elmeletileg)... Masreszt ha itt valaki nyilvanosan elerhetove is tenne a modszert, ami gyanitom nem trivialis azt hiszem eleg nagy figyelmet kapna a dolog.
Kivancsinak kivancsi lennek, ra es ertem en az elmeletet, de gyakorlatban en meg nem lattam... Biztos rossz korokben mozgok (vagy tul _jo_ korokben)
A te esetednel mar csak az lenne cifrabb ha encrypted FS is lenne azokon a gepeken :)
- A hozzászóláshoz be kell jelentkezni
A VMWare hypervisorkent hozzafer a futo OS-hez a guest additionon keresztul, vagy hogyhijjak.
De FIXME.
- A hozzászóláshoz be kell jelentkezni
Egyreszt ugye mert ez elegge alaasna a cloud szolgaltatok / hypervisorok hitelesseget - ambar egyesek szerint ugye minden kinyerheto a futo gepbol, meg a betoltott SSH kulcsok is (legalabbis elmeletileg)...
El kell, hogy szomorítsalak, tetszőleges VM hoszt korlátlanul hozzáfér a benne futó guest-ek memóriájához. Innentől fogva pedig támadhatóvá válik tetszőleges kulcs, csak tudni kell, hogyan lehet megtalálni.
Lásd például: Don’t Forget Your Encryption Keys in Memory
Tehát bármelyik cloud szolgáltató dönthet készíthet egy snapshotot (memória + diszk) a nála éppen futó szerveredről úgy, hogy te ezt észre sem veszed. Hiába van tehát diszk titkosítás, innentől kezdve csak hozzáértés és idő kérdése csak a titkosítási kulcsok kinyerése. Ennek tükrében meglep, hogy a cégek nem tolnak fel minden VM-et a felőbe?
- A hozzászóláshoz be kell jelentkezni
Szenti ezt a beszelgetest ne kezdjuk ujra :) Ertem, tudom hidd el... De tessek itt az alkalom - lehet agyalni, segiteni az embernek... Szovegelni elmeleteket gyartani lehet, de a megvalositas nem olyan trivialis mint a mellekelt pelda is mutatja... Nem lehetetlen csak dog nehez... Mint minden mas. Es reszemrol pedig: "I rest my case..."
- A hozzászóláshoz be kell jelentkezni
Rendben. :)
BTW, én először root exploit irányból közelíteném meg a problémát, végül - ha ez nem jelentett megoldást - a klón + John kombóhoz folyamodnék.
- A hozzászóláshoz be kell jelentkezni
Se a rendszert nem ismerem, se az exploitot, de biztosan nem zavarnám meg a rendszert a működésben. Nagyon triviálisan hangzik. :)
- A hozzászóláshoz be kell jelentkezni
Ahogy már mások már kifejtették:
1. Aktuális rendszer klónozása, majd a klón megtámadása. A telepített szoftverek ismeretében olyan exploit keresése, amivel root jogosultságot lehet szerezni
3. Exploit futtatása, bejelentkezés root-ként, root jelszó kiütése
4. ???
5. Profit
- A hozzászóláshoz be kell jelentkezni
Ok, nekem csak az szúrt szemet hogy először. :)
Nem használtam még ilyet, lehet túldimenzionálom. Attól függ milyen persze. De ha nem tudom milyen, akkor nem tervezek vele.
Úgy mondanám:
-Először megnézem milyen exploitok vannak, ha tetszik valami, lehet ezt az utat választom.
- A hozzászóláshoz be kell jelentkezni
Ha a a vmware oldalarol nem megy.
Felterkepezed, hogy mi a helyzet. Ha ilyen a helyzet, akkor gondolom el is vannak hanyagolva. Ha egy semara illeszkednek, keresel egy kozos hibat, betorsz es lecsereled...
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Bruteforce. http://www.commandlinefu.com/commands/view/12554/mount-a-vmware-virtual…
(~100db fontos, bútolhatatlan vm..? Szép feladat. ;) )
- A hozzászóláshoz be kell jelentkezni
Ha annyira fontos, akkor időnként frissíteni is _kell_, az meg hozza az új kernelt, amihez reboot szükséges... És hogy egy vagy két reboot, az olyan mindegy, úgyhogy a reboot szükségességét már meg is ideologizáltuk :-D
- A hozzászóláshoz be kell jelentkezni
+1 :D
- A hozzászóláshoz be kell jelentkezni
Jó, jó... de még mindig túl sokan vannak, akiknél az arc mértéke az uptime...
- A hozzászóláshoz be kell jelentkezni
Ebben az esetben ez irreleváns, hiszen akinek ez arcméretet jelentene, az a korábbi gazdája a gépeknek, akit nem lehet elérni/előszedni, hogy ugyan már, mi volt a root jelszó ezen a "néhány" gépen...
Egyébként meg ahol az uptime mindenek felett, ott Ksplice, vagy épp KernelCare, oszt' jónapot. (Igen, ez nincs ingyen, de valamit valamiért...)
- A hozzászóláshoz be kell jelentkezni
Esetleg a VMware Tools poweroff/reboot custom scriptjeivel lehet játszani:
https://pubs.vmware.com/vsphere-50/index.jsp#com.vmware.vmtools.install…
https://pubs.vmware.com/vsphere-50/index.jsp?topic=%2Fcom.vmware.vmtool…
Ilyesmire gondolok (persze ha van legalább egy sudo hozzáférésed):
#Set root pwd
MYPASSWORD=$(echo EzAzUjPassw0rd)
echo $MYPASSWORD | passwd --stdin
- A hozzászóláshoz be kell jelentkezni
Nyilván nem ez a legégetőbb probléma, de ez mi a francnak kell?
MYPASSWORD=$(echo EzAzUjPassw0rd)
Illetve mivel nyújt ez többet, mint ez:
MYPASSWORD=EzAzUjPassw0rd
Mert az világos, hogy az első esetben lesz a jelszavam után egy ENTER is, de mivel az ezt követő echo | passwd -nél az echo paraméterét nem raktad idézőjelek közé, kb semmi jelentősége nincs a kéát ENTER-nek - legalábbis nem nagyon látom.
(Persze felfogható subnak is, mert megoldást az eredeti problémára nem tudok.)
- A hozzászóláshoz be kell jelentkezni
Megvártam, míg Te megkérdezed :)
------------------------
{0} ok boto
boto ?
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
clone, majd jelszo atir, clone indit grub parameterrel, jelszo atir, clon ujraindit, halokartya kikapcs elotte, regi gep leallit es kozbe clone elindit, max par sec-es kieses lehet, ha ez sok akkor kapjak be nagybol.....
--
http://szolarenergia.hu - A hálózat építést csak elkezdeni lehet, befejezni nem....
- A hozzászóláshoz be kell jelentkezni
A konzisztens klónozáshoz le kell állni. Nem, a snapshot nem lesz konzisztens, maximum fs szintjén, de az nagyon sok esetben édeskevés: http://hup.hu/node/147499?comments_per_page=9999#comment-1988660
- A hozzászóláshoz be kell jelentkezni
clon ujraindit,
Emiatt pedig a megoldásod semmiben nem különbözik hatásában egy sima újraindítástól: minden futó processz és élő TCP kapcsolat megy a levesbe - a posztoló pedig ezt el szerette volna kerülni...
- A hozzászóláshoz be kell jelentkezni
Másik (értsd normál) user és jelszó vagy SSH kulcs nincs esetleg valahol, amivel be lehet menni a gépekre?
Legrosszabb esetben ezeket ki lehet szedni egy snapshotból bootolt gépen és ha van sudo joga, akkor akár működhet is az összes node-on. Reméljük valaki ott felejtette valamelyik node-on a privát kulcsát :)
- A hozzászóláshoz be kell jelentkezni
Hát, VM introspekcióval lehet, hogy lehetne disznólkodni, de még tudtommal erre nincs kiforrott dolog.
- A hozzászóláshoz be kell jelentkezni
subscribe
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Főnöknek adni egy kilós kiszerelésű vazelint, hogy ugyan már kezdje el munkálkodni az előző üzemeltetőn, és ne a Te micsodáddal próbálja meg a frissen növekvő csalánt csapkodni.
Plusz adjon már az anyagból egy kicsit az ő főnökének is, mert hogy volt olyan pöcs, és nem fordított kellő figyelmet ennek a kezelésére.
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
1. VMWare guesten bash inditasa akarmilyen userrel
2. VMWare hoston a /dev/mem-ben rakeresni az 1) pontban inditott process process table entry-jere
3. VMWare hoston atirni az 1) pontban inditott process ownerjet a /dev/mem-ben egy magnesezett tu segitsegevel.
4. Az 1) pontban inditott bash shellben kiadni a "passwd root" magikus inkantaciot
5. ???
6. PROFIT
- A hozzászóláshoz be kell jelentkezni
Sajna a mágnesezett tűhöz sincs root acc-a.
- A hozzászóláshoz be kell jelentkezni
VMware, pls :)
- A hozzászóláshoz be kell jelentkezni
BTW
Van valamilyen account a VM-ekhez?
Local exploit esetleg, amivel root jogot lehet szerezni? :))
- A hozzászóláshoz be kell jelentkezni
Sziasztok,
Köszi a sok hozzászólást. :)
A helyzet erősen vicces, mert senki nem tud semmit, a régi emberek nincsenek sehol és default root login van minden linuxon. Szép, igaz? :)
Annyi könnyítést sikerült találnom, hogy messziről hunyorogva nézve bizonyos viselkedési jellemzők alapján a gépek max. 2-3 csoportba sorolhatók így most az a terv, hogy csoportonként keresek egy-egy random gépet, futtában leklónozom (konzisztencia nem számít), a klónt elbootolom és a klónon fogok john-nal, meg rainbow táblákkal próbálkozni és mondjuk egy hét futás után megnézzük, mi lett.
Egyébként tényleg úgy tudtam (ezek szerint rosszul), hogy pl. wmvaretools-szal bele lehet nyúlni a guest-be, ha nagyon kell.
Thx még1x!
- A hozzászóláshoz be kell jelentkezni
Ahhoz komolyan mit kellett elbaszni, hogy legyen 100 vm, amiről azt se lehet tudni mit csinál, de leállítani nem lehet őket még egy restart erejéig sem, és senki nem tudja, hogy kell belelépni rájuk?
Szerintem simán csak menekülj :D
- A hozzászóláshoz be kell jelentkezni
Erdemes opencl -t(is) hasznalani, ha vannak jo GPU -aid.
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
Szia!
Láttam, hogy a HUP-on egy srácnak problémái vannak a VMWare-es gépeivel. Mivel nem vagyok HUP tag, így válaszolni sem tudok neki, úgyhogy kérlek, ha van rá mód majd írd be neki a megoldást ide: http://hup.hu/node/147499
MEGOLDÁS:
1. Készítesz egy snapshot-ot az egyik virtuális gépről (a gép memóriája is legyen benne!).
2. Datastore Browser-ben megkeresed a kérdéses virtuális gépet és letöltöd az előző pontban létrehozott snapshot file-t a gépedre (.vmsn kiterjesztés).
3. Letöltöd a vmss2core programot (https://labs.vmware.com/flings/vmss2core).
4. Admin parancssorból kiadod a következő parancsot: "vmss2core -N SNAPSHOTFILE.vmsn". Ekkor létrejön egy másik vmss.core elnevezésű file a munkakönyvtárban.
5. Letöltöd a strings programot (https://technet.microsoft.com/en-us/sysinternals/strings.aspx).
6. Kiadod a következő parancsot: strings -a vmss.core > snapshotfile-strings.txt
7. Szövegszerkesztőben megnyitod a snapshotfile-strings.txt file-t és rákeresel első körben a passwd, password, psw stringekre, majd ha ez nem segített, akkor végigböngészed a file-t hátha találsz valamit, ami egy root jelszóra emlékeztet.(Én Win 7-et használok admin gépnek, nyilván linuxos megfelelői is vannak az említett programoknak.)
Köszönöm!
scottie
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Szép!
------------------------
{0} ok boto
boto ?
- A hozzászóláshoz be kell jelentkezni
Szépnek szép, de igazából hiába van memória dump, abban nem lesz meg a jelszó cleartextben.
- A hozzászóláshoz be kell jelentkezni
Konkrétan ez a jelszó valószínűleg nem. A felkiáltásom az eljárásnak szólt, ha nem is a konkrét problémát oldja meg.
------------------------
{0} ok boto
boto ?
- A hozzászóláshoz be kell jelentkezni
És ha talál egy vagy több:
$6$MHglbglkgLVU5iRi756c/c4IUo7vtOIv786tVV5rkuZRFTZJ/ect4CJkrKjtgLI86zPZboéuOpuOPZvo8674r4xS2u5irou
jellegű stringet egy másolatban, azzal mire megy?
Mondjuk tovább gondolva a dolgot, meg kéne nézni, hogy ssh-val root-ként be lehet- e jelentkezni. Ha igen, akkor a snapshotolt diszken meg kell nézni, hogy a root-nak van-e authorized_keys fájlja. Ha van, és van benne kulcs, akkor "csak" meg kell találni a párját - mondjuk a volt rendszergazda (többi gépen lévő) sima home-jában keresgélve priv/pub kulcspárokat.
Ehhez mondjuk sokat kell snapshot-olni és az így kapott vm-eket átnézni, és elég szigorú megkötés, hogy ssh-val be kell tudni jelentkezni root-ként.
A másik hasznos ötlet lehet a snapshot használatára a sudoers fájl átnyálazása - hátha van benne használható szabály...
- A hozzászóláshoz be kell jelentkezni
> 7. Szövegszerkesztőben megnyitod a snapshotfile-strings.txt file-t és rákeresel első körben a passwd, password, psw stringekre, majd ha ez nem segített, akkor végigböngészed a file-t hátha találsz valamit, ami egy root jelszóra emlékeztet.
Sem a diszken, sem a memoriaban nem fogja megtalalni a jelszot plain textben.
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Köszi, ez kb. a "klónozom, elindítom live CD-vel a klónt, john -nal megpróbálom feltörni a jelszót" módszerrel tűnik egyenértékűnek.
Bár én sem hiszem, hogy bárhol plain-ben ott lenne a root jelszó, mert minek?
- A hozzászóláshoz be kell jelentkezni
Legtobb jelszot kezelo program maniaja, hogy felulirja jelszot
a memoriaban amint lehet.
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
Ha a root jelszót tároló fájl cache-ben benn van, akkor elég lehet talán csak a memóriában átírni a jelszót (mármint a jelszó kripto-hash-jét). És ez pedig valahol a RAM-ban van, tehát a scottie által javasolt módszerrel talán megtalálható, és ha támogatja a VMWare a memóriaterület-felülírást, akkor meg is lehet csinálni, hogy felülvágjuk a jelszó-fájl cache-elt változatát egy ismert jelszó hash-jével. Utána a sudo működik az új jelszóval, és meg lehet változtatni a pass-t hivatalos úton.
- A hozzászóláshoz be kell jelentkezni
Valahogy (ne kérdezd hogyan) megkeresed a virtual disk fájlban a /bin/bash-nak a setuid-ját vagy valami hasonlót, és valahogy "on the fly" módosítod :)
- A hozzászóláshoz be kell jelentkezni
Csaxólok, hogy a bash immunis a setuid bekapcsolására... másik programot kéne találni erre a célra.
- A hozzászóláshoz be kell jelentkezni
:) Az általam leírtak közül nem próbáltam ki semmit. Csupán elmélet, de több esély van rá, mint feltörni egy jelszót.
- A hozzászóláshoz be kell jelentkezni
Ezt azért elmagyarázhatnád, lévén a setuidot nem az alkalmazás, hanem a kernel kezeli, szóval a bash kb annyit érez belőle, mint amikor én rootként indítom, vagy épp su/sudo segítségével.
- A hozzászóláshoz be kell jelentkezni
OT: OK, offlineban valaki elmagyarázta. Hát b@ssza meg a sok GNU-huszár.
- A hozzászóláshoz be kell jelentkezni
Tipp: ránéz az argv[0]-ra (vagy amire mutat) a filerendszerben, ha suid bit van, vernyog.
Ez volt?
- A hozzászóláshoz be kell jelentkezni
Forrást meg se néztem, nekem a funkcionalitás beépítésével van bajom. Ugyanis az alapszoftverek egy elég jelentős részéből lehet több-kevesebb macerával shellt futtatni, tehát akkor innentől kezdve ugyanezt a baromságot bele kéne építeni azokba is, különben kb semmi értelme a dolognak. (Azért remélem egy root-ként futtatott ed/ex/vi-ból indított shell nem kezd el nekem valami más júzerré váltani csak azért, hogy engem megvédjen.)
- A hozzászóláshoz be kell jelentkezni
Akkor szerintem meg mindig nem erted:)
- A hozzászóláshoz be kell jelentkezni
különben kb semmi értelme a dolognak.
De, van. Ha a vi-ra setuidot raksz, és a vi nincs erre felkészítve (értsd: meghagyja azt az állapotot, hogy euid != ruid, nem veszi fel a root jogokat), akkor amint a vi-ból meghívsz egy scriptet, az biztonsági kockázat lenne. Na a bash ezt lekezeli, és ugyanúgy eldobja az extra jogokat, mintha magára a bashra raktad volna a setuidot.
Ergó: kurva jó ez így - bármennyire frusztráló is, hogy nem tudsz setuid bash-t csinálni :D
- A hozzászóláshoz be kell jelentkezni
Nem, sokkal szofisztikáltabb: ha a real uid nem egyezik meg az effektívvel, akkor eldobja a jogait.
- A hozzászóláshoz be kell jelentkezni
Esetleg, ha egy rövid időre (néhány másodperc) meg lehetne fagyasztani a gépet, akkor fel lehetne mountolni a virtual disket a gazdagépen és csinálni valami "disznóságot".
- A hozzászóláshoz be kell jelentkezni
Vagy kozvetlenul belenyulhat a futo gep /etc/shadow -jaba is:
hash ismertre csereles -> gyorsan login -> hash visszacsere, hogy ne torjenek el az esetleges jelszora epulo automata dolgok (pl. backup, replication, monitoring scriptek (ha van olyan, ami nem kulccsal megy be...))
Kivulrol, read only modon megkeresi, hogy hol kerdeses adatsor, aztan kozvetlen oda dd-z, felmountolas nelkul. (dd seek=...)
Neheziti a dolgot, ha
- softraid van (tobb helyre kell dd-zni, checksumok elromlanak)
- zfs, btrfs (checksumok elromlanak, backup extentrol visszaallitja, vagy read error)
- encrypted block dev... :)
- A hozzászóláshoz be kell jelentkezni
Hali,
"Vagy kozvetlenul belenyulhat a futo gep /etc/shadow -jaba is:"
Pont ez a kérdés. Hogy hogyan nyúlok bele login nélkül virtualizáció irányából.
Onnantól már én is tudnám. :)
- A hozzászóláshoz be kell jelentkezni
Nincs 1:1 tutorial rá az biztos, de különböző példákból össze lehet rakni elméletben.
sudo mount vmware-server-flat.vmdk /tmp/test/ -o ro,loop=/dev/loop1,offset=32768 -t ntfs
filefrag -v /tmp/test/etc/shadow
dd ... of=/dev/loop1 ...
Kiindulásnak, aztán rendesen kitesztelni a módszert használat előtt.
A guest gépen meg valahogy ki kell rázni a read cache-ből a dolgokat(user-ként). Na, azt is érdemes előre kipróbálni.
- A hozzászóláshoz be kell jelentkezni
- Csinalsz egy snapshotot, rebootolod init=/bin/bash -sel, remeled, hogy nincs encrypted block dev.
- NEM csereled le a root jelszot, hogy a block device-on ne valtozzon a /etc/shadow helye!
- viszont belenezel a /etc/shadow file-ba, ki copy-pasteled a regi hash-t
- ujrainditod normalisan
- ezutan a host gepen valami ilyesmi:
grep --text --only-matching --byte-offset --fixed-strings "ide-jon-a-regi-hash" ide-jon-a-futo-vm-diszkje
Ez kiirja, hogy melyik byte offszeten kezdodik a kerdeses string.
Konnyen lehet, hogy tobb helyen meg fogja talalni, (mert tobbszor irtak a file-t es a filerendszer mashova tette, vagy amugy is COW a filerendszer (ZFS, btrfs), snapshot (akar LVM), stb.) ez esetben mindenhol bele kell majd nyulni, hogy eltalald a pont jot.
- Ez utan egy ismert jelszobol keszult hashre csereled (ezek a hash-sek egyseges hosszusaguak?) valami ilyesmivel:
echo -n "uj_hash" | dd of=ide-jon-a-futo-vm-diszkje bs=1 seek=ahol_a_grep_megtalalta
- Ezutan urja futtatod a grepet (az uj hash-sel), hogy ugyanott talalja-e meg, nem rontottad-e el. (off by one, soremeles, stb.) Elotte-utana egy darab ki dd-zesevel (bs=1 skip=...) es osszehasonlitasaval ellenorizd esetleg, hogy nem is nyultal-e tul, stb.
- Ha latszolag sikeresen lecserelted, megprobalsz beloginelni.
- talan muxik az ismert jelszo :)
- adsz magadnak bejarast (ssh kulcs), hasht visszacsereled a fentiek miatt, hatha valami epul a regi passwd-re.
Ugye ha tobb blockdevbol all a vm filerendszere (mert fizikai diszkek mentek a vmware ala, vagy iscsi, vagy nbd, stb.), netan pl. zfs/btrfs raid van, az szivasabb, de hasonlo modon lehet parhuzamosan is, ha mar begyakoroltad/scriptesitetted a dolgot.
Ha raid checksum vagy fs checksum hiba miatt nem megy a dolog, na az mar kemenyebb dio, az encrypted block dev meg meg kemenyebb...
- ha mar begyakoroltad/scriptesitetted a dolgot mehet elesben is. :)
- A hozzászóláshoz be kell jelentkezni
Az éles gépen hogy fog a blokkos eszközre direktben írni? :-P
- A hozzászóláshoz be kell jelentkezni
brutalisan bele dd-z a megfelelo helyre, nem ismerve se embert se istent
viszont -ahogy masok irtak is- a futo oprendszer bekesseli a shadow file-t, ugyhogy tenyleg elsore kell sikerulnie a loginnek (vagy ismeretlen ideju varakozas...)
A dd opcioi kozul kifelejtettem a conv=notrunc,sync -ot, szoval valahogy igy:
echo -n "uj_hash" | dd of=ide-jon-a-futo-vm-diszkje bs=1 seek=ahol_a_grep_megtalalta conv=notrunc,sync
- A hozzászóláshoz be kell jelentkezni
Szerinted uid -ne 0 esetén fog tudni direktben a blokkos eszközre írni? Erősen kétlem... Ha arra gondolsz, hogy a futó os diszkjét odaadja a másik vm-nek _is_, és onnan, akkor el kell, hogy keserítselek, ez nem fog menni.
- A hozzászóláshoz be kell jelentkezni
Arról nem volt szó hogy a gazda géphez van-e teljes hozzáférése. Bár mondjuk miért lenne. :) Jogos felvetés.
- A hozzászóláshoz be kell jelentkezni
A host gepekhez, vmware-hez hozzafer, csak a guest VM-ekbe nem tud bejutni. A hostokrol pedig bele tud irni a guest-ek block dev-jeibe.
Vagy mi a szitu, mogorva? Nem vagy root a vmware hostokon? Csak lekorlatozott konfig feluleted van?
- A hozzászóláshoz be kell jelentkezni
A hostokhoz full elérés van.
A guestekbe kellene bejutni.
- A hozzászóláshoz be kell jelentkezni
Na hat akkor probalkozhatsz a fent leirtak szerint.
- A hozzászóláshoz be kell jelentkezni
Nehezíti a dolgot, hogy a gép a diszk tartalmát cache-eli, ergó reboot nélkül nagyjából egyszer lehet próbálkozni.
- A hozzászóláshoz be kell jelentkezni
Ööö... izé... biztos fel kell ezt vállalnod? Szép, meg jó, meg minden, csak tele van olyan buktatóval, amiért a te farkadból fognak levágni pár centit, ahelyett, hogy az előző banda és/vagy a főnökeik farkából vágtak volna le.
Eszkaláld a problémát, vegyél egy kávét, dőlj hátra és élvezd a műsort...
- A hozzászóláshoz be kell jelentkezni
+1
Akar a jelszo valtoztatassal is eltorhetsz ennyi gepnel sokmindent. (service scriptek, backup, monitoring)
Ha valaki csak ugy otthagy 100 gepet, hogy senki se tud semmit, es utana nem is nyujt hozza semmi helpet, annak komoly oka lehet.
- A hozzászóláshoz be kell jelentkezni
Ha a root jelszó cseréje eltör valamit, akkor a következő, amit el kell törni, az ezt okozó scripteket elkövető mindkét keze. Nem drótozunk be root jelszót sehova.
- A hozzászóláshoz be kell jelentkezni
Na jó, csak ebben az esetben most az látszik, hogy az, hogy "valaki más volt a hülye, bocs" az nem jó védekezésnek, mert akkor ez az egész nem létezne :)
- A hozzászóláshoz be kell jelentkezni
Egyáltalán mennyit ér meg nekik, hogy ezt csinálja?
Egy klón nem vehetné át a gép szerepét, egy újraindítás erejéig? Miért nem? Akkor meg miért mégis igen?
- A hozzászóláshoz be kell jelentkezni
Nem kell vállalnom, lejelentettem, hogy ez így kb. lehetetlen.
Majd a T. Management hoz megfelelő döntést.
De érdekes volt elgondolkozni rajta.
- A hozzászóláshoz be kell jelentkezni
Eleve nem értem, hogy miért nem lehet megbootolni a gépeket. Az nem rendszer, ami nem viseli el az áramszünetet/rebootot. Márpedig akkor kényelmesen is be lehet menni rájuk.
- A hozzászóláshoz be kell jelentkezni
Ez kb az egyetlen helyes megoldás.
Megmondom őszintén, nagyot csalódtam volna a linuxok biztonságában, ha itt erre vmi értelmes válasz születik pikk-pakk.
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Diszk felcsatolása másik VM-ben (feltéve, hogy nem encrypted a disk/fs), és chroot után passwd?
Nem tudom VMWare enged-e olyat, hogy egy disk image-et több géphez is csatolhass.
- A hozzászóláshoz be kell jelentkezni
elég sanszos, hogy nem műxene - meg azért az eredeti gépen is r/w-ben megnyitott, nem osztott felhasználásra kitalált fs-en ez még ha működne is, olyan szépen haza tudná vágni az fs-t, hogy csoda.
- A hozzászóláshoz be kell jelentkezni
KVM-es futó gép qcow2 "diskjét" már csatoltam fel a hoston minden gond nélkül és simán lehetett írni/olvasni mindent, ami kellett (okát inkább ne firtassuk, de nem jelszó miatt :) ).
Gyanítom a VMWare-t is fel lehet valahogy.
Ha felcsatolta, akkor gány megoldásként egy másik gépen lévő passwd hash-t be lehetne tolni, aztán meg belépni. Így a root jelszót sem vágja haza, de mégis valahogy belépett rájuk. Nyilván nem árt egy sudo jogot is adni az újdonsült felhasználónak. De ha nem fél attól, hogy eltörik valami a root pass cseréje miatt, akkor lehet azt is cserélni közvetlenül.
Előtte egy mentés nem árthat a gépről.
szerk.: http://www.commandlinefu.com/commands/view/12554/mount-a-vmware-virtual…
- A hozzászóláshoz be kell jelentkezni
Nem lehet kétszer csatolni és amúgy is csak nagyon összekúrná a lemeztartalmat.
- A hozzászóláshoz be kell jelentkezni
működik, nekem is ez ugrott be elsőre, de mivel "fontos, leállíthatatlan" gépekről van szó, mégsem kockáztatnám meg, mert ugye a shared lock hiánya miatt a legnagyobb óvatosság mellett is okoz némi fájlrendszer sérülést, amit ugyan a következő reboot-nál az fsck megold, de éles rendszeren akkor is csak végső elkeseredésemben tenném.
- A hozzászóláshoz be kell jelentkezni
amit ugyan a következő reboot-nál az fsck megold
Vagy nem old. Esetleg akkorát crashel a nemvárt diszktartalom változás miatt a guest, hogy ihaj...
- A hozzászóláshoz be kell jelentkezni
persze, ha nagyot módosítasz rajta pl egy fsck lefuttatásával a második csatoláson vagy egyéb ilyen dőreséggel. De ha minimalistán mountolod, és egyetlen, általában statikus fájlban, a fájl hosszát nem növelő módon változtatsz valamit (= jó eséllyel nem módosít inode táblát), majd lemountolod, akkor nem sérül (jelentősen). Ez meg elég egy shadow vagy sudoers változtatáshoz.
(perverzek ugyanezt lejátszhatják hexa editorral a raw device-on és akkor tuti csak az a pár byte változik)
Továbbra is figyelmeztetés, ez nem megoldási javaslat!
- A hozzászóláshoz be kell jelentkezni
A /etc/shadow esetleges sérülését nem biztos, hogy díjazni fogja... És ha az fsck miatt single módot akar suloginnal, akkor erősen ott lesz a kolléga, mint a mádi honpolgár... Bár gyakorlatilag most is ez a helyzet, csak az fs látszólag rendben van. (Volt szerencsém olyan szerverhez, ami sok-sok ideje futott rendesen, aztán a reboot során olyan hátast dobott az fsck-n, hogy öröm volt nézni...
- A hozzászóláshoz be kell jelentkezni
Az init=/bin/bash ezen nem segít?
Gőzöm nincs mibe teszi a vmware a lemezképeket, de ha ilyen autoexpand cucc akkor lehet a hex editor se életbiztosítás.
Az egyetemen anno egyik srác megjátszotta ezt (a core ment az /etc/passwd-be) nem is engedett be utána senkit (egy darabig őt se gép közelébe). :D
- A hozzászóláshoz be kell jelentkezni
Ha a / rendben van, akkor segíthet,de ha a / van (nagyon) elgyakva, akkor csak a recovery cd/dvd jöhet számításba...
Lehet hexa editorral, meg mindenféle gányolással próbálkozni - egyetemen, laborban, kísérleti/teszt rendszerek esetében. Itt viszont nem erről van szó, hanem egy rakat éles, 7x24-es kiszolgálást végző virtuális gépről... Ilyen környezetben nem igazán célravezető azoknak a módszereknek a felfedezése, ahogy _nem_ oldható meg a probléma.
- A hozzászóláshoz be kell jelentkezni
De ha minimalistán mountolod
Persze. Csak nehéz úgy mountolni read-write-ra, hogy pl. a journalt ne pörgesse vissza - ergó tutkó biztosan bele fog barmolni a fájlrendszerbe.
A hex editoron kívül nem látok már megoldást a feladatra - és még úgy sem biztos, hogy nem sikerült elbaszni.
- A hozzászóláshoz be kell jelentkezni
Ahogy mondani szokás, innen szép nyerni.
- A hozzászóláshoz be kell jelentkezni
csak van valami dokumentáció arról a hálózatról, az admin gépen nem?
ha meg nincs, vagy akinek tudnia kellene, hogy hol van az sem tudja, akkor te ne izgasd magad emiatt, próbáld meg egy vélhetőleg kevésbé káros időpontban újraindítgatni a gépeket, elvégre te vagy a gazda, az van amit te mondasz, a többiek meg csak ugatják a dolgot, különben már megcsinálták volna.
ha ez így nem jó, akkor csinálják meg ők maguk :)
és nézz rájuk jó mogorván!! :)
- A hozzászóláshoz be kell jelentkezni
nemide
- A hozzászóláshoz be kell jelentkezni
Hátha:
gép lemásolása, sudoers fájl megnézése, nevesített, sudo joggal rendelkező felhasználók megkeresése, lefizetése/megfenyegetése. Gondolom nem egyetlen üzemeltetője volt 100 gépnek aki ráadásul root-ként lépett be.
- A hozzászóláshoz be kell jelentkezni
Es mi van, ha nem is tartolt jelszot a gepken, csak rsa kulcs volt :)
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
Sima user account van-e a gepekhez ?
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
nem vagyok egy vmware expert, de elso korben a jelszoval nemnagyon foglalkoznek.
Leklonoznam, a gepet es a klonozott gepen eloszor a /root/.ssh/authorized keys filet neznem meg.
ha van kulcs, akkor az eleg hosszu ahhoz, hogy egyertelmuen ra lehessen keresni, es egy ugyanolyan hosszu kulcsra kicsrelni valami diskeditorral.
tobben irtak, hogy a vmware imaget fel lehet mountolni, akkor plane elsore a kulccsret probalnam meg.
ha meg megis jelszofejtes a vege, akkor osszeszedem a kornyeken levo videokartyakat, es oclhashcat.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
ez az esxi root passjára vonatkozik, ráadásul livecdről újrabootolva, uh sajna nem lesz neki jó :)
- A hozzászóláshoz be kell jelentkezni
> [..] hogy a gépek rebootja nélkül [..]
Ez miert kovetelmeny?
Tudod, meg lehet valaszolni a kerdest, vagy meg lehet oldani a problemat... :)
- A hozzászóláshoz be kell jelentkezni
Talán ilyesmit?
https://youtu.be/ElggombHA8E?t=1655
http://wiki.xenproject.org/wiki/Virtual_Machine_Introspection
- A hozzászóláshoz be kell jelentkezni