Kernel

Marcelo Tosatti: Linux 2.4.24-rc1

Címkék

Marcelo kiadta a Linux 2.4.24-rc1 kernelpatchet. Ez a patch egy bugfix kiadás. Emellett két biztonsági hibát is javít, így a frissítés ERŐSEN JAVASOLT!Az egyik biztonsági javítás Andrea Arcengeli nevéhez fűződik. A mremap() rosszindulatú használója extra privilégumokhoz juthat. A másik biztonsági a hiba a /dev/rtc-ben van, amely a kernel memória egyes részeit teszi elérhetővé a a privilégium nélküli felhasználóknak.

Letölthető patch-2.4.24-rc1.bz2.

Változások listája Marcelo levelében itt.

A legfrissebb kernel letöltése rsync és cvs segítségével

Címkék

Petri Koistinen egy olyan scriptet készített, amely segítségével a fejlesztők (vagy bárki) letölthetik a legfrissebb Linux kernel forrásokat a saját gépükre rsync és CVS felhasználásával.A script segítségével a 2.4-es a 2.5-ös és a 2.6-os kernelek forrásait tölthetjük le, majd a későbbiekben már csak szinkronizálnunk kell a forrásainkat az rsync segítségével.

A scriptet megtalálod Petri levelében itt.

PaX patch a 2.6-os kernelhez

Címkék

A PaX Team-nek köszönhetően elérhető egy kísérleti PaX biztonsági patch a 2.6-os (2.6.0) Linux kernelhez. A patch a 2.4.23-as kernelhez készült folt előre portolt verziója, amely jelenleg i386 platformon működik biztosan, a többi platformon valószínűleg le sem fordul.

A PaX patch használatával számos puffer túlcsordulásra építő támadásnak állhat ellen rendszerünk. Kipróbáltam a patchet a stabil 2.6.0-ás kernelen.



A tapasztalatok:A kernel simán lefordult, az összes PaX opciót engedélyeztem a ``menuconfig''-ban. Bebootolva a kernelt a fixen belefordított hálózati kártya inicializálása előtt kaptam egy ``general protection fault''-ot, de a kernel felállt, és elindította a rendszert. Lefuttattam a paxtest-0.9.5 tesztet. Eredménye:

Executable anonymous mapping : Killed

Executable bss : Killed

Executable data : Killed

Executable heap : Killed

Executable stack : Killed

Executable anonymous mapping (mprotect) : Killed

Executable bss (mprotect) : Killed

Executable data (mprotect) : Killed

Executable heap (mprotect) : Killed

Executable shared library bss (mprotect) : Killed

Executable shared library data (mprotect): Killed

Executable stack (mprotect) : Killed

Anonymous mapping randomisation test : 16 bits (guessed)

Heap randomisation test (ET_EXEC) : 13 bits (guessed)

Heap randomisation test (ET_DYN) : 25 bits (guessed)

Main executable randomisation (ET_EXEC) : 16 bits (guessed)

Main executable randomisation (ET_DYN) : 17 bits (guessed)

Shared library randomisation test : 16 bits (guessed)

Stack randomisation test (SEGMEXEC) : 23 bits (guessed)

Stack randomisation test (PAGEEXEC) : 24 bits (guessed)

Return to function (strcpy) : Vulnerable

Return to function (strcpy, RANDEXEC) : Return to function (memcpy) : Vulnerable

Return to function (memcpy, RANDEXEC) : Killed

Executable shared library bss : Killed

Executable shared library data : Killed

Writable text segments : Killed

A patch a kezdeti ``GPF''-től eltekintve nem okozott semmilyen negatív változást a kernelben (eddig). A PaX alkalmazása után néhány alkalmazás nem fut. Erről a kernel menuconfig help-je tájékozatat is minket. A legemlítésreméltóbb programok, amelyek nem indulnak el: az Xfree86 4.x verziója, a Java viruális gép és a Wine. A patch szerintem nem is desktop gépeken kap nagyobb hangsúlyt, hanem szerveren, ahol esetleg több rosszindulatú helyi felhasználóval kell számolnunk. A patchelt kernellel futott a MySQL 4.x, az Apache legújabb verziója, működött a PHP-ra írt weboldal, ment a postfix, és az amavisd-new is. Mindez Debian Sarge operációs rendszeren. Hosszabb távú tapasztalatok nincsenek, hiszen a patch 3 napja jelent meg. Tervezem egy teszt szerver felállítását, amely lokális hálón nagy terhelésnek van kitéve.

A szerver üzemeltetés szempontjából érdekes lehet még az, hogy mekkora a ``overhead''-je (overhead ebben az esetben = a patch működéséből adódó lassulás) van a patchnek. A dokumentáció szerint i386 és ppc környezetben számolnunk kell az ``overhead''-del. Erre vonatkozólag még nem végeztem méréseket. Az alpha, ia64, parisc, sparc, sparc64 és x86_64 platformokon nem kell overhead-del számolnunk.

A patch tesztelésre letölthető:

http://pax.grsecurity.net/pax-linux-2.6.0-200312302245.patch

A PaX mögött álló elgondolásról bővebben itt olvashatsz. A patchelt kernel teszteléséhez használható a paxtest-0.9.5 tesztprogram. A patchelt kernelen file alapon tudjuk a PaX jelzőket állítani. Ehhez a chpax programra van szükségünk.

Jó szórakozást!

Marcelo Tosatti: Linux 2.4.24-pre3

Címkék

A mai nap a kernel kiadások napja. Marcelo kiadta a 2.4.24-pre3 kernelt. Többek közt PPC32/SPARC frissítést, i2c kódtisztítást, LVM frissítést, új WAN drivert tartalmaz.

Letölthető innen.

Változások listája Marcelo levelében itt.

Andrew Morton: Linux 2.6.1-rc1-mm1

Címkék

Alig adta ki Linus a 2.6.1-rc1 kernelt, AKPM máris postázta a 2.6.1-rc1-mm1 patchet (a listán hibásan 2.6.0-rc1-mm1-ként jelent meg). A patch néhány új funkció mellett a fő kernelfával történő szinkronizációkat tartalmazza.A patch letölthető:

ftp://ftp.kernel.org/.../akpm/patches/2.6/2.6.1-rc1/2.6.1-rc1-mm1/

Változások listája AKPM levelében itt.

Linus Torvalds: Linux 2.6.1-rc1

Címkék

Linus kiadta a 2.6.1-rc1 patchet. A foltba az eddig várólistán levő anyagok kerültek. Ahogy Linus írja, most egy újabb nyugalmas időszak kezdődik (azaz új dolgok nem kerülnek be a kernel forrásba), amíg ki nem derült, hogy a végleges 2.6.1 rendben van-e. A legtöbb új dolog már régóta jelen van Andrew Morton -mm fájában, és stabilnak tekinthető.

A patch letölthető linux-2.6.1-rc1.tar.bz2

Változások listája Linus levelében itt.

netconsole: hogyan debugoljunk hálózaton keresztül

Címkék

Debugolni néha kell. Hogy miért?

Biztos mindenki került már olyan helyzetbe, hogy kernelfordítás után valami nem volt teljesen OK. Vagy nem volt a monitoron kép, mert elfelejtettük valamelyik konzol komponenst belefordítani a kernelbe, vagy a rendszer nem találta a / filerendszert, mert elfelejtettük az IDE, SCSI vagy más lemezvezérlő driverét, vagy egyszerűen csak rossz filerendszert állítottunk be a kernel konfigurációs részében. Sorolhatnám még a felmerülő hibákat, de a lényeg az, ha valamilyen oknál fogva gépünket nem tudjuk legalább a ``single'' módig (init 1) bebootolni (ehhez ugye az kell, hogy az init-et elérjük, vagy legalább egy shell-t (bash, sh, stb.) tudjunk init-ként használni), akkor nagyon nehéz a debugolás. A boot üzenetek egy korszerű gépen gyorsan lefutnak a képernyőn, így tényleg nagyon kell figyelni, hogy az ember a megfelelő pillanatban leolvashassa a hibaüzenetet. Másik bosszantó dolog, ha kernel panic-ot kapunk mindjárt a bootolásnál, és azt szeretnénk szeretnénk debugolni. Nem hiszem, hogy bárki nekiállna egy oops üzenetet papírral és ceruzával leírni... Akkor mégis hogyan rögzítsük az ilyen félig bootolt gép üzeneteit?

Andrew Morton: Linux 2.6.0-mm2

Címkék

AKPM kiadta a stabil 2.6.0-ás második -mm patchét.

Adaptec SCSI frissítések, az ieee1394 csapat frissítései és számos más javítás (pl. azon CD-ROM-mal kapcsolatos problémák javítása, amelyek a -mm1-ben jöttek elő) kerültek bele.

Kernel hiradó

Címkék

Nézzük mit dolgoztak a kernel hackerek az ünnepek alatt:

Matt Mackall egy olyan patchseten dolgozik, amelynek segítségével a remények szerint a lehető legkisebbre lehet leszorítani a Linux kernel memória és diszk foglalását. A fejlesztő által karbantartott kernelfa a -tiny névre hallgat. A fejlesztő majd 50 olyan patchet gyúrt egybe, amely segít a ``kövér'' vanilla Linux kernelt vékonyabbá tenni. Kik a patchet ``célpontjai''? A beágyazott-rendszer építők, a handheld gyártók/használók, és a régi desktop gépekkel rendelkező felhasználók. A patchset megjelent a 2.6.0-test11 és a stabil 2.6.0 kernelhez is.

Sean Neakums - gondolom csak a Karácsonyra való tekintettel, mert szerintem gyakorlati haszna nincs (pláne, hogy a /proc deprecated lesz) - egy olyan patchet készített, amellyel a /proc/updike-on keresztül lekérdezhetjük a rendszerünk uptime-ját egy hisztogram formájában.Greg Kroah-Hartman bejelentette az udev 011-es kiadását. Az udev nem más, mint az elavult devfs userspace implementációja, amely a sysfs-re és a /sbin/hotplug-ra támaszkodik.

Con Kolivas egy olyan patch-en dolgozik, amely úgy módosítja a Linux kernel processz ütemezőjét, hogy az a legjobb teljesítményt nyújthassa a P4HT (Hyperthreading) gépeken.

Greg Kroah-Hartman egy olyan pachet készített a sysfs-hez, amely használatával létrejön egy /sys/class/mem bejegyzés, és így az összes mem char eszköz látszik az udev alatt.