OpenBSD

systrace az alaprendszerben

Címkék

Az OpenBSD legújabb kiadásában (3.2) úgy tűnik már alaprendszer-szinten is használatba kerül a systrace nevű szolgáltatás a megnövelt biztonság érdekében. A systrace-ről már írtunk régebben, ahol megemlítettük annak legfőbb tulajdonságait (rendszerhívás figyelés és korlátozás). A systrace körüli első fellángolások lecsillapodása után logikusnak tűnt a lépés, hogy az alaprendszerben lévő, jól körülhatárolható szolgáltatásokat nyújtó (pld. named) programokat ezzel az eszközzel tegyék még biztonságosabbá az esetleges programhibák kivédése érdekében.
Az ehhez szükséges policy fájlok már meg is jelentek az /etc/systrace könyvtárban, így jogos a feltételezés, hogy a jelenleg elérhető két darabot (lpd és named) továbbiak fogják követni (például a chrootban futtatott apache-hoz).
A systrace használatával a démonok által elérhető rendszerhívások meglehetősen jól szabályozhatók, tehát egy esetleges betörés is kisebb kockázatot jelent majd az OpenBSD-n systrace policyvel rendelkező programok esetében.

OpenBSD: httpd változások az OpenBSD-ben

Címkék

Theo de Raadt egy levelet küldött az OpenBSD-misc levelezési listára, melyben bejelenti, hogy a httpd (webszerver) mostantól a /var/www könyvtárba lesz zárva (chroot - jail).A dologra azért került sor, mert az OpenBSD fejlesztők szerint mostanában veszélyes megbízni a webszerverekben (nyilván a legutolsó apache bugra céloznak). Ezt a chroot-olt megoldást nem kötelező használni, akinek nem tetszik, annak egy egyszerű '-u' flaget kell beállítani a httpd_flags értékének a /etc/rc.conf-ban. Ezzel a beállítással vissza lehet térni a hagyományos megoldáshoz.

Ahogy Theo a levelében írja, ez a legjobb dolog amit jelenleg tehetnek a webszerverek bugjai ellen. Sajnos az Apache kódja túl monolitikus, borzasztóan nagy, ezért a soronkénti auditálás nem használható. Ezért a legegyszerűbb megoldást választották, 'jail'-be zárták az alkalmazást.

Tehát az új funkciót egy egyszerű '-u' kapcsolóval lehet ki/be kapcsolni, más konfigurációs változtatásra nincs szükség.

Theo levele:

**********************************

To: misc@cvs.openbsd.org

Subject: httpd changes

From: Theo de Raadt

Date: Tue, 09 Jul 2002 15:19:07 -0600

--------------------------------------------------------------------------------

httpd by default now chroot's into /var/www.

This causes all sorts of fancy features to break. Fancy features which

we believe to be quite unsafe.

If you don't like this behaviour, use the -u flag for httpd_flags in

/etc/rc.conf to get back to the way it used to be. We bet that when

the next bug in apache comes, you'll regret it though.

This is the best approach we can currently take against such a

monolothic piece of software with such bad behaviours. It is just too

big to audit, so for simple usage, we are constraining it to within

that jail.

When you turn the -u flag on and off, no other configuration changes

are needed.

All this is documented.

Good luck.

*******************************************

OpenBSD: Unified Buffer Cache

Címkék

Egy patch érkezett az OpenBSD-misc levelezési listára, amelyben bemutatkozik az Unified Buffer Cache (UBC). A patch jelenleg csak az i386 platformra érhető el, és egy kezdete a NetBSD UCB kód portolásának. A szerző azt állítja a patchről, hogy csak saját éredklődésének kielégítésére készítette, és hogy a patch alkalmazásával számos alkalmazás jelentősen felgyorsult.Ha valakit jobban érdekel a NetBSD UCB implementációja (amelyen a fent említett patch alapul, az olvassa el az UBC: An Efficient Unified I/O and Memory Caching Subsystem for NetBSD című írást. A dokumentumban az alábbiakat olvashatjuk:

"A modern operációs rendszerek két módón teszik lehetővé a filerendszerhez való hozzáférést. Az egyik mód a memory mapping, a másik mód I/O rendszerhívásokon keresztül read() és write() függvényekkel. A tradícionális Unix-like operációs rendszerek a memory mapping kéréseket a virtuális memória alrendszeren keresztül szolgálják ki, míg az I/O hívásokat az I/O alrendszeren keresztül kezelik le. Ez a két alrendszert általában egymástól elkülönülten fejlesztik, és nincsenek szorosan integrálva. A patch fejlesztőjének célja a két alrendszer egybe integrálása.

Az UCB nem csak a NetBSD privilégiuma, régebb óta része a FreeBSD-nek [info] és a Linux kernel is tartalmazza a 2.4.10 kernel óta [info].

Biztonság: Ports és Backdoor-ok

Címkék

Újabban számos népszerű szoftverben fedeztek fel backdoor-t (hátsó bejáratot, amelyet a támadó hagy a kódban, hogy azokra a gépekre amelyre a későbbiekben telepítik szabad bejárása legyen), miután megtörték az azokat tároló központi szervereket. A legutolsó ilyen az általam is említett ircii-pana-1.0c19 volt, népszerűbb nevén BitchX 1.0c19. De erre a sorsra jutott az irssi és a dsniff is.Hogy ezt elkerüljük, a ports nyújt valamiféle védelmet számunkra. Ha megnézzük a Ports FAQ-t, akkor olvashatunk egy olyan funkcióról, amely egy titkosított checksum vizsgálatával el tudja dönteni egy adott distfile-ról, hogy az az eredeti-e vagy sem, és biztosak lehessünk benne, hogy senki nem piszkált bele.

Mivel az elmúlt egy-két hónapban ezek a backdooros források elszaporodtak, erősen ajánlott használni ezt a funkciót. Ha a telepítés során a rendszer szól, hogy a CHECKSUM nem passzol, akkor ne folyamodjunk a make NO_CHECKSUM=yes opcióhoz (amely egyébként felülbírálná a hibás checksum-ot), hanem helyette használjuk a make checksum REFETCH=true opciót, amely leszedi a distfile-t egy biztosan megbízható OpenBSD FTP mirrorról.

Használjuk a beépített integritás-ellenőrző funkciót, nem véletlenül építették bele a rendszerbe!

NetBSD vs. OpenBSD: Theo zabos, mert leveleit moderálják a NetBSD levlistán

Címkék

A szokásos régi harc látszik kiújulni a NetBSD és az OpenBSD fejlsztők között. Köztudott dolog, hogy Theo de Raadt a NetBSD csapatban kezte a munkáját, majd később eltávozott a onnan, és kb. 80 fejlesztővel megalapította az OpenBSD projectet. Köztudott hogy de Raadt és a régi NetBSD fejlesztők között volt némi feszültség.

Az OpenBSD tagok néhány levelet küldtek a tech-security@netbsd.org levelezési listára az "OpenSSH Priv Sep and Remote Exploit?" témában. Theo úgy vette észre, hogy leveleiket filterezik/moderálják a listán, és ezért kicsit mérges lett.

Ezért úgy döntött, hogy megszakítja a NetBSD csapattal a biztonsági hibákra vonatkozó levelezést mindaddig, míg a levelezési lista filterezésének a policy-ját meg nem változtatják.

Theo de Raadt levele:

"Miután 3 levelet is láttam - amely tőlem származik - a tech-security@netbsd.org-on filterezve (ők úgy mondják, hogy moderálva), úgy döntöttem, hogy nem hozom a NetBSD fejlesztők tudtára, ha biztonsági hibát találok.

A legutolsót ma korán találtam, értesítettem itojun-t, és be fog kerülni hamarosan a netbsd ktrace kódba.

[..]

Ez volt az utolsó biztonsági figyelmeztetés mindaddig, amíg a policy nem lesz áttekintve és megváltoztatva."



itojun válasza:"Közreműködök mind a NetBSD mind az OpenBSD fejlesztésében. Szerintem nagyon hasznos, hogy ha találok egy bugot az egyik oldalon, akkor azt fixálom a másikon is. Amíg ezt csinálom, a bugokat megbeszélem Theo-val és másokkal is. Mi értesítjük mindegyiküket. Theo (és mások) küldenek nekem egy feljegyzést, ha biztonsági hibát találnak.

Ha az értesítés megszűnik a moderálás miatt, akkor nagy bajban leszek. Nem tudom a NetBSD kódot fixálni azonnal, amikor az OpenBSD-ben fixálják a hibát. És ezekben a napokban a késlekedés nagy baj lehet a NetBSD-re nézve, mert a script kiddiek figyelik a megjelenő hibákat a különböző OS-ekre, megírják a támadó scripteket, és megpróbálják azokat más OS-eken is. A NetBSD és az OpenBSD egy tőről fakad, számos olyan támadás, amit az OpenBSD-sek jeleznek, az működik a NetBSD-n is.

Én megértem a csatákat, amik a múltban voltak, de hiszek benne, hogy itt az idő túllépni azokon.

itojun"

Ezek után ma egy újabb levelet küldött itojun Theo-nak, amelyben megígéri, hogy nem lesz moderálás a NetBSD oldalról, vagy ha lesz, akkor a moderálás formája publikus lesz. Viszont cserébe Theo-tól azt kérik, hogy ne legyen a részéről több fenyegetés, és jobban válogassa meg a szavait, mert a "régi netbsd-s fiúk" kiabálni fognak rá/okolni fogják.

Itt tart az ügy. Nem lenne jó ha megszűnne a kommunikáció a két BSD fejlesztő gárda között. Nem lenne jó mert ennek lehet, hogy leginkább a felhasználók innák meg a levét. Azért is, mert számos dolgot használunk nap-mint-nap a BSD fejlesztésekből, és ha a két csapat a biztonsági hibákat eltitkolná egymés elől, az a megoldás, a fixek késlekedését is magával hozhatná. Több szem többet lát alapon.

Reméljük a legjobbakat.

OpenBSD: A legenda vége

Címkék

Legendák szóltak arról, hogy az OpenBSD mennyire biztonságos operációs rendszer, hogy a készítők legfontosabb szempontja a fejlesztés során a biztonság, és hogy inkább nem adnak ki egy releaset mintsem kockáztassák a rendszer biztonságát.

Hogy ez mennyire igaz, az OpenBSD project ezt a woboldalán éveken keresztül hirdette:

"Távolról kihasználható hiba nélkül x.y éve, default telepítéssel"

Így volt ez eddig....Ahogy az előző cikkben írtam, ez a hét nem az OpenBSD fejlesztők hete volt. Megtört a híres, majdnem 6 évig tartó sikersorozat, és most már nem igaz a legendás mondás.

Iptables, IPF és PF benchmark

Címkék

Daniel Hartmeier az idei Usenix konferenciára készített anyagai elérhetőek. A prezentáció címe: "Design and Performance of the OpenBSD Stateful Packet Filter".A dokumentumokban Daniel bemutatja az OpenBSD PF nevű csomagszűrőjét, annak múltját, jelenét és jövőjét. A tervezési és implementációs leíráson felül független teszt is készült a három csomagszűrő között.

A teszteredmények azt mutatják, hogy van még mit fejleszteni a PF-en, viszont az elmúlt egy évben igen sokat fejlődött.

Érdekes és tanulságos olvasmány mindenkinek, függetlenül attól, hogy Linuxon, OpenBSD-n, vagy esetleg célhardveren végez csomagszűrést.



Kapcsolódó oldalak:

Design and Performance of the OpenBSD Stateful Packet Filter (HTML)

Design and Performance of the OpenBSD Stateful Packet Filter (PDF)

Az előadás anyaga (slide-ok) PDF-ben

OpenBSD Packet Filter

IP Filter

netfilter/iptables

OpenBSD: a pppd eltávolítása

Címkék

Az OpenBSD atyja Theo de Raadt nemrégiben felvetette, hogy elképzelhetőnek tartja a pppd eltávolítását az OpenBSD forrásfából. Az ok a pppd licenszelése.Ahogy Theo mondja: "Több mint egy év telt el azóta, hogy jeleztük, a lincesz nem teljesen korrekt, de azóta semmi nem történt."

Az OpenBSD weboldalon elolvashatjuk az alkalmazható copyright policy-t.

Ahogy Theo mondja: "A licenszek többsége nem használható. A legtöbbjük explicite tiltja a változtatásokat. A legtöbbjük explicite tiltja a további bármilyen felhasználást (beleértve az eladást is). Ezért Raadt azt javasolja az OpenBSD felhasználóknak, hogy lépjenek kapcsolatba a pppd fejlesztőkkel, és tisztázzák a licensz körüli gondokat. Ezzel megmentve e pppd-t attól, hogy el kelljen távolítani az OpenBSD-ből.

IPSec bridge módban

Címkék

Az OpenBSD -currentben Angelos D. Keromytis egy érdekes funkciót valósított meg: IPSec kódolás/dekódolás bridge módban.Az OpenBSD 3.0-ás kiadásától jelen lévő PF már a kezdetektől fogva támogatta a bridge-eken történő csomagszűrést és minden egyéb funkciót, amelyet layer3 módban képes megvalósítani (például véletlen ISN generálást a gyenge IP stackkel rendelkező hostok védelmére, stb).

Erre rátett még egy lapáttal az egyik OpenBSD fejlesztő, Angelos D. Keromytis mostani változtatása, amelynek segítségével az OpenBSD-s bridge képes a rajta átmenő forgalmat transzparensen (átlatszóan) IPSec segítségével kódolni/dekódolni. Ezáltal lehetővé válik az IPSec bevezetése olyan helyeken, ahol egyéb okok miatt lehetetlen, vagy nehéz a gépek IP címeinek megváltoztatása és ahol nem akarják az IPSecet az egyedi gépekre bízni.

Dobozos OpenBSD tűzfal

Címkék

Az Alloyant Technologies nevű cég nemrég egy dobozos, OpenBSD-re alapuló tűzfalat mutatott be. A doboz a 3.0-ás verziótól megtalálható PF-et használja és soros konzolról menedzselhető egy Windowsos GUI-val.



Bővebb információ