Portál AbcLinuxu, 3. května 2024 20:42

Jaderné noviny 216

22. 5. 2003 | Leoš Literák
Články - Jaderné noviny 216  

Seznam chyb, které musí být opraveny před 2.6 (nebo 3.0). SCO: Linux porušuje naše práva. Popis a použití Exec Shieldu. Blíží se řada 2.6.

Do konference přišlo celkem 1675 emailů, nejvíce jich poslali Greg KH, "David S. Miller", Andrew Morton.

Seznam chyb, které musí být opraveny před 2.6 (nebo 3.0), 47 e-mailů

Andrew Morton napsal:

Níže najdete seznam problémů, které musí být vyřešeny, než vznikne jádro 2.6. Měli bychom si ale ještě ujasnit, co to řada 2.6 je. Zřejmě 2.6.0 neznamená "když je to hotovo, vypusťme to". Navrhuji, aby 2.6.0 znamenalo, že uživatelé mohou migrovat z řady 2.4 a očekávat, že jim bude vše, co používali, fungovat a kernel nebude padat, nezničí jim data a nebude běhat jako pes. Jiné definice jsou vítány.

Chyby, které musí být opraveny

Urychlení a nehotové vlastnosti

SCO: Linux porušuje naše práva, 19 e-mailů

Někdo zaslal odkaz na článek na CNetu, podle něhož SCO tvrdí, že našlo kousky copyrightovaného kódu z UnixWare ve zdrojácích linuxového jádra. Chris Friesen odpověděl, že podle

článku na Slashdotu Senior Vice President SCO (Caldera) Chris Sontag výslovně uvedl, že jádro z kernel.org není nakaženo, ale jiné věci od RedHatu a SuSE jsou. Viz následující citáty:

"Chris Sontag: Nemluvíme o jádru Linuxu, které Linus a další pomáhají vyvinout. Mluvíme o tom, co je na periferii linuxového jádra."

"Chris Sontag: Používáme objektivní třetí strany pro porovnání zdrojového kódu našeho UNIX System V a RedHatu jako příkladu. Nacházíme mnoho instancí našeho proprietárního softwaru, který byl prostě zkopírován nebo změněn, aby byl skryt jeho původ ze Systému V v RedHatu. To je věc, kterou bychom měli projednat s mnoha linuxovými distributory."

Jenže Nomen Nescio napsal:

Hmm. SCO Group Chief Executive Darl McBride říká podle CNetu přesný opak:

"Nacházíme ... případy, kdy se kód řádek po řádku v linuxovém jádře shoduje s našim kódem v UnixWare.

Našli jsme kód, který vypadá jako pozměněný, aby vypadal, že není z UnixWare, ale je."

Chris Sontag by měl svůj příběh sladit se svým šéfem, než otevře pusu před tiskem.

Christoph Hellwig také reagoval na první email:

Jako někdo, kdo pracoval pro SCO (či raději Caldera, jak se tehdy jmenoval) vám můžu říci, že toto je naprosté hovno. Bylo zde dost lidí pracujících na kernelu a měli jsme mnohem lepší věci na práci než napasovat kód z UnixWare do linuxového jádra. Zvláště když jaderné vnitřnosti jsou tak rozdílné, že byste potřebovali velkou adaptovací vrstvu, aby to začalo fungovat a můžete se vsadit, že by byla zavržena během prohlídky v konferenci linux-kernel :-).

Bylo by zajímavé podívat se do Unixware po kradeném kódu z Linuxu, navrhl bych zaměřit se na podporu jednoho velmi známého linuxového souborového systému v přídavném modulu pro kompatibilitu s Linuxem v UnixWare..

Popis a použití Exec Shieldu, 49 e-mailů

Ingo Molnar ohlásil:

S radostí oznamuji první veřejnou verzi nové bezpečnostní vlastnosti založené na jádře nazvanou "Exec Shield", určenou pro Linux/x86. Patch vůči jádru 2.4.21-rc1 (zveřejněný pod GPL/OSL) může bý stažen z adresy http://redhat.com/~mingo/exec-shield/.

Popis

Exec-shield poskytuje ochranu proti útokům na přetečení zásobníku, vyrovnávací paměti či ukazateli na funkce [function pointer] a dalším typům exploitů, které spoléhají na přepsání datových struktur a vložení kódu do těchto struktur. Tento patch také znepřijemňuje život takzvaným 'shell-code' exploitům. Patch funguje transparentně, takže není nutná rekompilace aplikací.

Popis pozadí problému a implementace exec shield naleznete v originálu Kernel Traffic.

Režie

Exec-shield by navržen tak, aby byl co nejefektivnější. Je zde minimální režie (pár cyklů) pro každé systémové volání PROT_MMAP, plus 2-3 cykly při přepínání kontextu.

Úspěšnost útoku

Tato vlastnost vás však neochrání před všemi druhy útoků. Například když je přetečení použito pro přepsání lokální proměnné, která změní tok řízení směrem, jenž kompromituje systém. Nicméně věříme, že patch zastaví každý útok, který operuje na přetečení návratové adresy na zásobníku nebo ukazateli na funkci [FP] na hromadě [heap]. Exec-shield dále velmi ztěžuje úspěšnost útoku v ostatních případech, neboť ve většině případů zabrání vykonání shellového kódu exploitu.

Použití

Aplikujte záplatu exec-shield-2.4.21-rc1-B6 na jádro 2.4.21-rc1, překompilujte jej, nainstalujte nové jádro a nabootujte jej, to je vše.

Je zde nový parametr pro příkazovou řádku jádra. Jmenuje se exec-shield a má čtyři hodnoty 0-3. Každá reprezentuje odlišnou úroveň ochrany:

Aktuální předvolená hodnota je 2. Můžete ji měnit i za běhu zapsáním úrovně do adresáře /proc:

echo 0 > /proc/sys/kernel/exec-shield

DŮLEŽITÉ: aplikace, které byly spuštěny v době, kdy byl exec-shield vypnut, budou mít vykonatelný zásobník a budou muset být restartovány, pokud byl exec-shield povolen.

Zároveň jsem nahrál modifikovaný kód Solar Designera chstk.c, který umožňuje změnit příznak exec-shield v ELF formátu pro jednotlivé soubory. Například

./chstk -E /usr/sbin/sendmail

Spousta lidí byla ráda za tuto práci a vývojáři začali diskutovat nad jeho implementací a různými bezpečnostními problémy.

Blíží se řada 2.6, 32 e-mailů

Linus Torvalds ohlásil jádro 2.5.69 a napsal:

Ok, konečně jsem našel důvod, proč některé mé stroje měly potíže s restartováním X serveru a vypadá to, že problém existuje od začátku února. Vsadím se, že jej museli vidět i ostatní, například náhodné pády při restartování X serveru s AGP (buď 3D grafické karty s hardwarovou akcelerací nebo integrované grafiky od Intelu, které používají UDMA s AGP).

Velmi se mi tím ulevilo, neboť to byla důležitá věc, o kterou jsem se bál kvůli řadě 2.6. Nicméně teď je opravena, spolu s dalšími opravami. Většinou se jedná o jednořádkové opravy ovladačů, aby zvládaly novou semantiku IRQ, ale jsou zde i jiné úklidy [cleanup] (například Christoph Hellwig pokračoval ve svém tažení na devfs).

POZNÁMKA: Od této verze si myslím, že chci mít patche, které jsou skutečně zřejmé nebo byly schváleny jedním či vice lidmi. Hlavně doufám, že papírování s Andrewem se přiblíží k dokončení a my se můžeme vydat na cestu směrem k vydání řady 2.6.

Související články

Jaderné noviny 215
Jaderné noviny 214
Jaderné noviny 213

Odkazy a zdroje

Kernel Traffic

Další články z této rubriky

Jaderné noviny – přehled za duben 2024
Jaderné noviny – přehled za březen 2024
Jaderné noviny – přehled za únor 2024
Jaderné noviny – přehled za leden 2024
Jaderné noviny – přehled za prosinec 2023

Diskuse k tomuto článku

25.5.2003 16:58 uchyl
Rozbalit Rozbalit vše hovno?
Odpovědět | Sbalit | Link | Blokovat | Admin
"utter crap" je spis "naprosta hovadina, blbost" atd. ale jinak dobry, ty tvy vytahy mam docela rad. a kde nevim a zajima me to, kouknu do originalu (btw nesel by primej link primo na to dany vydani?)
26.5.2003 12:25 Mr. Jumper
Rozbalit Rozbalit vše Vypada to jako ono, ale neni to ono a prece je to ono.....
Odpovědět | Sbalit | Link | Blokovat | Admin
"Našli jsme kód, který vypadá jako pozměněný, aby vypadal, že není z UnixWare, ale je." Tak to ja jsem jednou nasel hrusku, ktera vypada jako pozmenena, aby vypadala, ze neni jabko, ale je.

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.