Az alkalmazásprofilok készítésének első lépései Az alkalmazásprofilok készítésének első lépései

A Novell AppArmor sikeres alkalmazása az alábbiak gondos elvégzéséből áll:

  1. Határozza meg, mely alkalmazásokhoz kíván profilt készíteni. Erről további részletek: 43.3.1. szakasz - A profilírozandó alkalmazások kiválasztása.

  2. Készítse el a szükséges profilokat. Ennek vázlatos leírása: 43.3.2. szakasz - Profilok készítése és módosítása. Ellenőrizze az eredményeket és ha szükséges, módosítsa a profilokat.

  3. Figyelje, hogy mi történik a rendszeren: futtassa az AppArmor jelentéseit és reagáljon a biztonsági eseményekre. További információk: 43.3.3. szakasz - Novell AppArmor eseményértesítések és jelentések beállítása.

  4. Frissítse a profilokat, ha a környezet változik, vagy ha reagálni kell az AppArmor jelentéskészítő eszköze által naplózott biztonsági eseményekre. További információk: 43.3.4. szakasz - Profilok frissítése.

A profilírozandó alkalmazások kiválasztásaA profilírozandó alkalmazások kiválasztása

Csak azokat a programokat kell védeni, amelyek az adott rendszerben támadásnak vannak kitéve, vagyis csak azokhoz az alkalmazásokhoz kell profilokat készíteni, amelyeket valóban használ is. A legesélyesebb programok meghatározásában segít az alábbi lista:

Hálózati ügynökök

A nyitott hálózati portokat kezelő programok (kiszolgálók és kliensek egyaránt). A felhasználói kliensprogramok, például a levelezőkliensek vagy a webböngészők jogosultságait ki lehet használni. Ezek a programok jogosultak írni a felhasználó saját könyvtárát, ugyanakkor potenciálisan veszélyes távoli forrásokból érkező bemeneteket dolgoznak fel (például webhelyek, vagy e-mailben elküldött rosszindulatú kódok).

Webes alkalmazások

A webböngészővel meghívható programok, például CGI Perl parancsfájlok, PHP-oldalak és egyéb, komplex webes alkalmazások.

Cron-nal futtatott feladatok

Olyan programok, amelyeket a cron démon futtat rendszeresen, különféle forrásokból.

Ha meg akarja állapítani, hogy éppen mely portok futnak nyitott hálózati portokkal, és melyekhez lehet szükség profil készítésére, indítsa el root felhasználóként az aa-unconfined programot.

43.1. példa - Az aa-unconfined program kimenete

19848 /usr/sbin/cupsd not confined
19887 /usr/sbin/sshd not confined
19947 /usr/lib/postfix/master not confined
29205 /usr/sbin/sshd confined by '/usr/sbin/sshd (enforce)'

A fenti példa minden nem korlátozott-nak jelölt folyamatát érdemes lehet egy egyéni profillal korlátozni. A korlátozza címkéjű programokat már védi az AppArmor.

[Tip]További információk

További információ a profilírozandó alkalmazások kiválasztásáról. „Determining Programs to Immunize” szakasz (1. fejezet - Immunizing Programs, ↑Novell AppArmor adminisztrátori kézikönyv).

Profilok készítése és módosításaProfilok készítése és módosítása

A SUSE Linux Enterprise rendszeren futó Novell AppArmor egy sor előre elkészített profilt tartalmaz a legfontosabb alkalmazásokhoz. Ezenfelül az AppArmorral természetesen bármely alkalmazáshoz készíthetők saját profilok.

A profilok kezelésének két módja létezik. Az egyik a YaST Novell AppArmor modulok grafikus felületének, a másik az AppArmor csomag parancssori eszközeinek használata. Mindkét módszer lényegében hasonlóan működik.

Az aa-unconfined futtatása a leírt módon (43.3.1. szakasz - A profilírozandó alkalmazások kiválasztása) azonosít egy sor alkalmazást, amelyekhez célszerű lehet profilt készíteni.

Az egyes alkalmazások profiljai az alábbi lépésekkel készíthetők el:

  1. Root felhasználóként készíttessen az AppArmorral egy durva alkalmazásprofilt: futtassa le az aa-genprof program_neve parancsot.

    vagy

    A durva alapprofil a YaST+Novell AppArmor+Profil hozzáadása varázsló futtatásával és a profilírozandó alkalmazás teljes elérési útjának megadásával is elkészíthető.

    Elkészül az alapprofil, és az AppArmor tanulási módba vált. Ez azt jelenti, hogy naplózza a végrehajtott programok minden tevékenységét, de még nem korlátozza őket.

  2. Használja az alkalmazás összes műveletét, hogy az AppArmor pontos képet kapjon róluk.

  3. Elemeztesse az AppArmorral az előállított naplófájlokat (Lépés 2): az aa-genprof programban írja be, hogy S.

    vagy

    A naplófájlok elemzésének másik módja a Profil hozzáadása varázsló AppArmor események keresése a rendszernaplóban pontjára kattintás, és a varázsló útmutatásának követése, amíg a profil el nem készül.

    Az AppArmor megvizsgálja az alkalmazás futtatása során készített naplókat, és felszólít, hogy adja meg a hozzáférési jogokat minden egyes naplózott eseményhez. Vagy adja meg őket fájlonként, vagy használjon helyettesítő karaktereket.

  4. Az alkalmazás bonyolultságától függően szükség lehet a Lépés 2 és Lépés 3 részek megismétlésére. Korlátozza az alkalmazást, hajtsa végre a korlátozott körülmények között, és vizsgálja meg az újonnan naplózott eseményeket. Az alkalmazás teljes funkciókörének korlátozásához lehet, hogy ezt az eljárást többször is meg kell ismételni.

  5. Ha minden hozzáférési jogosultságot sikerült beállítani, kapcsolja a profilt kényszerítés módba. A profil ezután élesben működik és az AppArmor az imént létrehozott profil beállításainak megfelelően korlátozza az alkalmazást.

    Ha egy olyan alkalmazáson indította el az aa-genprof parancsot, amelynek már volt egy panasz módba állított meglévő profilja, akkor ez a profil tanulási módban marad egész addig, amíg ki nem lép a tanulási ciklusból. További információ a profilok módjának megváltoztatásáról: „aa-complain—Entering Complain or Learning Mode” szakasz (4. fejezet - Building Profiles from the Command Line, ↑Novell AppArmor adminisztrátori kézikönyv) és „aa-enforce—Entering Enforce Mode” szakasz (4. fejezet - Building Profiles from the Command Line, ↑Novell AppArmor adminisztrátori kézikönyv).

Próbálja ki a profil beállításait: hajtson végre minden szükséges műveletet az imént korlátozott alkalmazással. Normális esetben a korlátozott program simán fut és észre sem venni, hogy az AppArmor működik. Ha azonban rendellenességeket tapasztal az alkalmazás működése kapcsán, akkor ellenőrizze a rendszernaplókat és nézze meg, hogy nem túl szigorúan korlátozza-e az AppArmor az alkalmazást. A rendszeren használt naplózási mechanizmustól függően több helyen is lehet keresni AppArmor naplóbejegyzéseket:

/var/log/audit/audit.log

Ha az audit csomag telepítve van és fut is az auditd, akkor az AppArmor események így naplózódnak:

type=APPARMOR msg=audit(1140325305.502:1407): REJECTING w access to
/usr/lib/firefox/update.test (firefox-bin(9469) profile
/usr/lib/firefox/firefox-bin active /usr/lib/firefox/firefox-bin)
/var/log/messages

Ha nem használja az auditd démont, akkor az AppArmor eseményei a normál rendszernaplóba (/var/log/messages) kerülnek. Egy jellemző bejegyzés például így nézhet ki:

Feb 22 18:29:14 dhcp-81 klogd: audit(1140661749.146:3): REJECTING w access
to /dev/console (mdnsd(3239) profile /usr/sbin/mdnsd active /usr/sbin/mdnsd)
dmesg

Ha az auditd nem fut, akkor az AppArmor-események ellenőrizhetők a dmesg paranccsal is:

audit(1140661749.146:3): REJECTING w access to /dev/console (mdnsd(3239)
profile /usr/sbin/mdnsd active /usr/sbin/mdnsd)

A profil módosításához először vizsgálja meg az alkalmazással kapcsolatos naplóüzeneteket (lásd: Lépés 3). Amikor a program felszólítja, adja meg a hozzáférési jogokat vagy korlátozásokat.

[Tip]További információk

További információ a profilok készítéséről és módosításáról: Profile Components and Syntax . fejezet (↑Novell AppArmor adminisztrátori kézikönyv), Building and Managing Profiles with YaST . fejezet (↑Novell AppArmor adminisztrátori kézikönyv) és Building Profiles from the Command Line . fejezet (↑Novell AppArmor adminisztrátori kézikönyv).

Novell AppArmor eseményértesítések és jelentések beállításaNovell AppArmor eseményértesítések és jelentések beállítása

Állítsa be a Novell AppArmor eseményértesítési funkcióit, hogy reagálhasson a biztonsági eseményekre. Az eseményértesítés a Novell AppArmor hasznos szolgáltatása, amely értesítést küld egy megadott e-mail címre egy meghatározott súlyosságú Novell AppArmor esemény bekövetkezése esetén. Ez a funkció jelenleg a YaST felületen érhető el.

Az eseményértesítés beállításához a következőt kell tenni a YaST-ban:

  1. Győződjön meg róla, hogy van a rendszeren megfelelően működő levélkiszolgáló, amelyik el tudja küldeni az eseményértesítéseket.

  2. Jelentkezzen be root-ként és indítsa el a YaST-ot. Ezután válassza ki a Novell AppArmor+AppArmor vezérlőpult modult.

  3. A Biztonsági esemény értesítés képernyőn nyomja meg a Beállítás gombot.

  4. Minden egyes rekordtípushoz (Rövid, Összefoglaló, és Részletes) állítsa be a jelentés gyakoriságát, adja meg az e-mail címet, ahová a jelentéseket küldi, és határozza meg a naplózandó események súlyosságát. Ha az ismeretlen eseményeket is bele kívánja venni az eseményjelentésekbe, akkor jelölje meg az Ismeretlen súlyosságú események hozzáadása pontot.

    [Note]A naplózandó események kiválasztása

    Ha nincs tisztában az AppArmor eseménykategorizálási rendszerével, akkor kérjen értesítést mindegyik biztonsági szint eseményeiről.

  5. A beállítások alkalmazásához lépjen ki a párbeszédablakból az OK+Kész gombokkal.

A Novell AppArmor jelentéseinek használatával elolvashatók a fontos Novell AppArmor biztonsági események jelentései anélkül, hogy át kellene rágnia magát az aa-logprof eszközzel értelmezhető üzeneteken. A jelentés mérete csökkenthető, ha szűr dátumtartományra vagy egy adott program nevére.

Az AppArmor jelentések beállítása:

  1. Jelentkezzen be root-ként és indítsa el a YaST-ot. Válassza ki a Novell AppArmor+AppArmor jelentések modult.

  2. Válassza ki a megvizsgálni vagy beállítani kívánt jelentés típusát: Executive Security Summary, Alkalmazásaudit vagy Biztonsági esemény jelentés.

  3. Adja meg, hogy milyen sűrűn készüljön jelentés, továbbá e-mail címet, az exportálás formátumát, valamint a jelentések helyét: nyomja meg a Szerkesztés gombot és adja meg a kért adatokat.

  4. Egy adott típusú jelentés futtatásához kattintson a Futtatás most gombra.

  5. Az adott típusú archivált jelentések tallózásához kattintson az Archívum megtekintése pontra, majd adja meg a jelentés típusát.

    vagy

    Törölje a már nem szükséges jelentéseket, vagy készítsen újakat.

[Tip]További információk

További információ a Novell AppArmor eseményértesítés beállításáról: „Configuring Security Event Notification” szakasz (6. fejezet - Managing Profiled Applications, ↑Novell AppArmor adminisztrátori kézikönyv). További információ a jelentések beállításáról: „Configuring Reports” szakasz (6. fejezet - Managing Profiled Applications, ↑Novell AppArmor adminisztrátori kézikönyv).

Profilok frissítéseProfilok frissítése

A szoftverek és a rendszer beállításai időről-időre megváltoznak. Ennek eredményeképpen időnként szükség lehet az AppArmor profil beállításainak hangolására. Az AppArmor megvizsgálja a rendszernaplót, hogy lát-e benne irányelvsértéseket vagy más AppArmor-eseményeket, és lehetővé teszi, hogy ezeknek megfelelően módosítsa a profilt. Az alkalmazások profildefiníción kívüli viselkedése szintén kezelhető a Profil frissítése varázslóval.

A profilhalmaz frissítése:

  1. Jelentkezzen be root-ként és indítsa el a YaST-ot.

  2. Indítsa el a Novell AppArmor+Profil frissítése varázslóját.

  3. A megjelenő ablakban módosítsa a naplózott erőforrások vagy végrehajtható fájlok hozzáférési vagy végrehajtási jogait.

  4. A kérdések megválaszolása után lépjen ki a YaST-ból. A módosítások érvénybe lépnek a profilokon.

[Tip]További információk

További információ a profilok frissítésével kapcsolatban a rendszernaplók alapján: „Updating Profiles from Log Entries” szakasz (3. fejezet - Building and Managing Profiles with YaST, ↑Novell AppArmor adminisztrátori kézikönyv).