Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »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 ...
Třeba nemá rád 100% čistotu, hodnotu atd.? Pak snad ale může ještě nehlasovat.