Egy rövid kis írás, aminek a címe az is lehetne, hogy "Ráérsz? Nincs semmi dolgod? Akkor így változtass jelszót a routeren..."
Pár hete érdekes dolgok történtek a hálózaton, ezért úgy döntöttem, hogy minden eszközön amin lehet jelszót fogok cserélni. De gondoltam adok a biztonságra, úgyhogy hanyagoltam az Iroda1234 és a Godmode jelszavakat és helyettük generált 10-16 karakteres jelszavakat adtam meg mindenhol. Igen, a routeren is.
Az még hozzá tartozik a történethez, hogy nálunk a MikroTik azért ki van használva: rakat tűzfal szabály, vpn, 5-6 különböző hálózat összeroutolva, emellett Capsman és még sorolhatnám. Szóval, nem kevés konfiguráció ami több év alatt gyűlt össze.
Biztonsági mentés kb egy éve volt róla, de erre nem is gondoltam, mi baj lehetne egy jelszócseréből?!
Fogtam a KeePass-t és elkezdtem felvinni az új jelszavakat és ahogyan kell, mesterjelszóval levédtem a fájlt. Legalábbis azt hittem. Ahogy tettem-vettem, jött egyik telefon a másik után, el is feledkeztem a programról. Egy óvatlan pillanatban bezártam. Hát nem is mentett el egyetlen jelszót sem amiket módosítottam. Eltelt legalább 2 nap mire rájöttem, hogy befutottam tátott szájjal abba a bizonyos erdőbe.
Oké, nincs gond, rászánok pár órát és minden jelszó meglesz. Na igen, a linuxokkal nem is volt gond, de a routernél néztem magam elé, hogy most mi lesz.
Hiába van rajt a serial port, azon keresztül nem lehet hozzáférni, csak a RouterBoard bootloaderéhez.
És akkor itt legyen is egy tanulság: „Bízzál Istenben, tartsd szárazon a puskaport és ments rendszeresen!"
Mivel folyamatosan frissítettem mindegyiket eszközt, így az exploitos dolog sem jött be: https://github.com/BasuCert/WinboxPoC
Ez például az eddigi legnagyobb előkerült sebezhetősége az egész rendszernek. Távolról felhasználónév és jelszó ismerete nélkül megszerezhető az összes tárolt user/pass páros.
A másik, amit találtam az a www.mikrotikpasswordrecovery.net. Ez online képes backup fájlokat visszafejteni és kolvasni belőle a jelszavakat. Teszteltem, működik régebbi mentésekkel, de a 6.46-os verzió mentéséből már nem tudja visszafejteni a jelszót.
Megvolt az utólagos okoskodás is, úgyhogy arra jutottam visszaállítom az egy évvel ezelőtti mentés és megnézzük a hétfő reggeli munkakezdésnél, hogy kinek mi nem megy. A kollégák úgy működnek mint a sávozott raid a merevlemezeknél: Mindenkinél lesz némi információ és ebből helyre lehet mindent állítani.
Neki is ültem a dolognak, de a hw reset után azt vettem észre, hogy a RouterBoard készített egy auto-before-reset.backup fájlt. Eszembe jutott, hogy akár "részleges" visszaállítást is lehetne csinálni a backupból - nyilván ki kell hagyni a júzereket és az összes többit vissza lehetne tölteni.
Ez a backup fájl nem volt elkódolva, így nem kellett jelszó a kibontásához. Találtam egy pythonban írt kis toolt amivel pillanatok alatt idx és dat fájlokra lehet bontani a MikroTik backup állományát. (https://github.com/BigNerd95/RouterOS-Backup-Tools)
De nem csak erre jó. Azt íjrák, hogy a rendszer nem töröl véglegesen, azaz, ha mondjuk te kitörölsz valamit a Winbox-ból, vagy a Webbox-ból, akkor azt is vissza lehet állítani.
Fogtam, kicseréltem az users.idx és users.dat fájlt egy korábbi biztonsági mentésével. A python progival az egészet visszacsomagoltam .backup fájlnak és megetettem a RouterBoarddal. A következő indításra minden beállítás visszaállt a helyére és még a jelszavakat is tudtam.
Ha nincs korábbi mentésed amiből a jelszavakat ki lehetne szedni, akkor annyi a teendő, hogy a reset után beállítod azokat az usereket amik voltak a korábbi mentésben, adsz nekik egy új jelszót, majd kiemented a backupot. Utána ezt is kicsomagolod a python programmal és kicseréled az user.idx és user.dat fájlokat.
Mielőtt elkezded vadul resetelni a MikroTik-et, azért annak nézz utána, hogy minden eszköz készít-e ilyen biztonsági mentést hw reset esetén; őszintén nekem fogalmam sem volt róla.