AZ INFORMATIKAI BIZTONSÁG SPECIÁLIS TÉMAKÖREI Hungarian Cyber Security Package Napló üzenetek menedzsmentje Höltzl Péter
Miről lesz szó? Bevezetés Naplók fajtái, napló bejegyzések keletkezési helyei, naplók keletkezése, tárolása és elemzése Napló menedzsment infrastruktúra Syslog alrendszerek, napló bejegyzések gyűjtése, továbbítása és tárolása Napló menedzsment tervezés Napló menedzsment rendszerek tervezési szempontja és feladatai Napló menedzsment rendszer üzemeltetése Napló menedzsment rendszer telepítési lépései és üzemeltetési feladatai 2
Mi a napló? Mi készít bejegyzést? Miért kell naplózni? A felvetődő kérdések, problémák Bevezetés
Mi a napló? A napló egy jegyzőkönyv (record) ami a szervezet rendszerein és hálózatán történt eseményeket dokumentálja: A naplók bejegyzésekből (entry) állnak Minden bejegyzés információt tartalmaz egy eseményről (event) ami a rendszerben vagy a hálózaton történt A naplózás célja régen: Hibajavítás Rendszer optimalizálása Napjainkban: Jogos és jogtalan felhasználói aktivitás Belső és külső előírás, kötelezettség
Napló bejegyzése fajtái Hol keletkeznek a bejegyzések? Biztonsági szoftverek (pl. antivírusok, spyware keresők) Az operációs rendszer (szerverek, munkaállomások) Tűzfalak, (n)ids-ek, IPS-ek Aktív eszközök: routerek, switchek A bejegyzések fajtái: Biztonsági szoftverek bejegyzései Operációs rendszer és applikációs bejegyzések, amelyek normál működési naplókat és biztonsági bejegyzéseket is tartalmazhatnak
Biztonsági szoftverek naplói Egy vállalati rendszer biztonsági szoftverei, rendszerei: Antimalware szoftverek (vírus, spyware, bot, trójai) IDS/IPS-ek Távoli hozzáférést elősegítő szoftverek (VPN kliensek) Web cache-ek (proxyk) Sérülékenység menedzsment szoftverek Autentikációs szerverek Routerek, switchek Tűzfalak Hálózati karantén szerverek
Operációs rendszerek naplói Esemény (event) naplók: A működési események bejegyzései (shutdown, boot stb) Tipikusan csak a sikertelen eseményeket és a legfontosabb eseményeket rögzíti (kevéssé részletes) Időpecsételt, tartalmazza az eseményt, a státuszát, a hibakódját, a szolgáltatás nevét és hozzákapcsolható felhasználói azonosítót. Audit rekordok: A biztonsággal kapcsolatos események bejegyzése Tipikusan az autentikációval és jogosultsággal kapcsolatos eseményeket rögzíti (sikertelen autentikáció, felhasználói adatbázis módosulása, jogosultság változás vagy használat) Beállítható, hogy a rendszer milyen eseményeket rögzítsen.
Alkalmazások naplói A futó alkalmazások saját naplókat kezelhetnek (akár az OS naplózási alrendszerét igénybe véve) Kliens kérések és szerver válaszok: események sorrendjét, felhasználókat (belépett felhasználó), kérések paramétereit (pl. URL) stb. Account információk: sikeres és sikertelen autentikációs próbálkozások, jogosultságok használata. Információk a használatról: tranzakciók száma és jellege. Jelentős események naplója: leállítás, indítás, alkalmazási hibák, konfiguráció módosulása stb.
Miért van igény a napló menedzsmentre A rendszeres (rutinszerű) log ellenőrzés kimutathatja: biztonsági eseményeket, incitenseket policy sértéseket csalásokat operációs problémákat optimalizációs problémákat Továbbá használható: audit Forensics analízisre
Külső kényszer (kötelezettség) is: Külföld: Federal Information Security Management Act (FISMA) 2002 Gramm-Leach-Bliley Act (GLBA) Health Insurance Portability and Accountability Act (HIPPA) Sarbanses-Oxley Act (SOX) Payment Card Industry Data Security Standard (PCI DSS) Basel II Belföld: PSZAF
Felvetődő problémák Nagy mennyiségű és változékony források Helyi fájlok, adatbázis és egyéb tárolási formák, helyek Inkonzisztens tartalom Általában tartalmaznak IP-t, felhasználói nevet stb., de nem minden esetben és csak a legszükségesebbeket Nehéz megtalálni az összetartozó üzeneteket Inkonzisztens időpecsétek változó időpecsét formátum változó (általában hiányos) időpecsét tartalom Inkonzisztens formátum szöveges és bináris tárolás különféle formátum típusok
A naplózó rendszerek védelme A napló bejegyzések esetében is garantálni kell az adatok Bizalmasságát Sértetlenségét Rendelkezésre állását Hitelességét Napló elemzés, ellenőrzés: Általában alacsony prioritással rendelkező feladat Kevés a napló elemzéshez értő, képzett munkatárs Vannak megfelelő elemző eszközök Általában népszerűtlen (unalmas) feladat
Megfelelés a problémákra Minden vállalatnak meg kell felelni a napló kezelés követelményeinek, ehhez eljárás rendeket és szabályokat kell hozni: Priorizálnia kell a naplókezelési feladatot Telepíteni és üzemeltetni kell napló menedzsment infrastruktúrát Megfelelő támogatást kell nyújtania a naplómenedzsmenthez kötődő feladatok ellátására Szabályozott napló menedzsment folyamatokat kell készítenie
Napló menedzsment infrastruktúra A napló menedzsment infrastruktúra felépítése Az architektúra Funkciók Syslog alapú naplózás Event alapú naplózás Egyéb eszközök
Az architektúra Napló készítés, generálás: egyes alkalmazások, rendszerek alkalmasak a naplóik elküldésére, másokról le kell azokat tölteni (megfelelő autenikáció után) Napló analízis és tárolás: a keletkezett naplókat (lehetőleg) központilag gyűjteni kell, majd elemezni kell. Az ilyen szervereket naplógyűjtőnek (collector) vagy aggregátornak nevezik. A naplókat a helyi fájlrendszeren vagy adatbázisban tárolják Napló monitorozás: A begyűjtött naplókat rendszeresen ellenőrizni kell (valamilyen automatizált folyamattal) és jelentéseket (report) kell készíteni.
Funkciók Általános funkciók: Parsolás (értelmezés): célja, hogy a beérkező naplókból olyan formátumot hozzon létre, ami a megfelelő elemzést lehetővé teszi (pl. IP-címek kiválogatása) Esemény szűrés: csak a releváns információt tartalmazó bejegyzések kiválogatása az elemzés számára Esemény összevonás: a sokszor előforduló üzenetek összevonása (pl. csak az esemény számossága az érdekes hibás bejelentkezések száma)
Funkciók Tárolás: Rotálás: a naplók méretének kordában tartása érdekében a naplókat forgatni kell (óránként, naponta, hetente vagy havonta) Fontos, hogy mi történik a korábbi naplókkal (generációk) Archiválás: a már nem fontos naplókat archiválni kell (valamilyen eszközre szallag, DVD etc) Tömörítés: file tömörítés Csökkentés: az információ értékkel nem rendelkező bejegyzések eltávolítása Konverzió: a log elemezhető (egységes) formátumra alakítása Normalizálás: a naplókban szereplő adat formátumok egységesítése (pl. időpecsét egységesítés) Integritás ellenőrzés: a bejegyzés rossz szándékú változtatásának ellenőrzése
Funkciók Elemzés: Esemény koreláció: Megtalálni a kölönböző hostok és alkalmazások által készített, de valamilyen szempontból összetartozó üzeneteit Napló megjelenítés: a bejegyzések megjelenítése (színezés, rendezés stb) Reporting: Az elemzés eredményének megjelenítése valamilyen általános formában Törlés: Napló törlés: azoknak az üzeneteknek az eltávolítása, amelyek már nem rendelkeznek érdemi információkkal (természetesen az archívumban ezek is megmaradhatnak)
A syslog Hagyományos, eredetileg UNIX rendszereken bevezetett syslog formátum (RFC3195) A syslog formátum: <PRI>: facility és priority <HEADER>: időpecsét hostnév programnév pid <MSG> Pl: Aug 6 08:11:36 vidor sshd[5069]: Server listening on :: port 22.
A syslog biztonsága A syslog protokoll nem garantálja: Az átvitel megbízhatósága: UDP protokoll használat Nincs egyedi azonosító, az elveszett bejegyzések nem azonosíthatóak, nem sorba rendezhetőek Hiányos időpecsét formátum (nincs időzóna, sem év!) Többsoros üzeneteket nem kezeli Az átvitel bizalmassága, sértetlensége és hitelessége: Nincs rejtjelezés, a forgalom lehallgatható, módosítható (MITM) Nincs digest (CRC, MAC, md5sum)
A syslog biztonsága Ezért vannak alkamazások, amik megoldják ezeket Robusztus szűrés: az eredeti megvalósítások csak facilityre és prioritire szűrnek Elemzés: hagyományosan ez nem napó kezelő rendszer feladata, de vannak erre képes szerverek is Esemény kezelés (alerting): minták alapján egyes események után riasztás küldése (pl. SNMP trap) Alternatív formátumok kezelése: a nem syslog formátumú üzenetek fogadása (esetleg konvertálása) Rejtjelezés: mind a hálózati protokoll, mind a tárolás rejtjelezése Tárolás adatbázisban: egyes alakamazások SQL adatbázisban tárolják a bejegyzéseket Rate limiting: bizonyos esetekben (pl. TCP) lehetőség van az elárasztás elleni védelemre (lehetséges DOS)
Az új syslog protokoll Az eredeti RFC továbbfejlesztése (draft RFC sincs): Egységes időpecsét kezelés (ISODATE, időzóna kezelés) Többsoros üzenetek kezelése UTF-8 kezelés Egyedi üzenet azonosítás TCP protokoll és TLS támogatás Egy példa: <7>1 2006-10-29T01:59:59.156Z mymachine.example.com evntslog - ID47 [examplesdid@0 iut=\"3\" eventsource=\"application\" eventid=\"1011\"] [examplepriority@0 class=\"high\"] BOMAn application event log entry...
Rendszer információ és esemény menedzsment Security Information and Event Management (SIEM): alternatív megoldás régi syslog protokoll kiváltására, mely két módszert támogat: Agent nélküli gyűjtés: a kliens közvetlenül küldi a szervernek az üzeneteket, vagy a szerver periodikusan begyűjti azokat (különbség a transzfer kezdeményezője) Agent alapú gyűjtés: a kliensen futó agent gyűjti és továbbítja az üzeneteket a szerverbe. A szűrést, konverziót az agent végzi (elosztott terhelés) A SIEM nem egy alternatív syslog protokoll, tehát a napló átvitel megoldásfüggő
Egyéb logmenedzsment alkalmazások Host alapú IDS-ek: online monitorozó rendszerek, melyek közvetlenül a szervereken futnak és rossz szándékú behatolásokat keresnek (a víruskeresőkhöz hasonlóan). Ezek az alkalmazások szolgálhatnak log forrásként is. Vizualizációs alkalmazások: a naplók megjelenítésére szolgáló grafikus alkalmazások. Napló forgató alkalmazások: megakadályozzák a túl nagy méretű naplók készítését. Napló konverziós alkalmazások: a különböző napló formátumok közötti konverziót megvalósító alkalmazások
Napló menedzsment tervezés Naplómenedzsment feladatok tervezési lépései nagyvállalati környezetben: Szerepek és felelősségi körök tervezése Naplózási politika meghatározása A politika megfelelőségének ellenőrzése Napló menedzsment infrastruktúra tervezése
Szerepek, felelősségi körök Előforduló szerepek és felelősségi körök nagyvállalatik környezetben: Rendszer és hálózati adminisztrátorok: felelősségük, hogy a rendszerk úgy legyenek beállítva, hogy készítsenek napló bejegyzéseket Biztonsági adminisztrátorok: feladatuk a logmenedzsment infrastruktúra üzemeltetése, felügyelete Computer Security Incident Response Teams (CSIRT): inciden esetén a biztonsági események naplóit ellenőrzik Alkalmazás feljesztők: olyan alkalmazások tervezése és fejlesztése amelyek megfelelő naplóbejegyzéseket írnak Chief Information Officer (CIO): átlátja a rendszet, ahol naplók keletkeznek és tárolódnak Auditorok: audit során ellerőzik a naplókat
Naplózási politika A naplózási politikának rendelkeznie kell A napló generálásról: milyen és mely hosztok készítsenek, milyen eseményekről, milyen gyakorisággal kell bejegyzéseket készíteni A napló átvitelre: milyen és mely hosztok, milyen eseményekről, milyen gyakorisággal kell bejegyzéseket készíteni A napló tárolásra és törlésre: a tárolás és forgatás módjáról és időtartamáról valamint az archíválás módjáról A napló elemzésre: az elemzések módjáról, üzemezéséről és az eredmények hozzáférhetőségéről (személyekről és szerepekről) továbbá a naplózás hitelességének, bizalmasságának, sértetlenségének és rendelkezésre állásának védelméről
A politika megfelelőségének ellenőrzése A politikát rendszeresen (periodikusan) ellenőrizni kell A meglévő üzenetek megfelelnek -e a felállított követelményeknek Megfelel -e a beérkező naplók mennyisége (Túl kevés? Esetleg nem okoznak túl nagy terhelést a rendszer számára?) Elég rugalmas -e a rendszer (pl. egy upgrade gyökeresen változtathat a naplók mennyiségén, formátumán) A megfelelő elemzések és riportok készülnek? Megfelelnek -e a külső (pl. törvényi) szabályozásnak?
Napló menedzsment infrastruktúra tervezése Az infrastruktúra feladata, hogy megfeleljen a szabályzás által felállított követelményeknek. A tervezés során ellenőrizni kell: A legnagyobb terhelést elbírja -e a rendszer Legnagyobb terheléskor milyen hálózati forgalomra lehet számítani Online és offline adat használat Biztonsági igények a naplótárolásban és átvitelben Idő és erőforrások amit biztosítani kell a rendszer üzemeltetésekor
Napló menedzsment rendszer üzemeltetése Log források beállítása és log készítés Log tárolás és törlés Log biztonság Elemzés és válasz menedzsment Archiválás További üzemeltetési feladatok
Log források beállítása és készítés A megfelelő alkalmazások telepítése SIEM kliensek Syslog kliensek Beállítás: A futtatott alkalmazások és az operációs rendszer beállítása, hogy készüljenek napló bejegyzések Tesztelés
Napló tárolás és törlés A napló bejegyzésekről el be kell sorolni a következő kategóriákba: Nem tárolt: az olyan üzenetek, amelyek kevés jelentőséggel bírnak Rendszer szinten tárolt: azok az üzenetek, amik csak helyi szinten értékesek Rendszer és infrastrukturális szinten tárolt: a legfontosabb bejegyzések: védelem a rendszerszintű hibák ellen védelem szándékos törlés és módosítás ellen további (központi) elemzésre szánt üzenetek Csak infrastrukturális szinten tárolt: olyan rendszereken, ahol az a bejegyzések infrastrukturálisan értékesek és nincs erőforrás a helyi tárolásra (pl. router)
Napló tárolás és törlés Naplózás esetén kiemelt figyelemmel kell követni: Naplózás leállítása: többnyire elfogadhatatlan esemény (felügyelt üzemeltetési időszakok kivételével) Naplók felülírása: ez alacsony prioritású vagy indifferens naplóknál elfogadható, illetve kliensen ha a naplókat infrastrukturális szinten is tároltuk A napló generátor leállítása: napló kritikus helyeken ha nincs naplózás (pl. elfogyott a tároló hely) a napló generálást és a szolágáltatást le kell állítani
Napló biztonság A naplózó infrastruktúránál a következő beállításokat kell megtenni: Jogosultságok beállítása a naplók hozzáféréséhez A szükségtelen információk tárolásának elkerülése (pl. jelszavak) Az archivált fájlok védelme (rejtjelezés és törlés elleni védelem) A napló készítés és folyamatának biztosítása (rossz szándékú módosítás ellen) A naplók átvitelének biztosítása. Amennyiben a naplózó alkalmazás ez nem garantálja, harmadik eszközzel (SSL vagy IPSec VPN kell megoldani)
Elemzés és válasz menedzsment Elemzés: Naplók begyűjtése és értelmezése: a kulcs az ismert események felismerése Priorizálás: a eseményekről el kell dönteni, hogy milyen jelentőséggel bír Rendszer szintű analízis: csak az adott rendszer eseményeinek kiértékelése Infrastruktúra szintű analízis: a teljes infrastruktúrában keletkezett üzenetek elemzése A felismert eseményekre megfelelőképpen reagálni kell (CSIRT)
Archiválás A már jelen pillanatban jelentéssel nem bíró üzeneteket archiválni kell: Az archiválás formátumának megválasztása Archiválás Az archivált adatok integritásának ellenőrzése A média biztonságos tárolása Törlés
További üzemeltetési feladatok A naplózás monitorozása: beérkező mennyiségek A napló forgatás monitorozása Frissítések ellenőrzése és telepítése Rendszerórák szinkronizálása Beállítások finomhangolása Anomáliák érzékelése és felderítése (jelenthet támadást) Teljesítmény teszt
Miről volt szó? Bevezetés Naplók fajtái, napló bejegyzések keletkezési helyei, naplók keletkezése, tárolása és elemzése Napló menedzsment infrastruktúra Syslog alrendszerek, napló bejegyzések gyűjtése, továbbítása és tárolása Napló menedzsment tervezés Napló menedzsment rendszerek tervezési szempontja és feladatai Napló menedzsment rendszer üzemeltetése Napló menedzsment rendszer telepítési lépései és üzemeltetési feladatai 38