abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 16:55 | Nová verze

    Projekt openSUSE dnes, 3. listopadu 2026, oficiálně vydal openSUSE Leap 16.1, novou verzi své stabilní linuxové distribuce. Novinkou je také Immutable Mode, který nahrazuje dosavadní samostatnou distribuci openSUSE Leap Micro. Podrobnosti o novém vydání najdete v oficiálním oznámení nebo v českém překladu oznámení. Instalační obrazy jsou již dostupné na get.opensuse.org. Vydání společně oslavíme v pátek ve virtuálním baru a na … více »

    lkocman | Komentářů: 0
    dnes 16:00 | Nová verze

    Bylo oznámeno vydání Fedora Linuxu 45. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora Cloud pro cloudové nasazení, Fedora CoreOS pro ty, kteří preferují neměnné systémy a Fedora IoT pro internet věcí. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 15:44 | Zajímavý článek

    Vědci z MIT CSAIL představili koncept 'weight-space programming' a názorně předvedli, že pokročilé jazykové modely SI dokážou přímo číst a upravovat váhy neuronových sítí. Studie ukazuje, že modely nejen dokážou identifikovat účel sítí z pouhého nahlédnutí do jejich číselných vah, ale mohou i cíleně opravovat chyby a nedostatky, například GPT-6 Astra se změnou pouhých 0,016% vah open-weight modelu Qwen3.5-0.8B podařilo odstranit

    … více »
    👻 | Komentářů: 2
    dnes 14:00 | Komunita

    Organizátoři komunitního setkání nejen českých a slovenských správců sítí CSNOG 2027, které se uskuteční 20. a 21. ledna na půdě zlínské univerzity Tomáše Bati, oznámili prodloužení termínu pro zasílání abstraktů do programu akce. Zájemci se mohou hlásit prostřednictvím webu setkání do úterý 10. listopadu. Programová komise uvítá příspěvky věnované nejen správě sítí, ale také legislativě a regulaci nebo síťařským aktivitám studentů a pedagogů.

    VSladek | Komentářů: 0
    dnes 13:55 | IT novinky

    Bylo spuštěno předobjednávání zařízení Flipper One s Linuxem. Za 20 dolarů si lze koupit kupón a zajistit si tím speciální cenu 379 dolarů po spuštění kampaně na Kickstarteru.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | Nová verze

    Tor Browser, tj. fork webového prohlížeče Mozilla Firefox s integrovaným klientem sítě Tor přednastavený tak, aby přes tuto síť bezpečně komunikoval, byl vydán ve verzi 16.0. Postaven je na Firefoxu ESR 153. Vydána byla také nová verze 7.16 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. S Tor Browserem 16.0.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    FreeTube, desktopový klient pro YouTube využívající lokální API, byl vydán ve verzi 0.26.0. Toto velké opravné vydání mj. vrací částečnou podporu živých přenosů nebo přepracovává zobrazování titulků a obecně nastavení videa v přehrávači – FreeTube umožňuje např. přehrávat video s větším zrychlením.

    ʚĭɞ 🍉 | Komentářů: 1
    dnes 03:55 | Humor

    Další vlna kyberútoků zasáhla chladicí zařízení supermarketů v sedmi evropských zemích, Belgii, Lucembursku, Švédsku, Nizozemsku, Irsku, Estonsku a Finsku. Mrazáky se v některých prodejnách opět 'proměnily v trouby' a zahřály až na 50°C, což pochopitelně vedlo ke znehodnocení uskladněných potravin. Útoky navazují na podobný incident ve Francii z první poloviny října letošního roku, pachatel stále není znám.

    👻 | Komentářů: 9
    včera 17:52 | Zajímavý projekt
    WorldTUI je experimentální LLM o 360 milionech parametrů, který napodobuje terminál. Podle stisknutých kláves se snaží předpovídat změny na obrazovce a zvládá tak vyonávat rozličné příkazy, například Vim, tmux i jednoduchou hru Snake. Nejedná se o skutečný příkazový řádek, jeho 'soubory' i příkazy jsou pouze simulované a model může samozřejmě různě chybovat. WorldTUI vychází z jazykového modelu Qwen2.5-Coder-0.5B, který autor … více »
    👻 | Komentářů: 2
    včera 17:48 | Zajímavý článek
    Josef Bacik navrhuje novou abstrakci cell, která by celý kontejner reprezentovala jako jeden kernelový objekt. Proces by vznikl přímo uvnitř cell a nemohl by ji opustit. Oprávnění ke správě by se odvozovala od držení cellfd. … více »
    vencour | Komentářů: 11
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2970 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Jaderné noviny – 7. 12. 2017: Omezení automatického zavádění jaderných modulů

    27. 12. 2017 | Redakce | Jaderné noviny | 2330×

    Stav vydání jádra. Citáty týdne: Thomas Gleixner a Matthew Wilcox. Omezení automatického zavádění jaderných modulů.

    Stav vydání jádra

    Současné vývojové jádro je 4.15-rc2, vydané 3. prosince. Linus řekl: „Jedna věc, na kterou chci poukázat, je, že se snažím dosáhnout ucpání nějakých úniků ASLR a do toho spadá, že nyní ve výchozím stavu hašujeme všechny ukazatele vypsané pomocí ‚%p‘. Mnoho lidí to neovlivní, ale kde půjde o problém s laděním (spíš než únik zajímavých ukazatelů z jádra), tam to budeme muset opravit.“

    Stabilní aktualizace: 4.14.3, 4.9.66, 4.4.103 a 3.18.85 vyšly 30. listopadu. Následovaly je aktualizace 4.14.4, 4.9.67, 4.4.104 a 3.18.86, a to 5. prosince.

    Citáty týdne, tentokrát o názvech

    Několik lidí včetně Linuse požádalo o změnu názvu KAISER. Dali jsme dohromady seznam technicky správných akronymů:

    User Address Space Separation, prefix uass_

    Forcefully Unmap Complete Kernel With Interrupt Trampolines, prefix fuckwit_

    Ale jsme politicky korektní, takže jsme se shodli na

    Kernel Page Table Isolation, prefix kpti_

    Linusi, výběr je na tobě :)

    —Thomas Gleixner

    Nejsem rozhodnutý pro MAP_REQUIRED. Vymyslel jsem několik ošklivých jmen (MAP_TODDLER, MAP_TANTRUM, MAP_ULTIMATUM, MAP_BOSS, MAP_PROGRAM_MANAGER atd.). Ale myslím si, že by se z prostředku jména mělo vyhodit slovo FIXED.

    —Matthew Wilcox

    Omezení automatického zavádění jaderných modulů

    Restricting automatic kernel-module loading. Jonathan Corbet. 4. prosince 2017

    Mechanismus jaderných modulů umožňuje sestavení jádra s podporou široké škály hardwaru a softwaru, aniž by všechen ten kód musel být načten do každého běžícího systému. Z dostupnosti všech modulů v typickém distribučním jádře plyne, že k dispozici je mnoho funkcí, ale potenciálně také mnoho zneužitelných chyb. Objevila se celá řada případů, kdy došlo k použití automatického zavádění jaderných modulů, aby se do běžícího systému natáhl chybný kód. Na pokusu omezit expozici jádra modulům s chybami se ukazuje, jak náročné mohou být některé druhy tvrdících prací.

    Automatické zavádění modulů

    Jsou dva způsoby, jak lze do jádra načíst modul bez explicitního zásahu ze strany správce. Na většině současných systémů k tomu dojde, když je detekován (discovered) nový hardware – buď ovladačem sběrnice (na sběrnicích, které podporují detekci nového hardwaru), nebo z externího popisu, jako je strom zařízení. Detekce způsobí zaslání události do uživatelského prostoru, kde démon jako udev aplikuje jakákoli nastavená pravidla a zavede příslušné moduly. Tento mechanismus je řízen dostupností hardwaru a pro útočníka je relativně těžké nějak ho ovlivnil.

    V jádře se ale skrývá starší mechanismus, který má podobu funkce request_module(). Když některá jaderná funkce sezná, že chybí potřebný modul, může zavolat request_module(), aby do uživatelského prostoru vyslala požadavek na zavedení příslušného modulu. Například pokud aplikace otevře znakové zařízení s daným hlavním (major) a vedlejším (minor) číslem a pro tato čísla neexistuje žádný ovladač, kód znakového zařízení se pokusí ovladač vyhledat následujícím voláním:

    request_module("char-major-%d-%d", MAJOR(dev), MINOR(dev));

    Pokud má modul ovladače nastavený alias s odpovídajícími čísly, bude automaticky zaveden do jádra, aby byl zpracován otevřený požadavek.

    V jádře se nacházejí stovky volání request_module(). Některé případy jsou docela konkrétní: jeden například načte modul ide-tape, když má uživatel tu smůlu, že disponuje dotyčným zařízením. Jiné jsou obecnější: v síťovém subsystému je mnoho volání například k nalezení modulů implementujících určité síťové protokoly nebo mechanismy filtrování paketů. Zatímco volání specifická pro konkrétní zařízení byla většinou nahrazena mechanismem udev, moduly funkcí, jako jsou síťové protokoly, stále spoléhají na automatické zavádění, které je z pohledu uživatelů transparentní, pomocí request_module().

    Automatické zavádění zajišťuje pohodlnou správu systému, ale zároveň jeho pohodlné zneužití. Zranitelnost protokolu DCCP, která byla zveřejněna v únoru, se nedá zneužít, pokud není modul načten do jádra – což běžně nebývá, protože DCCP má málo uživatelů. Jenže mechanismus automatického načítání umožňuje libovolnému uživateli vynutit si zavedení tohoto modulu prostým vytvořením DCCP soketu. Automatické zavádění tedy rozšiřuje možnosti útoku na jádro na cokoli, co mohou neprivilegovaní uživatelé načíst – a v běžné distribuci jádra je takových modulů hodně.

    Utahování systému

    Djalal Harouni pracuje na sadě patchů zaměřené na omezení vystavení jádra zranitelnostem způsobeným automatickým načítáním. Zatím nejnovější verze byla zveřejněna 27. listopadu. Harouni se inspiroval tvrzením v sadě patchů grsecurity, z ní si ale nebere žádný kód. V této podobě (která se v průběhu času poněkud změnila) přidává novou volbu sysctl (/proc/sys/kernel/modules_autoload_mode), která se dá použít k omezení jaderného mechanismu automatického zavádění modulů. Pokud je volba nastavena na nulu (výchozí nastavení), funguje automatické zavádění stejně jako na současných jádrech. Změna nastavení na jedničku omezí zavádění na procesy s určitými schopnostmi (capabilities): procesy s CAP_SYS_MODULE mohou způsobit zavedení libovolného modulu, zatímco ty s CAP_NET_ADMIN mohou nahrát libovolný modul, jehož alias začíná na netdev-. Nastavení volby na dvojku zakáže automatické zavádění úplně. Jakmile je hodnota nastavena na více než nulu, nelze ji po dobu životnosti systému zase snížit.

    Tato sada patchů implementuje i příznak, který může být nastaven jednotlivým procesům, a to pomocí systémového volání prctl(). Tento příznak (který akceptuje stejné hodnoty jako globální příznak) může určitému procesu a všem jeho potomkům omezit možnost automatického zavádění modulů, aniž by došlo ke změně chování v zavádění modulů v celém systému.

    Dá se s jistotou říct, že tato sada patchů nebude ve své stávající podobě začleněna, a to z jednoho důvodu: Linusi Torvaldsovi se vůbec nelíbila. Zákaz automatického zavádění modulů pravděpodobně rozbije mnoho systémů, což znamená, že distributoři nebudou ochotni tuto volbu nastavit, takže se nebude moc využívat. „Bezpečnostní volba, kterou uživatelé nemohou použít, aniž by si rozbili systém, je naprosto zbytečná,“ řekl. Diskuze na toto téma se občas vyostřila, ale Torvalds proti myšlence omezit vystavení jádra automaticky zavedeným zranitelnostem, nic nemá. Jde pouze o to najít správné řešení.

    Zdá se, že řešením by mohly být právě příznaky pro konkrétní procesy. Daly by se použít například k omezení automatického zavádění modulů z kódu běžícího v kontejneru, zatímco systém jako takový by zůstal beze změny. Není neobvyklé uvnitř kontejneru vytvořit proces se schopností CAP_NET_ADMIN k nastavení přístupu kontejneru k síti a zároveň chtít, aby si většina kódu v kontejneru nemohla vynutit zavádění modulů.

    Ale jak řekl Torvalds, jediný příznak nebude nikdy schopen patřičně pokrýt všechny situace, kdy automatické zavádění hraje roli. Některé moduly by možná mělo být možné načíst vždy, zatímco jiné mohou vyžadovat nějakou konkrétní schopnost. Takže navrhl funkci request_module_cap() z Harouniho sady patchů (která provede zavedení pouze tehdy, když je k dispozici konkrétní schopnost) zachovat a používat ji šířeji. Na druhou stranu si vyžádal několik změn.

    První z nich je, že request_module_cap() by ve skutečnosti neměla blokovat zavádění modulů, když požadovaná schopnost chybí – alespoň ne zpočátku. Místo toho by funkce měla zaznamenat zprávu. Umožní to zjistit, ve kterých případech je automatické zavádění opravdu zapotřebí, což by se štěstím mohlo poukázat na místa, kde je možné ho omezit bez rozbití existujících systémů. Navrhl také, že kontrola schopností je příliš zjednodušující. Například výše popsané automatické zavedení „char-major-“ nastane pouze tehdy, je-li proces schopen otevřít uzel zařízení s uvedeným hlavním a vedlejším číslem. V takových případech již byl úspěšně proveden test oprávnění (schopnost otevřít speciální soubor) a modul by měl být bezpodmínečně zaveden. Takže možná budou zapotřebí další varianty request_module() k popisu případů, na které se schopnosti nevztahují.

    Nakonec měl Linus Torvalds další nápad, který se týkal myšlenky, že nejhorší chyby se obvykle ukrývají v modulech, které jsou spravovány přinejlepším bídně. Například o modulu DCCP zmíněném výše je známo, že se využívá zřídka a je téměř neudržovaný. Pokud by dobře udržované moduly byly označeny zvláštním příznakem, mohlo by jít omezit neprivilegované automatické zavádění pouze na tyto moduly. Tím by se zabránilo automatickému zavádění některých spíše zbytných modulů, aniž by došlo k narušení automatického zavádění jako takového. Tato myšlenka vyvolává jednu otázku, kterou nikdo nepoložil: Pokud modul přestane být udržován, kdo se postará o to, aby byl smazán příznak „dobře udržovaný“?.

    V každém případě nebude tento příznak přidán hned, bude-li platit plán navržený Keesem Cookem. Ten navrhl začít s request_module_cap() s povolenými varováními. Příznaky pro jednotlivé procesy by byly přidány pro ty, kteří je mohou používat, ale globální volba k omezení automatického zavádění by přidána nebyla. Nakonec by mohlo být možné zbavit se neoprávněného zavedení modulu, ale to je cíl do budoucna. Krátkodobými přínosy by byla jednak lepší znalost toho, jak se automatické zavádění skutečně používá, a jednak možnost volby pro správce, kteří chtějí systém utěsnit již nyní, aby mohli omezit jednotlivé procesy.

    Tato debata zvýrazňuje jedno ze základních pětí kolem práce na tvrzení jádra. Jen málo lidí je proti bezpečnějšímu jádru, ale situace se komplikuje, jakmile může tvrzení rozbít stávající systémy, což se často stává. Vývojáři orientovaní na zabezpečení jsou často frustrováni tím, že se jaderná komunita brání změnám v tvrzení s viditelnými dopady na uživatele, zatímco jaderní vývojáři mají málo sympatií pro změny, které povedou k nahlášeným chybám a nešťastným uživatelům. Některé projevy takové nespokojenosti se v této diskuzi ukázaly, ale většina zúčastněných vývojářů měla vesměs zájem spolupracovat na řešení, které by fungovalo pro všechny.

           

    Hodnocení: 100 %

            špatné • dobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.