Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.
Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).
Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.
Knihovna libpng, tj. oficiální referenční knihovna grafického formátu PNG (Portable Network Graphics), byla vydána ve verzi 1.6.51. Opraveny jsou 4 bezpečnostní chyby obsaženy ve verzích 1.6.0 (vydána 14. února 2013) až 1.6.50. Nejvážnější z chyb CVE-2025-65018 může vést ke spuštění libovolného kódu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 159 (pdf).
Hru Warhammer: Vermintide 2 (ProtonDB) lze na Steamu získat zdarma napořád, když aktivaci provedete do pondělí 24. listopadu.
Virtualizační software Xen (Wikipedie) byl vydán v nové verzi 4.21. Podrobnosti v poznámkách k vydání a přehledu nových vlastností.
Evropská komise schválila český plán na poskytnutí státní pomoci v objemu 450 milionů eur (téměř 11 miliard Kč) na rozšíření výroby amerického producenta polovodičů onsemi v Rožnově pod Radhoštěm. Komise o tom informovala v dnešní tiskové zprávě. Společnost onsemi by podle ní do nového závodu v Rožnově pod Radhoštěm měla investovat 1,64 miliardy eur (téměř 40 miliard Kč).
Microsoft v příspěvku na svém blogu věnovaném open source oznámil, že textové adventury Zork I, Zork II a Zork III (Wikipedie) jsou oficiálně open source pod licencí MIT.
První prosincový týden proběhne SUSE Hack Week 25. Zaměstnanci SUSE mohou věnovat svůj pracovní čas libovolným open source projektům, například přidání AI agenta do Bugzilly, implementaci SSH v programovacím jazyce Zig nebo portaci klasických her na Linux. Připojit se může kdokoli.
Jsem zakladatelem tohoto portálu. Linux jsem používal spousty let, nějaký čas jsem se aktivně podílel na jeho propagaci v Česku (CZLUG, časopisy ComputerWorld, Network Magazine atd). Se současným Abíčkem už nemám nic společného.
Dominik Joe Pantůček mě upozornil na závažnou díru v Abíčku. Sice jsem se o ni doslechl už dříve, ale teprve teď jsem si dokázal konkrétně představit, jak by se dala zneužít. S Joem jsme pak našli algoritmus, který by měl být dostatečně odolný.
Konkrétně šlo o to, že do parametru SRC bylo možno vložit speciální URL na provedení nějaké akce. Například byste do blogu přidali obrázek, jehož adresa by byla rovna odeslání komentáře s textem Leoš tam má díru. Každý, kdo by si blog otevřel, by okamžitě k němu přidal tento komentář. Nebo by šlo dělat skrytější akce, například hlasování v anketě, hodnocení blogu či smazání nového článku (pokud by si blog otevřel admin).
Teď jsem měl několik možností, jak situaci vyřešit. Například úplně zakázat obrázky, nebo povolit jen obrázky umístěné na abclinuxu v bezpečných adresářích. Vzhledem k možnosti redirektu totiž nemělo smysl považovat jakákoliv URL mimo abíčko za bezpečná. Ale nechtěl jsem omezovat uživatele a proto jsem se vydal jinou cestou - kontrolovat všechny akce, zda jsou volány tak, jak by měly být volány.
S Joem jsme došli k názoru, že útok na abíčko by musel jít jen přes GETové linky, tudíž první fronta obrany je ověření, zda akce přišla jako POST. Nicméně existuje poměrně dost akcí, které nejsou ve formuláři, ale jako odkazy. Například zmražení diskuse nebo hodnocení článku. Pro ně jsem musel vytvořit koncept ticketu, který je přiřazen ke každému uživateli. Pokud tedy akce může přijít jako GET, kontroluji, zda je vyplněn správný ticket. Ten je tajný a útočník se k němu nemůže dostat, leda chybou uživatele. A i pak by šel udělat útok na konkrétního uživatele, ale už ne obecný na všechny uživatele. Další obranou je kontrola referera. Ověřuji, zda předchozí stránka byla formulář či nikoliv.
Abíčko je velmi, ale opravdu velmi rozsáhlé a proto obsahuje spousty různých akcí a situací. Co platí pro jednu akci, pro druhou neprojde. Takže metoda ActionProtector.ensureContract() má čtyři přepínače, které určují, co se má kontrolovat. Využitých kombinací je většina.
Závěrem chci poděkovat Joeovi za pomoc. Pokud narazíte na další problém, prosím dejte mi vědět, pokusím se jej opravit.
PS. dostanete-li chybu Chybné volání akce, přečtěte si FAQ. Možná je chyba na vaší straně.
Tiskni
Sdílej:

popr nejaký perfekcionista, ktorému vadí, že tam vôbec nejaká chyba bola ...
To já jsem ale nehodnotil snahu vylepšovat abcl, já jsem hodnotil jen zápisek. A hned v prvním odstavci mě autor naštval použitím slova algoritmus. Nemám rád, když se vznešená slova používají pro každou blbinu (ikdyž je to třeba formálně správně). Když už jsme u toho tak, jsem se trochu podivil i nad použitím slova sofistikovaný ve vysvětlení té chyby. Je to balast, do vysvětlení nic takového nepatří. "Obsahuje sofistikovanou ochranu" nebo "vznikne číslo, které se zpracuje složitou matematickou funkcí (na bázi logaritmu)". Přispívají ta slova nějak k ozřejmění problému?
Snaha vylepšovat tenhle web je jistě hodna ocenění, ale představuju si trochu jiné ocenění než dobré hodnocení blogu. A taky je to oprava chyby, ne nová funkce, po které všichni prahneme
Kdyby ti každou hodinu na deset minut vypadl obraz v televizi kvůli nějaké chybě u provozovatele stanice, taky bys posílal děkovné dopisy až by to opravili? Jestliže něco závisí jen na nadšenectví několika málo jednotlivců, tak to nemůže mít tuhý kořínek a dříve nebo později to shnije. To se týká nejen tohohle webu ale i třeba samotného linuxu. I na to je třeba pamatovat při hledání správné formy ocenění.
Třeba nemá rád 100% čistotu, hodnotu atd.? Pak snad ale může ještě nehlasovat.