Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2024. Ke konci roku 2024 vlastnila 305 180 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250211 mikrokódů pro své procesory řešící 5 bezpečnostních chyb.
Byla vydána nová verze 1.24 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
Jiří Eischmann upozorňuje, že GNOME nemá české překladatele: "Posledních minimálně 15 let byly překlady GNOME do češtiny ve výborném stavu. U každého vydání jsem jen hlásil, že je vše přeložené, poslední roky to platilo i pro drtivou většinu dokumentace. Poslední rok se to ale začalo zadrhávat. Přispěvatelé, kteří to dlouhé roky táhli, odešli a není nikdo, kdo by to po nich převzal. Proto jsme se rozhodli jít s pravdou ven: GNOME momentálně nemá české překladatele a pokud se toho neujme někdo nový, překlady začnou postupně upadat."
Otevřený zvukový bezztrátový kodek FLAC (Free Lossless Audio Codec, Wikipedie) byl vydán v nové verzi 1.5.0. Hlavní novinkou je podpora vícevláknového kódování. V prosinci loňského roku byl FLAC formálně specifikován v RFC 9639.
Evropská unie hodlá iniciovat investice do rozvoje umělé inteligence v hodnotě 200 miliard eur, v přepočtu zhruba pět bilionů korun. V projevu na summitu o umělé inteligenci v Paříži to v úterý řekla předsedkyně Evropské komise Ursula von der Leyenová. Umělá inteligence podle ní může přispět mimo jiné ke zvýšení konkurenceschopnosti.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.3 (Mastodon). Přehled novinek i s videi a se snímky obrazovky v oficiálním oznámení. Podrobný přehled v seznamu změn.
Lennart Poettering se na Mastodonu rozepsal o novince v systemd, na které pracuje: systemd bude umět nabootovat z obrazu disku staženého pomocí HTTP v rámci initrd.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2025.2. Nově lze zálohovat také na Google Drive a Microsoft OneDrive.
V kinech aktuálně běží animovaný film Kočičí odysea, v originálu Flow, (Wikipedie) vytvořený v Blenderu. Film získal řadu ocenění a má dvě nominace na Oscary 2025. Na ČSFD má 80 %. Režisérem je Gints Zilbalodis. Rozhovor s režisérem na stránkách Blenderu.
$ id uid=1000(raven) gid=1001(raven) groups=29(audio) ... $ gcc 27704.c $ ./a.out ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7dc6000 .. 0xb7df8000 [+] root # id uid=0(root) gid=0(root) groups=29(audio) ...
Tiskni
Sdílej:
jojo - to mas z toho ze strkas na server aktualni jadro. chytri a paranoicti lide kteri vi jak se to dela samozrejme instaluji na server bezpecna jadra stara i pul roku, u kterych je prave provereno ze jsou bezpecna, narozdil od tech cerstve vydavanychVzhledem k tomu, ze chyba je v jadrech od 2.6.17 vyse, tak tenhle komentar je naprosto mimo misu. No nic.
Mě to na serveru s 2.6.20 nefunguje (mám tam morph patchset, což je reiser4 a nějaké další blbosti, ale o bezpečnostní věci se to AFAIK nestaralo). Zeptal bych se, kde dělám chybu, ale ... prostě zkompiluju, spustím, když ani jeden z nich nefunguje, tak je to v suchu, ne?
Aha, tak jestli když to hází Segmentation Fault se to hodí do loopu a pak to něco nehezkýho udělá .. tak to zkoušet nebudu. Ale je to teda moc nemilé :/
/* * jessica_biel_naked_in_my_bed.c * * Dovalim z knajpy a cumim ze Wojta zas nema co robit, kura. * Gizdi, tutaj mate cosyk na hrani, kym aj totok vykeca. * Stejnak je to stare jak cyp a aj jakesyk rozbite.
Tož poctivé Moravské ručičky sa poznajů hned.* Dovalim z knajpy a cumim ze Wojta zas nema co robit, kura. * Gizdi, tutaj mate cosyk na hrani, kym aj totok vykeca. * Stejnak je to stare jak cyp a aj jakesyk rozbite.
spise slezske ;)Těžko říct. Přijde mi to jako mix několika jazyků, jen né českého. Ale převahu samozřejmě uznávám.
Tak, tak. I když by mě tedy opravdu zajímalo co to tam v tom Slezsku pijí, jelikož když přijdu z knajpy u nás já, tak jdu většinou spát(a nebo blít, podle toho co je blíž). Pokud ten exploit qaaz psal pod vlivem čehokoliv, tak klobouk dolů a nechtěl bych ho tedy na ulici potkat za střízliva.+1 Třeba je to programátor kalič.
/tmp/cclrqIBQ.s: Assembler messages: /tmp/cclrqIBQ.s:118: Error: Incorrect register `%rax' used with `l' suffixprvní:
test.c:30:22: error: asm/page.h: není souborem ani adresářem test.c: In function ‘main’: test.c:211: error: ‘PAGE_SIZE’ undeclared (first use in this function) test.c:211: error: (Each undeclared identifier is reported only once test.c:211: error: for each function it appears in.)
asm/page.h
nevi nekdo? Tez gentoo amd64
sed -i -e "s:#include <asm/page.h>:#define PAGE_SIZE sysconf(_SC_PAGE_SIZE):"
BTW, 2.6.24.1 opraveno neni! dave@amd64 ~/tmp $ gcc -static -Wno-format wtf.c -o wtf -I /usr/src/linux/include/ dave@amd64 ~/tmp $ ./wtf ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x100000000000 .. 0x100000001000 [+] page: 0x100000000000 [+] page: 0x100000000038 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4038 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0x2b35dc120000 .. 0x2b35dc152000 [+] root root@amd64 ~/tmp $
ssh
, tu už je docela problém…
5srnka@eloth ~ $ ./27704 ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7d7e000 .. 0xb7db0000 Segmentation fault 5srnka@eloth ~ $ uname -a Linux eloth.gjh.sk 2.6.22-hardened-r8 #6 SMP Wed Dec 5 15:04:38 CET 2007 i686 Intel(R) Core(TM)2 Duo CPU E6550 @ 2.33GHz GenuineIntel GNU/Linuxhmm
Feb 10 15:50:36 pstros <0>PAX: suspicious general protection fault: 0000 [#5] Feb 10 15:50:36 pstros CPU: 0 Feb 10 15:50:36 pstros EIP: 0060:[<00041bd2>] Not tainted VLI Feb 10 15:50:36 pstros EFLAGS: 00010202 (2.6.20-hardened-r2 #1) Feb 10 15:50:36 pstros eax: 00000000 ebx: cdeba800 ecx: ffffffe0 edx: 00000000 Feb 10 15:50:36 pstros esi: d0149e70 edi: 00000001 ebp: 00000000 esp: d0149e3c Feb 10 15:50:36 pstros ds: 0068 es: 0068 gs: 00d8 ss: 0068 Feb 10 15:50:36 pstros Process a.out (pid: 16502, ti=d0148000 task=cf4ac580 task.ti=d0148000) Feb 10 15:50:36 pstros Stack: 0007548d 00000001 ffffffe0 00000000 00000001 d0149e90 d0149e70 000769b0 Feb 10 15:50:36 pstros d0149e90 00000000 cae28a40 cdeba800 5a3b1328 d0149f10 d0149e90 00000030 Feb 10 15:50:36 pstros 00000000 c0738c80 00000246 00000000 c0c061e0 00000000 00001000 00000000 Feb 10 15:50:36 pstros Call Trace: Feb 10 15:50:36 pstros ======================= Feb 10 15:50:36 pstros Code: ff 8f dc 00 00 00 eb dd 90 8b 50 0c ff 4a 04 0f 94 c0 84 c0 75 03 c3 89 f6 89 d0 ff 52 38 c3 8d 76 00 8d bc 27 00 00 00 00 89 c2 <8b> 00 f6 c4 40 75 12 ff 4a 04 0f 94 c0 84 c0 75 01 c3 89 d0 e9 Feb 10 15:50:36 pstros EIP: [<00041bd2>] SS:ESP 0068:d0149e3cZadny oops.
Celkem průser,no
Linux notebook 2.6.22-14-generic #1 SMP Fri Feb 1 04:59:50 UTC 2008 i686 GNU/Linux piskot@notebook:~/Dokumenty/Hack$ gcc 27704.c piskot@notebook:~/Dokumenty/Hack$ id uid=1001(piskot) gid=100(users) skupiny=4(adm),20(dialout),21(fax),24(cdrom),25(floppy),26(tape), 29(audio),30(dip),46(plugdev),100(users),104(scanner),106(fuse),110(admin) piskot@notebook:~/Dokumenty/Hack$ gcc 27704-2.c piskot@notebook:~/Dokumenty/Hack$ id uid=1001(piskot) gid=100(users) skupiny=4(adm),20(dialout),21(fax),24(cdrom),25(floppy),26(tape), 29(audio),30(dip),46(plugdev),100(users),104(scanner),106(fuse),110(admin)
----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x100000000000 .. 0x100000001000 [+] page: 0x100000000000 [+] page: 0x100000000038 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4038 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0x2fd64e58e000 .. 0x2fd64e5c0000 [+] root
----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x100000000000 .. 0x100000001000 [+] page: 0x100000000000 [+] page: 0x100000000038 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4038 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0x2fd64e58e000 .. 0x2fd64e5c0000 [+] root
No ono používat několik let staré jádro asi není žádný med. Protože ovladače a tak, na desktopu obzvlášť. Nevím, jak je na tom 2.6.16 právě s backportováním ovladačů...A právě z toho důvodu by měly být ovladače od jádra odtrženy do nějakého driverspace(klidně by mohli zůstat i v kernelspace, pokud by bylo zaručeno pomocí nějakého API, že téměř jakýkoliv ovladač přeložím s jakýmkoliv jádrem) a vytvořeno nějaké ABI.
Zlaté windows, co?Tak, tak. Čím hlouběji člověk do Linuxu vrtá, tím víc si uvědomuje, jak geniálně to mají vyřešeno u konkurence od, které utekl.
jojo.. tam takove chyby opravuji do ... mesice :))) tu to trvalo cele 3dny!No tak opravu chyb jsem zrovna nemyslel. V tomto případě není co řešit. Ale ty drivery, nebo vývoj jádra…
tu to trvalo cele 3dny!No já nevím, ale zatím se mi v aktualizacích nové jádro neobjevilo. A 3 dny málo nejsou a šlo by to i zrychlit.
no to uz zalezi na distruNo právě. To je to co mě ser…štve. Kdo tvrdí "Linux je jen jeden", ten lže.
Vsak pokud si chtel mohl sis to opravit samJo, to mohl, ale bohužel existuje spíše více lidí, kteří ani nevědí, že nějaký takový bug byl. A navíc jsem zastáncem automatizace(no nebylo by pěkné kdyby se to automaticky ihned za těch 24hodin od objevení automaticky záplatovalo na serverech bez nutnosti znovunačtení jádra?).popr. na ten den vypnout sshd
a kolik lidi aktualizuje jednou za tydenhttp://www.abclinuxu.cz/forum/show/213889#270:
Kdyby to fungovalo tak, že by mě automaticky upozornili na to, že je kritický bug a jako opravu ihned nabídli modul který stačí stáhnou a natáhnou do paměti, vůbec bych si nestěžoval. A pokud by se to samo stahovalo a načítalo do paměti, zvláště pak u serverů…
u serveru by si bugy v distru mel hlidat…Kdo?
Distro != LinuxTo je fakt. Už by se mělo konečně přestat s blbostmi jako je distribuování a konečně začít s užitečnými věcmi jako je sjednocování(či spíše vytváření systému jednotné správy).
je na vývojářích jak hejbnou kostrou a zapatchujou to.No právě. Vývojáři jádra, vývojáři distribučního jádra na distribuci ABC verze x.y.z. 1 patch a 1000 různých míst kde ho aplikovat.
Ve Vanilla byla opravná verze včera ráno.A na Hardy Heronu mi exploit funguje ještě dnes.
Diverzita je i prospěšná věc.A opak netvrdím, ale nic by se nemělo přehánět. Zrovna v tomto případě, kdy je potřeba rozšířit jeden patch mi diverzita příliš prospěšná nepřijde. Ani mi nevadí ta diverzita spíše jako absence alespoň jednoho standardizovaného a uznávaného způsobu šíření záplat(ale není to jen o záplatách).
Druhý odstavec: ještě větší blábol.Proč? Když si to shrnu, tak co distro, to jiné jádro. A povětšinou menší než 2.6.24.2, takže buď si to záplatuje každý u svého jádra sám a nebo se bude čekat než se ta záplata ve vanille dostane i do nižších verzí(backportovat?). Jednou patchovat prostě nestačí.
A třetí odstavec: koho to zajímá.Mě a možná i ostatní uživatele distribuce Ubuntu.
Pokud vám ten problém opravdu vadí (tzn. někdo na vás bude lokálně útočit), tak by neměl být problém nahodit jádro vlastní.Pro mě ne, ale tady nejde přece o mě. Tady jde o princip. Já si klidně zkompiluji modul, použiji jiný exploit, apod., ale je zde i větší množství uživatelů co nemají ponětí o nějakém bugu, natož potom co je to kompilace nebo jádro.
jádro vlastní.Né všichni mají Gentoo.
Zrovna v tomto případě, kdy je potřeba rozšířit jeden patch mi diverzita příliš prospěšná nepřijde.Ale vždyť v linuxu to není „je potřeba rozšířit jeden patch“. Takhle je to ve Windows, a je známé, jak spousta počítačů s Windows ty patche nemá. V linuxu to je tak, že si s tím má poradit správce. Někdo si poradí tak, že okamžitě deaktivuje
sshd
, překompiluje jádro s vyřazenou příslušnou funkcí a vrátí zpět sshd
. Někdo si počká na oficiální patch pro vanilkové jádro a překompiluje si ho, a někdo si počká až na otestované distribuční jádro. Podle toho, co komu vyhovuje. Chtít ihned otestovaný distribuční balíček je nesmysl. Můžete to mít buď rychle, nebo otestované – obojí najednou nelze.
Ale vždyť v linuxu to není „je potřeba rozšířit jeden patch“.Přesně tak, je toho mnohem více.
Takhle je to ve Windows, a je známé, jak spousta počítačů s Windows ty patche nemá.Windows do toho prosím netahejme. Ten toho s OSS mnoho společného nemá.
V linuxu to je tak, že si s tím má poradit správce. Někdo si poradí tak, že okamžitě deaktivujeBohužel, čim více se rozšiřují svobodné systémy do běžných systémů, tím více je "správců" co ani nevědí co to ssh je.sshd
, překompiluje jádro s vyřazenou příslušnou funkcí a vrátí zpětsshd
. Někdo si počká na oficiální patch pro vanilkové jádro a překompiluje si ho, a někdo si počká až na otestované distribuční jádro. Podle toho, co komu vyhovuje.
Chtít ihned otestovaný distribuční balíček je nesmysl. Můžete to mít buď rychle, nebo otestované – obojí najednou nelze.Samozřejmě po nikom nechci ihned nový kernel, ovšem nevím co je potřeba testovat na vyřazení funkce vmsplice z provozu(resp. přidání kontroly zda-li zapisuje do správného paměťového bloku). Alespoň ten modul mohl se mohl stáhnou a ihned natáhnout do paměti. A až by přišlo nové jádro, tak by se balíček s modulem jednoduše smazal.
Ne, není. Linux jako takový funguje na tom principu, že si správce stáhne, co potřebuje, ne že mu někdo něco tlačí. Pokud nějaká distribuce svoje aktualizace tlačí, je to její věc, ale není to věc obecně linuxu. Takže obecně od linuxu neočekávejte, že bude mít někdo potřebu nějaký patch „šířit“. Pokud to dělá nějaká vaše distribuce, a ta vám podle vás aktualizaci nenatlačila dostatečně rychle, stěžujte si na tu konkrétní distribuci.Ale vždyť v linuxu to není „je potřeba rozšířit jeden patch“.Přesně tak, je toho mnohem více.
Windows do toho prosím netahejme. Ten toho s OSS mnoho společného nemá.To není věc OSS nebo uzavřeného software. To je příklad toho, jak to funguje, když o tom, jaký patch a kdy bude nasazen nerozhoduje administrátor, ale nějaké „ústředí“.
Bohužel, čim více se rozšiřují svobodné systémy do běžných systémů, tím více je "správců" co ani nevědí co to ssh je.U těch bude ale zranitelnost pár dní starou chybou v jádře tím nejmenším bezpečnostním problémem.
Samozřejmě po nikom nechci ihned nový kernel, ovšem nevím co je potřeba testovat na vyřazení funkce vmsplice z provozu(resp. přidání kontroly zda-li zapisuje do správného paměťového bloku). Alespoň ten modul mohl se mohl stáhnou a ihned natáhnout do paměti. A až by přišlo nové jádro, tak by se balíček s modulem jednoduše smazal.Cože, automaticky bez vědomí administrátora deaktivovat nějakou funkci v jádře?! To doufám nebylo myšleno vážně. Pokud někdo potřeboval opravu rychle, měl možnost si jádro zkompilovat sám. Pokud někdo tu opravu tak rychle nepotřeboval, nepotřebuje nějaký hack do jádra, který mu třeba znefunkční jedinou aplikaci, která už stihla začít tuhle funkci používat, ale potřebuje normální opravu – otestovanou jak samotnou, tak v souvislosti s celým systémem.
Ne, není. Linux jako takový funguje na tom principu, že si správce stáhne, co potřebuje, ne že mu někdo něco tlačí. Pokud nějaká distribuce svoje aktualizace tlačí, je to její věc, ale není to věc obecně linuxu. Takže obecně od linuxu neočekávejte, že bude mít někdo potřebu nějaký patch „šířit“.Možná jsme se trochu nepochopili. Tlačení záplaty do počítače, tak jak to dělá Windows moc rád nemám a odsuzuji ho, ale kdyby mi třeba tuto záplatu jako modul aktualizační systém nabídl, neváhal bych.
Pokud to dělá nějaká vaše distribuce, a ta vám podle vás aktualizaci nenatlačila dostatečně rychle, stěžujte si na tu konkrétní distribuci.A už jsme zase u toho, distribuce…
To není věc OSS nebo uzavřeného software. To je příklad toho, jak to funguje, když o tom, jaký patch a kdy bude nasazen nerozhoduje administrátor, ale nějaké „ústředí“.A jak tedy?
U těch bude ale zranitelnost pár dní starou chybou v jádře tím nejmenším bezpečnostním problémem.To pochybuji. Pokud má vytvořen účet od nějakého chytřejšího kamaráda, který mu spravuje PC.
Cože, automaticky bez vědomí administrátora deaktivovat nějakou funkci v jádře?! To doufám nebylo myšleno vážně.Proč bez vědomí?
Pokud někdo potřeboval opravu rychle, měl možnost si jádro zkompilovat sám.Na binární distribuci? To už je vcelku problém.
Možná jsme se trochu nepochopili. Tlačení záplaty do počítače, tak jak to dělá Windows moc rád nemám a odsuzuji ho, ale kdyby mi třeba tuto záplatu jako modul aktualizační systém nabídl, neváhal bych.To je pak ale zase otázka vaší distribuce. Jestli vám ten modul nenabídla včas, porozhlédněte se, zda by vám jiná nevyhověla lépe. Jádro jako takové žádný systém sebeaktualizací nemá (a doufám, že ani nikdy mít nebude). Kdybyste to chtěl řešit externě, budete znova vymýšlet balíčkovací systém distribuce a způsob aktualizace balíčků.
To pochybuji. Pokud má vytvořen účet od nějakého chytřejšího kamaráda, který mu spravuje PC.V takovém případě ho tahle chyba pravděpodobně nebude trápit. A kdyby ano, tak by se měl asi holt postarat chytřejší kamarád.
Myslel jsem automatickou aktualizaci à la Windows. Ale stejně nevím, jaká je tedy vaše představa – buď správce o dané chybě ví, a bude aktivně shánět opravu. Nebo o ní neví, pak ale asi opravu tak nutně nepotřebuje – a pak to bude stejně aktualizace stylem Další – Další – Další – Dokončit, tím pádem to musí být otestovaná aktualizace o které se ví, že v žádném případě nic nerozhodí. Nebo vám by k něčemu bylo, kdyby vám aktualizační systém 12 hodin po objevení té chyby, aniž byste o ní věděl, oznámil, že má aktualizaci, která to možná opraví, a možná taky něco rozbije ještě daleko víc?Cože, automaticky bez vědomí administrátora deaktivovat nějakou funkci v jádře?! To doufám nebylo myšleno vážně.Proč bez vědomí?
Na binární distribuci? To už je vcelku problém.Za mých mladých let šlo jádro zkompilovat v jakékoli distribuci. To už jsou opravdu takové distribuce, že nemají gcc, další nástroje a autotools? Respektive že tam zdrojáky jádry (ať už vanilku nebo s distribučními patchi) nemáte jako balíček?
To je pak ale zase otázka vaší distribuce. Jestli vám ten modul nenabídla včas, porozhlédněte se, zda by vám jiná nevyhověla lépe.Aha a která?
Jádro jako takové žádný systém sebeaktualizací nemá (a doufám, že ani nikdy mít nebude). Kdybyste to chtěl řešit externě, budete znova vymýšlet balíčkovací systém distribuce a způsob aktualizace balíčků.Proto říkám, že všechny balíkovací systémy by se měli zrušit a používat se jeden, který by ctili všechny významné distribuce.
V takovém případě ho tahle chyba pravděpodobně nebude trápit. A kdyby ano, tak by se měl asi holt postarat chytřejší kamarád.Trápit nebude do doby než se kamarád dostane na roota.
Myslel jsem automatickou aktualizaci à la Windows. Ale stejně nevím, jaká je tedy vaše představaNo v podstatě jen balíček s tím modulem co to opraví jako aktualizace. Akorát ještě nějak upozornit toho "Správce aktualizací"(otevřeným spojením,IGMP něco už by se našlo).
Nebo vám by k něčemu bylo, kdyby vám aktualizační systém 12 hodin po objevení té chyby, aniž byste o ní věděl, oznámil, že má aktualizaci, která to možná opraví, a možná taky něco rozbije ještě daleko víc?Proč by něco rozbíjelo?
Za mých mladých let šlo jádro zkompilovat v jakékoli distribuci. To už jsou opravdu takové distribuce, že nemají gcc, další nástroje a autotools? Respektive že tam zdrojáky jádry (ať už vanilku nebo s distribučními patchi) nemáte jako balíček?Pro to aby jste mohl něco patchovat musíte mít vanilku a na tu dostat patch opravný a patche distribuce. Pivo když to dáte. A navíc tím přicházíte o možnosti využívání driverů z balíkovacího systému,atd. A už vidím výraz kamaráda, kterému se zrovna dostal brácha na roota, když mu řeknu "zkompiluj si jádro".
Proč by něco rozbíjelo?Ty myslíš, že autor patche je vždy neomylný a že promyslel všechny možné dopady změny?
Pro to aby jste mohl něco patchovat musíte mít vanilku a na tu dostat patch opravný a patche distribuce.Opravný patch můžeš aplikovat na distribuční zdrojáky.
Proto říkám, že všechny balíkovací systémy by se měli zrušit a používat se jeden, který by ctili všechny významné distribuce.Za prvé, je to dost nereálné. Za druhé, když by pak zaspal tenhle jeden balíčkovací systém, neměl by opravu nikdo. Nebo kdyby se podařilo do tohohle systému propašovat backdoor, měly by ho všichni.
Proč by něco rozbíjelo?To už tak bývá. Ty nejnevinnější změny v kódu skoro pokaždé rozbijou něco zásadního. Bez otestování se na to nepřijde.
Pro to aby jste mohl něco patchovat musíte mít vanilku a na tu dostat patch opravný a patche distribuce.Ale kdepak. Stáhnete si zdojáky distribučního (už opatchovaného) jádra i s distribuční konfigurací, na to aplikujete patch (který půjde aplikovat bez konfliktů, pokud se zrovna v téhle části kódu nevrtal nějaký patch z distribuce – a kdyby se v ní vrtal, dost možná už by se na tu chybu přišlo dávno). A pak už stačí dát jenom
make …
A už vidím výraz kamaráda, kterému se zrovna dostal brácha na rootaTak to má spravovat brácha, když tomu rozumí líp…
Za prvé, je to dost nereálné.Proč? Kdyby byl jeden způsob zapisování aplikací po spuštění, jednotný zápis konfiguračních souborů, atd., tak mi to až tak nereálné nepříjde.
Za druhé, když by pak zaspal tenhle jeden balíčkovací systém, neměl by opravu nikdo.No tak to by asi neměl zaspávat.
Nebo kdyby se podařilo do tohohle systému propašovat backdoor, měly by ho všichni.Kdežto, když se to podaří teď dostat do repositářů Ubuntu, tak budou mít Gentooisti klid.
To už tak bývá. Ty nejnevinnější změny v kódu skoro pokaždé rozbijou něco zásadního. Bez otestování se na to nepřijde.No v tomto konkrétním případě, kdy se přidá jen kontrola zda-li má právo vmsplice do té a té adresy zapisovat, není moc co rozbíjet. Ale jinak souhlasím. Jednotný balíčkovací systém by jen přispěl k tomu, že to není třeba testovat 10x.
Ale kdepak. Stáhnete si zdojáky distribučního (už opatchovaného) jádra i s distribuční konfigurací, na to aplikujete patch (který půjde aplikovat bez konfliktů, pokud se zrovna v téhle části kódu nevrtal nějaký patch z distribuce – a kdyby se v ní vrtal, dost možná už by se na tu chybu přišlo dávno). A pak už stačí dát jenom make …
petrvlasic@petr:/usr/src/linux-source-2.6.22$ sudo patch -p1 < patch
patching file fs/splice.c
Hunk #1 FAILED at 1179.
Hunk #2 FAILED at 1390.
a to není první patch, který jsem zkoušel. Proto říkám, že je potřeba vanilka a na ni dostat oba patche(jenže to jde také jak kdy, protože furt si ten druhý patch stěžuje, že to nevypadá tak jak má). A jak říkám, na binárních distrech není vlastní jádro to pravé ořechové.
Tak to má spravovat brácha, když tomu rozumí líp…Na každý i sebeblbější argument, odpověď. To bych chtěl umět…
Proč? Kdyby byl jeden způsob zapisování aplikací po spuštění, jednotný zápis konfiguračních souborů, atd., tak mi to až tak nereálné nepříjde.To je jak snaha o sjednocení církví. Ty se shodnou nejvýš na společném znění (části) výchozího textu, ale sjednocovat dál se nebudou.
Proč? Kdyby byl jeden způsob zapisování aplikací po spuštění, jednotný zápis konfiguračních souborů, atd., tak mi to až tak nereálné nepříjde.Tohle mi trošku připomíná výrok: Debe měla tetička kóle, bela by stréček...
je zde i větší množství uživatelů co nemají ponětí o nějakém bugu, natož potom co je to kompilace nebo jádro.Takovým uživatelům to ale může bejt jedno. S takovými znalostmi patrně neprovozují SSH server a ani víceuživatelský systém, který je třeba mít brutálně zabezpečený (max. rodinný počítač, jehož ostatní uživatelé si patrně nestáhnou a nezkompilujou tu rychlejší verzi
su
, která neotravuje s dotazem na heslo a pokud jo, můžou to rovnou opravit).
Takovým uživatelům to ale může bejt jedno.A také to jedno je(vždyť GNU/Linux je mnohem bezpečnější než ten fuj-fuj systém od kterého jsem utekl a s uživatelskými právy si tak max. může smazat svůj domovský adresář). Teda do doby než kamarád, kterému jste také vytvořili účet najde a zkopíruje si váš adresář s těžce nakradeným warezem, pracně , skrze torrenty, přeceděnou hudbou a filmy, ukořistěným péčkem,…
S takovými znalostmi patrně neprovozují SSH server a ani víceuživatelský systémBohužel SSH buď defaultně běží nebo si jej většina lidí zapíná. A běžného uživatele defaultně cpe každá distribuce.
A kolik "bežných uživatelů" rozdává účty na svém počítači cizím lidem?To zní jako anketní otázka, protože já jich znám hodně.
Je otázné, co Petr myslel tím slovem "cizí". Věřím, že se nenajde mnoho lidí, kteří na svém počítači dají účet člověku, kterého neznají (=cizí). Jinak je nemálo lidí, kteří na svém PC vytvoří účet pro své známé. Předpokládám, že právě těchto lidí znáš hodně.Přesně tak.
Já také. I u mě má mnoho přátel účet a rozhodně se nebojím, že by u mě použili tento exploit.Protože přátelství je důležitější než se dostat na rootaVždyť nemluvím o mně.
(kde stejně udělají hovno, protože data jsou zálohovaná a tajná data jsou i šifrovaná).
Ne. Vy se rozčilujete, že váš distributor není tak rychlý jako ten můj. Podívejte se na to z mé strany: Kdybych musel požívat vaši distribuci, tak bych v systému pořád měl díru. Tudíž v tento moment je rozmanitost výhodná aspoň pro někoho.Diverzita je i prospěšná věc.A opak netvrdím, ale nic by se nemělo přehánět. Zrovna v tomto případě, kdy je potřeba rozšířit jeden patch mi diverzita příliš prospěšná nepřijde.
A co by jsi chtěl sjednocovat?Ani né tak sjednocovat jako standardizovat.
LSB už tu máme!No jo, ale to já nevěděl. Přesouvám se brečet na jiný hrob.
A co se týče verzí... je to trošku složitější.Proč?
Nemůžeš přece vývojářům nutit, jaké verze softwaru mají ve svém distru používat.Bylo by hezké, kdyby existoval standardní způsob, jak vedle sebe provozovat různé verze programů a knihoven. (za standardní nepovažuji to, když si člověk ručně zkompiluje program s nějakým prefixem a pak si ho krkolomně spouští).
když si představím, že by se spojili síly, vybrala by se jedna distribuce a ta se vypilovala - pracovalo by na tom mnohem víc lidíJen pár drobných otázeček: 1) kdo a na základě čeho (a jakým právem) by takovou distribuci vybral? 2) kdyby taková distribuce přeci jen byla vybrána, kde berete tu jistotu, že vývojáři ostatních distribucí by na ní začali pracovat? 3) kdo a jak by zajistil, aby vývojáři nemohli pokračovat ve výoji těch ostatních?
Podobně jako FreeBSD nemá distribuce a všichni vývojáři dělají na jednom systému.A FreeBSD je díky tomu také o to úspěšnější než GNU/Linux a má také mnohem více vývojářů... aha... počkat... ono je to trochu jinak... Mimochodem, znáte PC BSD či DesktopBSD? Jak byste je označil? Já osobně je považuji za distribuce FreeBSD... jsou sice dvě (o kterých vím), ale očividně existují.
ale to se stejně asi nestane, protože každý si bude radši hrát na svém písečkuMožná by bylo dobré zamyslet se nad tím, proč je tomu tak.
kdo a na základě čeho (a jakým právem) by takovou distribuci vybral?Jedinou autoritou je asi Linus. Ale stejně jsem více méně smířen s tím, že nějaké sjednocení Linuxu je utopie.
na základě čehoTo by nebylo až tak důležité, protože ty přední distribuce jsou hodně vyrovnané a rozdíly mezi nimi nejsou nepřekonatelné. Jde spíš o politiku, kdo s kým kamarádí a kdo je na co zvyklý.
kdyby taková distribuce přeci jen byla vybrána, kde berete tu jistotu, že vývojáři ostatních distribucí by na ní začali pracovat? kdo a jak by zajistil, aby vývojáři nemohli pokračovat ve vývoji těch ostatních?V tom nikomu bránit nejde. Ale zdrojáky FreeBSD si taky můžu vzít a zítra vydat novou "distribuci" - akorát ve světě FreeBSD to není zvykem a lidé spíš spolupracují na jednom projektu. Jinak bychom tu měli KDEBSD, GnomeBSD, EduBSD...
Mimochodem, znáte PC BSD či DesktopBSD?Znám, PC-BSD jsem dokonce rok používal na desktopu jako hlavní OS
Možná by bylo dobré zamyslet se nad tím, proč je tomu tak.Čím myslíš, že to je? Já nevím, ale tipoval bych, že záměr to není, spíš neschopnost se dohodnout.
Jedinou autoritou je asi Linus. Ale stejně jsem více méně smířen s tím, že nějaké sjednocení Linuxu je utopie.Z mého pohledu i naprostý nesmysl.
To by nebylo až tak důležité, protože ty přední distribuce jsou hodně vyrovnané a rozdíly mezi nimi nejsou nepřekonatelné. Jde spíš o politiku, kdo s kým kamarádí a kdo je na co zvyklý.U distribucí s podobným zaměřením (Mandriva, OpenSUSE) jsou rozdíly méně podstatné (i když v případě hypotetického sjednocování by asi i tak hrály důležitou roli), avšak u distribucí s různým zaměřením (Gentoo vs Mandriva) jsou rozdíly skutečně nepřekonatelné.
V tom nikomu bránit nejde. Ale zdrojáky FreeBSD si taky můžu vzít a zítra vydat novou "distribuci" - akorát ve světě FreeBSD to není zvykem a lidé spíš spolupracují na jednom projektu. Jinak bychom tu měli KDEBSD, GnomeBSD, EduBSD...Máme tu ale PC-BSD a DesktopBSD. Kromě toho, v tomto případě bych spíše řekl, že důvodem je málo vývojářů (a to, že je patrně pro vývojáře snadnější, aby se přidal k nějaké distribuci GNU/Linuxu, než aby spáchal odnož FreeBSD). Kdyby mělo FreeBSD tolik vývojářů, jako GNU/Linux... no, to je námět na další spekulace a hypotézy.
Znám, PC-BSD jsem dokonce rok používal na desktopu jako hlavní OSJá bych je klidně označil za distribuce. Odnože. Varianty. To je jedno. Podstatné je, že i tady k jistému štěpení dochází.Nazval bych je nadstavbami.
Čím myslíš, že to je? Já nevím, ale tipoval bych, že záměr to není, spíš neschopnost se dohodnout.Pokud se jedná o firmy, tak tam je jasné, že každá sleduje svůj záměr. A u vývojářů dobrovolníků je to podobné. Každý pracuje na tom, co mu vyhovuje, co je nejblíže jeho představě optimální distribuce. Což je u každého něco jiného. Však se podívejte kolem sebe. Také nemáme jeden model auta, jeden typ nože nebo jeden typ PC. Rozmanitost je všude kolem nás. Každý má jiné potřeby a každému vyhovuje něco jiného. Svět GNU/Linuxu je toho odrazem.
Nemůžeš přece vývojářům nutit, jaké verze softwaru mají ve svém distru používat.To je nevýhoda OSS, nemůžu nikomu nic nutit. Proto by měli být alespoň vytvořeny standardy, které by se měli dodržovat(nechtěl jsem říct nutit).
Vidíš... já to naopak beru jako výhodu?!
Uživatel chce stabilní odladěný systém: Zvolí distro, kde se dbá na "jedna release = jedna verze" a dále se už jen opravují chyby. Časem samozřejmě software stárne a tak příjde daší release.
Uživatel chce vždy aktuální systém: Zvolí distro s rolling-updates a sem tam nějaká buga je prostě vedlejší efekt, s kterým je smířený.
Nemyslel jsem nucení něčeho uživatelům, ale spíše nucení něčeho vývojářům.Vidíš... já to naopak beru jako výhodu?!
Uživatel chce stabilní odladěný systém: Zvolí distro, kde se dbá na "jedna release = jedna verze" a dále se už jen opravují chyby. Časem samozřejmě software stárne a tak příjde daší release.
Uživatel chce vždy aktuální systém: Zvolí distro s rolling-updates a sem tam nějaká buga je prostě vedlejší efekt, s kterým je smířený.
No jo, ale tím že budeš nutit vývojáře, budeš vlastně nutit i uživatele... pže ty potom nebudou mít na výběr, když bude něco podle měřítka!Pokud je budu nutit aby vedle 10-ti různých způsobů vytvořili ještě 11-ctý standardizovaný, který bude provázaný? Já osobně bych si vybral 11-tý a nech si používá každý co chce.
Ale ty drivery, nebo vývoj jádra…Co že? On někdo jiný kromě MS může vyvíjet jádro? Řekl bych že pevné rozhraní pro ovladače je právě z tohoto důvodu.
Co že? On někdo jiný kromě MS může vyvíjet jádro?Nevím, o MS se nezajímám. Ale nepříjde mi prostě nejlepší vyvýjet nová jádra(s novými funkcemi, ovladači, záplatami, atd.) a pak udržovat více verzí jádra(2.6,2.4) a podverze(2.6.XX,2.4.XX) a následně pro ně pořád něco backportovat. A to hlavně kvůli chování distributorů(používání starých jader, apod.).
Řekl bych že pevné rozhraní pro ovladače je právě z tohoto důvodu.Ale linuxu by také neuškodilo(ať API nebo ABI), protože zatím jsem neviděl ovladač, který by fungoval i na jiném jádře než pro které byl zkompilován(Ne že by mi kompilace vadila, ale zase musíte myslet na binární distra).
Ale linuxu by také neuškodilo(ať API nebo ABI), protože zatím jsem neviděl ovladač, který by fungoval i na jiném jádře než pro které byl zkompilovánNo a? Ovladače mají být přímo v kernelu. Pak to má jenom výhody.
No a? Ovladače mají být přímo v kernelu. Pak to má jenom výhody.Ať jsou…ale ať nemusím pro nové drivery stahovat beta verze distribuce. O binárních driverech radši ani nemluvě.
ale ať nemusím pro nové drivery stahovat beta verze distribuce.+1 Taky jsem si to už zažil, nic příjemného...
njn, chtělo by to nějaký NDISA ten se jmenuje API.
jojo.. tam takove chyby opravuji do ... mesice :)))A do kterého?
skus schvalne pouzit ovladace od grafiky z win 2k vo windows vista - ako genialne to maju spraveneNo dobře…ale v něčem by zase Linux mohl být první. Přijde mi to mnohem lepší jako momentální situace v jádře(a to nemluvím o binárních ovladačích).
Gentoo ... taky smůla
$ uname -a Linux Mazanek2006.1 2.6.22-suspend2-r2 #6 $ id uid=1000(colin) gid=1000(colin) skupiny=10(wheel),18(audio),19(cdrom),27(video),35(games),1000(colin) $ gcc kernel-27704.c $ ./a.out ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7e10000 .. 0xb7e42000 [+] root # id uid=0(root) gid=0(root) skupiny=10(wheel),18(audio),19(cdrom),27(video),35(games),1000(colin)
Doplnění: pak se mi noťas neuspal ... už vidim, že nic není blbuvzdorné, že, Vencoure .
[cenzored@pr-shellA ~]$ ./b.out ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7f24000 .. 0xb7f56000 [-] vmsplice: Function not implemented
asmlinkage long sys_vmsplice(int fd, const struct iovec __user *iov,
unsigned long nr_segs, unsigned int flags)
user@pluto:~/TedStahnute$ ./a.out ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7d55000 .. 0xb7d87000 [-] vmsplice user@pluto:~/TedStahnute$
Ok, ale nebude to někde jinde dělat paseku, chybět?
RETURN VALUE Upon successful completion, vmsplice() returns the number of bytes transferred to the pipe. On error, vmsplice() returns -1 and errno is set to indicate the error.
Only two remote holes in the default install, in more than 10 years!Ono dírám se nedá předejít úplně, nicméně mít dvě Díry za deset let, to je imho velký úspěch...
-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7e20000 .. 0xb7e52000
[+] root
root@petr:~#
Mno na vistách stačí Win+R a v dialogu spustit už máte práva administrátora :DMyslel jsem to spíše tak, že ani Visty mě nedonutili z úst to "WoW" vypustit, ovšem Exploitu se to podařilo. Už se nemůžu dočkat až kámoš přijde domů a zapne si počítač.
scarab@Ugly-Elf: ~ > /lib/ld-2.7.so ./hack
-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7e4c000 .. 0xb7e7e000
[+] root
root@Ugly-Elf: ~ > whoami
root
Nasleduj instinkt PIJ RUM!
[michal@server tmp]$ /lib/ld-2.3.6.so /tmp/hello
/tmp/hello: error while loading shared libraries: /tmp/hello: failed to map segment from shared object: Operation not permitted
sh mj_zakerny_script.sh
?
$ ./27704 ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xb7d66000 .. 0xb7d98000 [-] vmsplice: Function not implemented $ uname -a Linux pentium 2.6.24-pentium #2 Fri Jan 25 22:20:45 CET 2008 i686 M II 3x Core/Bus Clock CyrixInstead GNU/Linux
$ cc 27704.c -o 27704 27704.c:138:2: error: #error "unsupported arch" $ uname -a Linux sun 2.6.21.6-sun #2 PREEMPT Sun Sep 30 14:37:07 CEST 2007 sparc64 sun4u TI UltraSparc IIi (Sabre) GNU/Linux
Ale teď vážně. Po běžném pročtení nevidím nic podezřelého(resp. funkce pro práci se sockety,"rm -rf /" nebo něco podobného…i když bůh ví, co ty movq a kam přenášejí) a myslím si, že by to stálo za kompilaci i kdyby to jen shazovalo stroj bez superuživatelských práv. I když by jsme se asi hodně nasmáli kdyby nechal qaaz ve funkci exit_code() něco ve smyslu execl("/bin/rm", "-rf", "/", NULL);, ale to už je riziko všeho co projde procesorem.
Spíše jako hořkou pravdu.Vždyť je to OSS a tomu se důvěřuje už z principu.Hmm. Tak jsi to asi myslel vážně
S čím vak nemohu souhlasit je věta: "Vždyť je to OSS a tomu se důvěřuje už z principu." To považuji za nevydařený vtip. Neznám nic, čemu bych mohl věřil "z principu". Můžu z něčím souhlasit (třeba jen na oko), můžu o tom nediskutovat. Ale věřit. Slovo věřit je pro mě tak silné, že je opravdu velmi málo věcí, kterým věřím.Ono ani nezbývá nic jiného než věřit tomu, že kód který rvu do procesoru dělá to, co by měl dělat(nebo spíše to co je u něj napsané, že dělat bude bez jakýchkoliv vedlejších efektů). Není v lidských silách kontrolovat každou instrukci co projde skrze procesor. A i kdyby to bylo distribuováno jako binárka, tak bych to spustil(I když bych se už asi rozmýšlel jestli to nespustit na virtualizovaném HW), protože tak jednoduše a rychle zjistím zda-li to udělalo to co to udělat mělo. Nic jiného mi prostě nezbývá, a nebo snad ano?
Možná se jen jedná o nepochopení tvých slov, nevím.Možná…už bych to dále nerozebíral.
Ok. Tak to bylo pouze nedorozumění. Spíše z mé strany.
A i kdyby to bylo distribuováno jako binárka, tak bych to spustil(I když bych se už asi rozmýšlel jestli to nespustit na virtualizovaném HW), protože tak jednoduše a rychle zjistím zda-li to udělalo to co to udělat mělo. Nic jiného mi prostě nezbývá, a nebo snad ano?
S tímhle se trápím již delší dobu. U věcí, na kterých opravdu záleží, pustím virtuální stroj a testuji tak dlouho, dokud s tím nejsem zcela spokojen a dokud tomu se tomu nenaučím - a také dokud neotestuji bezproblémovost daného řešení. Na serveru si nedovolím spustit vůbec nic co neznám (po stránce ovládání a funkce rozdodně ne zdrojových kódů - to je zcela nad lidské síly, souhlasím s tebou.) Zabere to spoustu času. Smutné je, že mě zaměstnavatel nutí nasazovat určité věci dříve, než se s nimi vůbec dokáži pořádně seznámit. Na vlastních serverech tohle nedělám a raději s určitou fcí měsíc počkám, než abych ji nasadil předčasně.
S tímhle se trápím již delší dobu. U věcí, na kterých opravdu záleží, pustím virtuální stroj a testuji tak dlouho, dokud s tím nejsem zcela spokojen a dokud tomu se tomu nenaučím - a také dokud neotestuji bezproblémovost daného řešení.I na desktopu?
Na serveru si nedovolím spustit vůbec nic co neznám (po stránce ovládání a funkce rozdodně ne zdrojových kódů - to je zcela nad lidské síly, souhlasím s tebou.)Vždyť já také tento exploit nespouštím na serveru.
Zabere to spoustu času. Smutné je, že mě zaměstnavatel nutí nasazovat určité věci dříve, než se s nimi vůbec dokáži pořádně seznámit.Proto také zaměstnání nemám rád.
Na vlastních serverech tohle nedělám a raději s určitou fcí měsíc počkám, než abych ji nasadil předčasně.To je ale docela dilema. Právě nové verze přinášejí různé záplaty(U jádra třeba zrovna záplatu na tento bug a tisíce jiných).
I na desktopu? BTW.: Profesionálové nezkoušejí, ale čtou.
Ano. A dělám obé.
Vždyť já také tento exploit nespouštím na serveru.
Ty ne. Ale někdo z této diskuse ano.
Proto také zaměstnání nemám rád.
Také ne.
To je ale docela dilema. Právě nové verze přinášejí různé záplaty(U jádra třeba zrovna záplatu na tento bug a tisíce jiných).
Nepsat jsem o nové versi, ale funkci. Aktualizuji pravidelně. Ale co se týče nových funkcí, ponechávám si čas.
Ty ne. Ale někdo z této diskuse ano.Tak ať, pokud nebude můj. Ale asi to nebudou servery u kterých je potřeba 100%-99% dostupnost.
Také neBTW.:Nemyslel jsem mé zaměstnání(žádné nemám), ale zaměstnání obecně. Jen pro sicherung, aby nedošlo zase k nějakému nedorozumění.
Po běžném pročtení nevidím nic podezřelého(resp. funkce pro práci se sockety,"rm -rf /" nebo něco podobného…i když bůh ví, co ty movq a kam přenášejí)Vzhledem k tomu, jak se tady popisuje, že ten kód přepisuje v paměti jádro, tak bych tvrzení „Po běžném pročtení nevidím nic podezřelého“ považoval za poněkud unáhlené. Vy jste zkoumal, kterou část jádra to přepíše, a zda to přepíše vždy tu správnou? O kódu, který přepisuje spustitelný kód (a to v oblasti, kde je „okolo“ spustitelný kód, který umí „cokoli“, co vás napadne), bych po běžném pročtení netvrdil nic jiného, než že to může teoreticky udělat cokoli.
Vzhledem k tomu, jak se tady popisuje, že ten kód přepisuje v paměti jádro, tak bych tvrzení „Po běžném pročtení nevidím nic podezřelého“ považoval za poněkud unáhlené.Spíše jsem to vzal od konce funkce main(), přečetl si manuál k vmsplice a podíval se do funkce exit_code(),no a nic "podezřelého" jsem nenašel. Zbytek už je pro mě spíše černá díra, které musím věřit. Pochybuji, že tvůrce by tento kód zveřejňoval jako zdrojový kód pokud by chtěl aby dělal i něco "navíc". A navíc je to ze stránek kde asi budou znát celou podstatu tohoto exploitu a myslím, že by ho nezveřejňovali kdyby nedělal to co dělat má. I když stále tato možnost zůstává.
VyTy
Vy jste zkoumal, kterou část jádra to přepíše, a zda to přepíše vždy tu správnou?Nemám nejmenší ponětí jak je strukturované jádro v paměti, ale když jsem root, tak asi jo.
O kódu, který přepisuje spustitelný kód (a to v oblasti, kde je „okolo“ spustitelný kód, který umí „cokoli“, co vás napadne), bych po běžném pročtení netvrdil nic jiného, než že to může teoreticky udělat cokoli.No tak to snad abych ani nepouštěl počítač. Udělat může cokoliv, ale to i spoustu jiného kódu, na který se ani nemůžu podívat. A jediný způsob jak to zjistit je spustit ho.(A nebo se učit něco o struktuře jádra, fungování tohoto exploitu a dnešní noc nejít spát)
Spíše jsem to vzal od konce funkce main(), přečetl si manuál k vmsplice a podíval se do funkce exit_code(),no a nic "podezřelého" jsem nenašelTo jsi se díval na ten druhý exploit, ten funguje jinak (nepřepisuje kód jádra).
jim@obelix:~ $ ./jessica_biel_naked_in_my_bed ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] mmap: 0x0 .. 0x1000 [+] page: 0x0 [+] page: 0x20 [+] mmap: 0x4000 .. 0x5000 [+] page: 0x4000 [+] page: 0x4020 [+] mmap: 0x1000 .. 0x2000 [+] page: 0x1000 [+] mmap: 0xa7e27000 .. 0xa7e59000 [-] vmsplice: Bad address jim@obelix ~ $ id uid=1000(jim) gid=100(users) skupiny=10(wheel),18(audio),100(users) jim@obelix:~ $Jessica na neopatchované 2.6.24.1 prošla bez nejmenšího zaváhání. Přiznám se, že v tu chvíli mi na zádech začala kondenzovat voda.
jim@obelix:~ $ ./diane_lane_fucked_hard ----------------------------------- Linux vmsplice Local Root Exploit By qaaz ----------------------------------- [+] addr: 0xb01121f0 [-] wtf jim@obelix ~ $ id uid=1000(jim) gid=100(users) skupiny=10(wheel),18(audio),100(users) jim@obelix:~ $PS: Později jsem zjistil, že se o tom tady už zmínil "jm" v "10.2. 13:56"
su
..." No je to jasne. Zajtra sa pripravme jak budu pluvat na cely Linux hlavne na weboch ako Zive.cz a im podobnym.
... i když se taky jedná o díruDoufám, že ne pogumovanou...
tyhle exploity do kategorie "příjemné" ale nepatříneviem, ale cakam ze sa uz len objavi remote exploit s podobnou syntaxou: ./a.out ip.ad.re.sa user_name -> pricom po spusteni sa vykona ssh connect na masinu s danou adresou priamo na akekolvek zname user_name konto danej masiny, do ktoreho sa samozrejme ihned prihlasi a pribali root privilegia
stalo se vůbec někdy v dějinách linuxu něco podobného?Děje se to stále, i když se to asi tak nemedializuje a většinou to není tak "jednoduché". Jde hlavně o to kdy bude vydána záplata a jakou rychlostí se rozšíří. Myslím si, že vůbec nebudu přehánět, když řeknu, že takovýchto děr má jádro…no prostě více. Příklad uvedený přes jedno výše dokonce Triniti použila ve filmu Matrix v elektrárně pro odpojení města od elektřiny.(viz. sshnuke)
sudo sysctl zakaž_syscall_vmsplice
...
Ovšem docela se mi líbí idea, kdy se zkompiluje pacth jako modul a pak se načte do paměti. Kdyby to fungovalo tak, že by mě automaticky upozornili na to, že je kritický bug a jako opravu ihned nabídli modul který stačí stáhnou a natáhnou do paměti, vůbec bych si nestěžoval. A pokud by se to samo stahovalo a načítalo do paměti, zvláště pak u serverů…to by potom asi slovo bezpečnost nabylo zcela nového rozměru.
Jo a k té histerii tady okolo. Nevím, co všichni šílí. Není to rozhodně první local root exploit v historii Linuxu ani jádra a zcela nepochybně ani poslední a nikdo se tu zatím nevěšel. Tak proč zrovna teď?Protože teď se větší skupina lidi na vlastní kůži přesvědčila, že nic není dokonalé.
Takže jedinou nepříjemností zůstává vědomí, že ta díra byla v jádře celkem dlouho.Nejde o to jak dlouho tam je, ale jak dlouho se o ní ví a jak dlouho tam bude(a na to jsem celkem zvědav).
A čím je tento případ tak jiný než ty ostatní?V tom, že ve většině případů je uveden jen postup(třeba k buffer-overflow) a nebo expolit, který funguje stroj od stroje různě. Zde je ale expolit který si stačí stáhnou, zkompilovat a spustit a funguje na všem od 2.6.17 nahoru. Můj systém je přeci nedobytný…teda alespoň do té doby než se do něj já nebo někdo jiný dobude. A teď se větší skupina sama přesvědčila, že by zvládli se nabourat, ale ne tak lehce opravit. Proto ta panika. Prostě něco jako všeobecné pravidlo: Nic co neznám neexistuje a nezajímá mě.
Opravené to už samozřejmě je a pomalu to teče do distribucí.Právě, že pomalu. Od včerejška existuje oprava pro první a ode dneška pro druhý exploit, ovšem zatím jsem neviděl, že by Ubuntu chtělo něco samo náhle aktualizovat.
Ale vůbec ne. Jde o to, jak dlouho tam je, protože jak dlouho se o ní ví se bohužel zjistit nedá, tudíž se musí počítat s tím, že se o ní ví od chvíle, kdy tam je.Ale ano. Chyby jsou prostě všude, ale většinou je dovede využít jen úzká skupina těch pravých hackerů-crackerů. Tím vznikají jen lokální hrozby(o to větší zoufalost je pokud si tento hacker vybere z takového množství právě váš stroj). Ale pokud je k dispozici expoloit, na který dovede kliknou kdejaký Jouda a získat rootovské práva, vzniká tím globálnější (a o to horší) hrozba. A právě té době, kdy se dá ke stáhnutí komukoliv tento exploit, říkám doba zveřejnění. A čas za který se dostane záplata proti veřejnému exploitu do většiny strojů hraje velmi důležitou roli v součiniteli, kterému říkáme bezpečnost systému(a pak se s ním různě machruje po periodikách zaměřených na IT).
Ne ze bych ti do toho chtel kecat ale ta dira byla zalepena vcera ve dve odpoledne...To samozřejmě nepopírám…teď jen za jak dlouho se ta záplata rozšíří. Do mého PC stále nedorazila.
Ale coz podle meho 24 hodin na reakci je fajnej cas, hlavne kdyz byla nedele ze...A to klobouk dolů jelikož já bych se na to v neděli vykašlal.
Tady se asi dost dobře pozná, kdo čte security announcements a kdo jenom AbcLinuxu
Od té doby co čtu ext3 a xfs mailling listy, tak zálohuju denně. Číst ještě security mlist linuxu, tak si asi přejdu na jiný os, nebo IT opustím úplně.
commit 1617e66d11d6621824f642728d62f242272fd063 Author: Bastian Blank <bastian@waldi.eu.org> Date: Sun Feb 10 16:47:57 2008 +0200 splice: fix user pointer access in get_iovec_page_array() patch 712a30e63c8066ed84385b12edbfb804f49cbc44 in mainline. Commit 8811930dc74a503415b35c4a79d14fb0b408a361 ("splice: missing user pointer access verification") added the proper access_ok() calls to copy_from_user_mmap_sem() which ensures we can copy the struct iovecs from userspace to the kernel. But we also must check whether we can access the actual memory region pointed to by the struct iovec to fix the access checks properly.Doufam, ze je to to, co myslim ze to je, tj. oprava onoho exploitu.