Üdv,
Neten nem nagyon találtam választ.
Debian-hoz szeretnék olyan script-et vagy megoldást keresni, amelyet egy Live CD-ről futtatva ellenőrizni tudnám egy régóta működő - de viszont teljesen friss update-tel rendelkező rendszer binárisainak integritását.
Mindenképpen utólagos ellenőrzés érdekelne.
Nálam azért merül fel, mert több user rendszerét is karban tartom, ahol néhol több jogosúltságot kellett adnom, mint szerettem volna. Viszont egy ilyen egyszerű módszerrel könnyen infót kaphatnék arról, hogy a user telepítgetései során legalább a rendszer binárisok nem korruptak.
Gondolom csak felmerülhetett már másnál is ilyen igény. Néhány ötlet jól jönne hogy merre keresgessek :)
Mellékesen: FreeBSD-hez is létezhet ilyen?
(debsums, stealth nem megfelelő)
- 1966 megtekintés
Hozzászólások
Ha jol gondolom neked olyan kell ami az rpm alapu csomagokban van,hogy minden filerol az md5 alapjan tudja hogy valtozott-e.
pl:
Valtozas elott:
[root@fw ~]# rpm -Vv zip
........ /usr/bin/zip
........ /usr/bin/zipcloak
........ /usr/bin/zipnote
........ /usr/bin/zipsplit
........ /usr/share/doc/zip-2.31
........ d /usr/share/doc/zip-2.31/BUGS
........ d /usr/share/doc/zip-2.31/CHANGES
........ d /usr/share/doc/zip-2.31/LICENSE
........ d /usr/share/doc/zip-2.31/MANUAL
........ d /usr/share/doc/zip-2.31/README
........ d /usr/share/doc/zip-2.31/TODO
........ d /usr/share/doc/zip-2.31/WHATSNEW
........ d /usr/share/doc/zip-2.31/WHERE
........ d /usr/share/doc/zip-2.31/algorith.txt
........ d /usr/share/man/man1/zip.1.gz
[root@fw ~]# vi /usr/share/doc/zip-2.31/TODO
Utan:
[root@fw ~]# rpm -Vv zip
........ /usr/bin/zip
........ /usr/bin/zipcloak
........ /usr/bin/zipnote
........ /usr/bin/zipsplit
........ /usr/share/doc/zip-2.31
........ d /usr/share/doc/zip-2.31/BUGS
........ d /usr/share/doc/zip-2.31/CHANGES
........ d /usr/share/doc/zip-2.31/LICENSE
........ d /usr/share/doc/zip-2.31/MANUAL
........ d /usr/share/doc/zip-2.31/README
S.5....T d /usr/share/doc/zip-2.31/TODO
........ d /usr/share/doc/zip-2.31/WHATSNEW
........ d /usr/share/doc/zip-2.31/WHERE
........ d /usr/share/doc/zip-2.31/algorith.txt
........ d /usr/share/man/man1/zip.1.gz
deb alatt ilyen szerintem nincs, de javaslom, hogy ne adj telepitesi jogot az "usernek" mindenhova.
Az is felmegoldas, ha a fileket atnezed egy egyszeru find-el, hogy az adott napon ami neked gyanus valtoztak-e.
Udv
Szijártó Zoltán
Aki tud az alkot, aki nem tud az csak szövegel.
- A hozzászóláshoz be kell jelentkezni
Igen, ez így jó lenne, de úgy szeretném, hogy külső forráshoz hasonlítsa a fájlok hash-eit.
Mert pl. a debsums azt csinálja amit írtál, hogy a debian csomagban van egy .md5sums fájl md5 listával és ahhoz hasonlít, de ugye én azt preferálnám, ha nem a gépen lévő forráshoz hasonlítana, mert imho az is korruptálódhatott már.
- A hozzászóláshoz be kell jelentkezni
Ha meg van a referencia, akkor nem értem a kérdést....
legyen 1 referencia szerver és annak az állományia alapján ellenőrizz.
-TamsA-
- A hozzászóláshoz be kell jelentkezni
pontosítom hogyan képzelem:
1.) lista a telepített csomagokról
2.) csomagok állományinak md5sum-jainak begyűjtése (pl referencia rendszerről, vagy közvetlenül a telepítés után)
3.) md5sum-ok alapján rendszeres ellenőrzés
Ebből a 2. lépés időigényes és húzós lehet.
-TamsA-
- A hozzászóláshoz be kell jelentkezni
igen, pontosan ez kellene
- A hozzászóláshoz be kell jelentkezni
A referencia md5sum-okat nem lehet online beszerezni vajon a debian.org-ról? Sima txt fájlban az összes aktuális csomag verzió összes fájljának md5sum-ja? Sajna egyenlőre nem találok ilyen forrást..
- A hozzászóláshoz be kell jelentkezni
debsums -ca
Aztán ha külső forráshoz akarsz hasonlítani, csak a /var/lib/dpkg/info könyvtárat kell egy külső rendszerrel összehasonlítani, különösen az md5sums fileokat.
- A hozzászóláshoz be kell jelentkezni
Ez jó ötlet, viszont referencia gép felhasználása nélkül szeretném megoldani, mert sok fajta különböző konfig van amiken futtatni szeretném.
- A hozzászóláshoz be kell jelentkezni
Vagy az rkhunter, vagy a lynis tud valami ilyesmit, elérhetőek itt: http://www.rootkit.nl/
Ha mégsem, akkor léteznek file integrity checkerek, pl. http://www.debian-administration.org/articles/49
-------------------------
Trust is a weakness...
- A hozzászóláshoz be kell jelentkezni
Köszi a linkeket. Az utóbbin sok érdekes hozzászólás is volt (mint pl. az integrity ellenőrző binárisa és adatbázisa külső adattárolón való tárolása helyett e két fájl hash-ét tárolni másik gépen). De ezeket már rendszer telepítéskor telepíteni kell és felépíteni az adatbázist.
Az rkhunter meg ugye rootkit-eket keres. Én a bináris fájlok érintetlenségére vagyok kíváncsi.
- A hozzászóláshoz be kell jelentkezni
Ha csak a hash-t tárolod külső adathordozón, és azt látod, hogy a gépen megváltozott az állomány, akkor a hash-t finoman szólva a hajadra kenheted. Nem derül ki belőle, hogy mi, mikor és hogyan változott.
- A hozzászóláshoz be kell jelentkezni
Értem, de én utána már nem is loginolok be többé abba a rendszerbe, hanem merevlemez formázás következik.
- A hozzászóláshoz be kell jelentkezni
Ja, értem mire gondolsz. Akkor viszont úgy kell beconfigolni, hogy a file létrehozás/módosítás idejét, inode számot ne jegyezze fel, csak a méretet, checksumot.
- A hozzászóláshoz be kell jelentkezni
Na, addig eljutottam, hogy online van egy md5sums.gz ami tartalmazza a teljes debian disztribúció md5 ellenőrző összegeit. Ha minden igaz, elvileg ez a fájl alá van írva digitálisan a Release.gpg fájlban (ahogy kivettem, de még vizsgálom).
Az md5sum elérhető itt pl:
http://ftp.us.debian.org/debian/indices/md5sums.gz
(meg a /var/apt/lists-ben is van Release és Release.gpg, ez is ok)
Viszont ez ugye a .deb fájlok hash-eit tartalmazza. De ugye nekem a .deb csomag fájlon belüli fájlok md5-jei kellenek.
Járható út lenne vajon, ha írnék egy olyan script-et, amely megkeresi a .deb fájlt a gépen, annak ellenőrzi az integritását, majd kicsomagolom átmenetileg, és összevetem a benne található futtatható binárisokat a fájlrendszeren lévőkkel?
Közben látom hogy nem tárolódik az eredeti .deb fájl a gépen.
- A hozzászóláshoz be kell jelentkezni
A /var/lib/dpkg/info/*.md5sums fájlokból könnyen ki tudom greppelni a /bin és a többi könyvtárban lévő binárisok md5sum-jait és ellenőrizni. Eddig egyszerű lenne.
(szerk.: illetve gondolom pontosan ezt teszi a debsums).
Egy kérdésem lenne: hogyan tudnék megbizonyosodni arról egyszerűen, hogy a /var/lib/dpkg/info/ könytár tartalma eredeti értékeket mutat? Megtalálható vajon valahol ezekhez a fájlokhoz digitális aláírás online, vagy pedig a rendszeren?
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
tripwire, aide és samhain mind olyan összetevő, amiknek a telepítés után közvetlenül kell létrehozni az adatbázisát (imho így érdemes), és ahhoz lehet ellenőrzéskor viszonyítani.
- A hozzászóláshoz be kell jelentkezni
Es? Egy prod szerverre nem pakolaszik fel az ember minden masodpercben mindenfeleket. Kell rendes upgrade plan, upgrade elott force ellenorzes, gep netrol lekapcsol, apt mirrorszerverre rakapcsol, es apt-get upgrade.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Nem szerverről van szó, hanem desktop-ok karbantartásához szeretnék egy utólagos eljárást, hogy akár fél év múlva meg tudjak legalább a binárisok érintetlenségéről győződni (amit addig nem én használtam). Mert ha korrupt binárissal találkoznék, akkor nem nyúlok a rendszerhez, vagy újratelepítés. Korrupt rendszert nem érdemes javítgatni imho.
Szerveren persze az első telepítés után nálam pl. tripwire. Ott amúgy is csak én telepítek.
Nem életbevágó jelenleg, csak szeretnék a végére járni a dolognak. Karbantartok olyan desktop-okat, amelyeknél szükség volt root jog adására (vagy sudo jogot adnom). És ha esetleg karban kellene még tartanom, akkor jó lenne, ha egyetlen paranccsal meg tudnám hogy a binárisok jók-e. Mivel egyszerű user használja, ezért a rendszerben ezek után megbíznék. Illetve utána futtathatnék anti-rootkit progikat.
Néha kiküszöbölhetetlen, hogy saját jelszavakat használjak idegen rendszeren (ftp-hez, stb.). Persze van vagy 20 pwgen-es jelszavam, de ez egyike lenne néhány olyan megoldásnak, ami hosszú távon sokat spórolna.
- A hozzászóláshoz be kell jelentkezni
Nem igazán találok infót arról, hogy létezne hivatalos MD5SUMS lista az összes fájlról online, nem csak a .deb csomagokról.
Mivel a release verzión van md5 lista a fájlokról és csomagokról, és ez alá is van írva, eddig úgy gondolom a .deb csomag határozottan ellenőrizhető.
De miért nem generálnak le egy md5sum listát az összes csomag összes fájljáról, hogy ha 1 binárist be akarok azonosítani, akkor megtehessem egyszerűen?
Hát azt hittem hogy nagyobb igény van arra, hogy egyszerűen lehessen bináris integritást végezni olyan működő rendszeren, amelyen eredetileg nem volt ilyen telepítve és adatbázis létrehozva.
Amúgyis szar macerás a tripwire is, mert minden csomag frissítés előtt persze futtatni kell, aztán a frissítés után a tripwire adatbázist is frissíteni, meg persze szemmel figyelgetni hogy melyik konfig fájl változott.. (szerk.: meg ugye a tripwire bináris és adatbázis is érintetlen legyen és erről megbizonyosodni, lehetőleg külső adathordozón legyen vagy ellenőrizni a hash-t)
Ezzel szemben egy hivatalosan generált teljes md5 (vagy sha mindegy) listából egyértelműen meg lehetne határozni, hogy legalább a gyári binárisok közül korruptálódott-e valamelyik.
(meg persze alá is írhatnák ezt a fájlt).
Ti mit csináltok, ha egy rendszerről meg kell állapítani, hogy a binárisai rendben vannak-e?
- A hozzászóláshoz be kell jelentkezni
Ti mit csináltok, ha egy rendszerről meg kell állapítani, hogy a binárisai rendben vannak-e?
1. egy adott bináris beazonosítása: dlocate -md5check $csomagnev
2. aptitude install tiger. tiger
De miért nem generálnak le egy md5sum listát az összes csomag összes fájljáról, hogy ha 1 binárist be akarok azonosítani, akkor megtehessem egyszerűen?
dpkg -S el kikeresed a csomagnevet, és dlocate -m5check a csomagra ami azt tartalmazza.
Megtalálható vajon valahol ezekhez a fájlokhoz digitális aláírás online, vagy pedig a rendszeren?
Ez lesz a bukó része a dolognak, mert ezek a fájlok nem részei a normál csomagtartalomnak, így dig aláírásuk sincs.
Ezek a fájlok egyébként túlnyomórészt prerm/postinst szkriptek, melyeket a dpkg az adott csomag telepítésekor/eltávolításakor futtat. futtatás előtt ugye kicsomagolás alapjáraton felülcsapja a tartalmat.
tehát ha mondjuk én átírom a iceweasel postinst szkriptjét, az akkor fut le, ha iceweasel (újra)települ, az aptitude reinstall, viszont eleve felülcsapja a postinst szkriptet a kicsomagolás során , tehát a korábbi "módosított" verziót a "hivatalossal.
Csak akkor nem, ha létrehozok egy olyan csomaghoz postinst szkriptet, amihez amúgy nincsen. (nem minden csomaghoz van).
Bár ha ilyen helyre van írási joga akinek nem kéne, és ilyen fájlokat létre tud hozni, akkor már úgyis root , és becseszett.. ;-)
----------------
20:45 < Mizu> amiota ubuntu van azota csinalja
20:45 < Mizu> debian alatt nem csinalta
20:45 < Mizu> ott mukodott faszan
- A hozzászóláshoz be kell jelentkezni
tiger jónak tűnik, áttekinthető report-ot generált, köszi a tippet.
Azt hiszem attól függetlenül még tovább keresem a megoldást a teljesen megbízható utólagos integritás ellenőrzésre. Ha más nem, akkor megírom majd a script-et, ami egy telepítő DVD-ből megcsinálja a teljes md5sum listát, majd a rendszer binárisokkal összehasonlítja.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Köszi, megnézem.
- A hozzászóláshoz be kell jelentkezni
Érdekes progi. Ahogy látom sajna nincs benne a debian-os repoban. Attól függetlenül jól lefordult.
- A hozzászóláshoz be kell jelentkezni
Végül írtam egy saját script-et a megoldásként.
- A hozzászóláshoz be kell jelentkezni