Boudhayan "bbhtt" Bhattcharya v článku Uzavření kapitoly o OpenH264 vysvětluje, proč bylo OpenH264 odstraněno z Freedesktop SDK.
Představeny byly nové verze AI modelů: DeepSeek V3-0324, Google Gemini 2.5 a OpenAI 4o Image Generation.
XZ Utils (Wikipedie) byly vydány ve verzi 5.8.0. Jedná se o první větší vydání od backdooru v XZ v loňském roce.
Byla vydána nová verze 0.40.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 2.20 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.
LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), byl vydán ve verzi 1.3.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Vypíchnut je interaktivní HTML BOM (Bill of Materials) a počáteční podpora Rustu. Zdrojové kódy LibrePCB jsou k dispozici na GitHubu pod licencí GPLv3.
Minulý měsíc Hector "marcan" Martin skončil jako upstream vývojář linuxového jádra i jako vedoucí projektu Asahi Linux. Vývoj Asahi Linuxu, tj. Linuxu pro Apple Silicon, ale pokračuje dál. Byl publikován březnový přehled dění a novinek z vývoje. Vývojáře lze podpořit na Open Collective.
Ruská firma Operation Zero nabízí až $4 miliony za funkčí exploit komunikační platformy Telegram. Nabídku učinila na platformě X. Firma je známá prodejem exploitů ruské vládě a soukromým společnostem. Další informace na securityweek.com.
Po 9 týdnech vývoje od vydání Linuxu 6.13 oznámil Linus Torvalds vydání Linuxu 6.14. Proč až v pondělí? V neděli prostě zapomněl :-). Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies.
Konference LinuxDays 2025 proběhne o víkendu 4. a 5. října v Praze v areálu ČVUT v Dejvicích na FIT.
Skupina zaměřená na koordinaci a shromažďování informací prospěšných projektu Multiplatformní přístup pro datové schránky.
Založena: | 5. 10. 2009 |
Členů: | 26 |
Článků: | 0 |
Wiki stránek: | 7 |
Dotazů: | 22 |
Akcí: | 0 |
Čtenost: | 30 % |
Skóre: | 19 |
Dostal jsem se k posílání zpráv do ISDS. Odeslal jsem zprávu s tímto dokumentem:
<dmFile dmMimeType="text/plain" dmFileMetaType="enclosure" dmFileDescr="Standard text"> <dmEncodedContent>SGVsbG8gV29ybGQhAA== </dmEncodedContent> </dmFile>
A nedovede si představit, co že mi přišlo za chybu:
Server did not accept message for vqbab52 on CreateMessage request (code=1214, message=Přípona souboru přiloženého k datové zprávě není v seznamu povolených přípon
Co to sakra je? Takhle si představují kontrolu na přípustné formáty? Od čeho máme atribut @dmMimeType? Proč si do @dmFileDescr nemůžu napsat, co chci, když i dokumentace říká:
může obsahovat jméno souboru, příp. jiný popis. Objeví se v seznamu příloh na portále
Tohle mi hlava nebere. Nevíte někdo, jak to tedy je? Znamená to, že si /etc/passwd přes ISDS nepošlu? A to jsem už překousl, že se příjemce nikde nedozví, v jaké znakové sadě je ten text.
code=1214, message=Obsah souboru přiloženého k datové zprávě neodpovídá příponě souboru. Tak buď jsem přehlédl něco fatálního já, nebo to mají nějaké rozbité oni.
To je divný. Kóduji ten text do MIME Base64 správně? Níže je požadavek, který selže. Nevidíte tam nějakou chybu?
SOAP request to sent to https://www.czebox.cz/DS/dz: <?xml version="1.0" encoding="UTF-8"?> <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"> <Body> <CreateMessage xmlns="http://isds.czechpoint.cz/v20"> <dmEnvelope> <dmSenderOrgUnit/> <dmSenderOrgUnitNum>42</dmSenderOrgUnitNum> <dbIDRecipient>vqbab52</dbIDRecipient> <dmRecipientOrgUnit/> <dmRecipientOrgUnitNum/> <dmToHands/> <dmAnnotation>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</dmAnnotation> <dmRecipientRefNumber/> <dmSenderRefNumber/> <dmRecipientIdent/> <dmSenderIdent/> <dmLegalTitleLaw/> <dmLegalTitleYear/> <dmLegalTitleSect/> <dmLegalTitlePar/> <dmLegalTitlePoint/> <dmPersonalDelivery/> <dmAllowSubstDelivery/> <dmOVM/> </dmEnvelope> <dmFiles> <dmFile dmMimeType="text/plain" dmFileMetaType="main" dmFileDescr="standard_text.txt"> <dmEncodedContent>SGVsbG8gV29ybGQhAA== </dmEncodedContent> </dmFile> </dmFiles> </CreateMessage> </Body> </Envelope>
$ echo "SGVsbG8gV29ybGQhAA==" | base64 -d | od -c 0000000 H e l l o W o r l d ! \0 0000015
dmFileDescr - název vloženého souboru, povinný údaj, objeví se na Portále v seznamu písemností. Z jeho přípony Portál usuzuje na typ souboru a umožňuje provést další akce, např. umožnit odeslání k autorizované konverzi pro soubor typu PDF.V té dokumentaci je spousta nesrovnalostí, u podepsané přijaté zprávy má být jmenný prostor podle dokumentace "isds.czebox.cz/v20/message", ve skutečnosti je "http://isds.czechpoint.cz/v20/message". Kvalifikovaná časová značka podání zprávy není v dokumentaci nijak specifikována, ale jedná se o RFC 3161. Něco málo o tom jsem napsal na wiki.
No je to naprosté diletanství. To by mohli @dmMimeType rovnou zrušit. Nikde není seznam jediných správných přípon. Zvláštní jmenný prostor pro podepsané obálky je taky hloupost, protože ten podpis je nad obálkou a jmenný prostor identifikuje druh dat (obálka jako obálka), nikoliv jakousi externí vlastnost – být podepsán.
Ale i takový jev, že zpráva má jiný tvar podle toho, jestli se odesílá, přijímá nebo se stahuje doručenka, mi pije krev. Vždyť všechno mohla být formálně stejná zpráva a do ní jen přilepovat nové údaje, podle toho, jak se mění její stav (podaná, doručená, přijatá).
S tím souvisí moje otázka: Jak jste řešil lokální ukládání? Já jsem původně chtěl poskytnout aplikaci syrové SOAP tělo, jenže protože různé požadavky vrací stejnou zprávu jinak, tak jsem to zavrhl. Ve čtvrté příloze je formát ESS. Má smysl se s ním lopotit? Nechce se mi vymýšlet další formát, kterému by rozuměl jen můj program.
Dalším extrabuřtem je jiný formát pro informace o schránce ve zprávě a v informacích o schránce. Opět to jsou stejné údaje, jen pro potěšení spisových služeb, aby se nemuseli s těmito údaji formátovat, jim tyto údaje předžvýká ISDS. Takže z přijaté zprávy nelze strojově zjistit, kdo a komu ji poslal. Přitom stačilo do zprávy nastrkat dbOwnerInfo.
Je-li u písemnosti specifikován mime-type, nesmí být na seznamu zakázaných mime-typů, který v současnosti obsahuje: application/x-zip-compressed a application/x-msdownload.
Přípona jméno souboru tvořícího písemnost, se v této verzi musí vyskytovat na seznamu povolených přípon, který zahrnuje: pdf, xml, fo, zfo, html, htm, odt, ods, odp, txt, rtf, doc, xls, ppt, jpg, jpeg, jfif, png, tiff, gif, mpeg1 mpeg2, wav, mp2, mp3. Nově byly přidány: cer, crt, der, pk7 - formáty certifikátů dle X509; p7b, p7c, p7f, p7m, p7s - formáty certifikátů a elektronických podpisů dle PKCS#7, tst – časové razítko. Skutečná struktura souboru a její shoda se strukturou odpovídající příponě se v současné verzi nekontroluje, ale plánuje se do budoucna.
Ten první odstavec ohledně MIME typů je silně zavádějící, MIME type je povinný, zpráva bez něj neprojde a přijaté zprávy ho nemusí splňovat (třeba odpovědi testovacích schránek mají MIME type "pdf", ne správný "aplication/pdf"). Na tom jejich nepřehledném helpdesku někdo odpovídal, že ta povinost specifikace MIME typů se týká jen testovacích schránek a v produkčním prostředí se zatím ignoruje. Shoda přípon dokumentů s obsahem se již provádí, např. nelze odeslat textový dokument se znaky 0x0.
Také by mně zajímalo, z jakého důvodu nejsou podporované komprimované soubory?Ten odlišný jmenný prostor jsem pochopil jaku hack pro ten jejich XML Form Filler, aby ji mohl otevřít, neboť v dokumentaci se píše:
Obsah zprávy po odstranění podpisu je totožný s popisem u MessageDownload, pouze s odlišným namespace „isds.czebox.cz/v20/message“. Pokud budete validovat výsledné XML proti XSD, musíte řetězec „/message“ odmazat.
Staženou podepsanou zprávu umí 602XMLFiller analyzovat a otevřít (díky namespace). Přitom zobrazí údaje o podpisu a o časovém razítku. Aplikace třetích stran mohou pro totéž použít např. MS Crypto API pro Windows nebo OpenSSL API pro Linux. Stažená zpráva NENÍ ve formátu fo nebo zfo (XML formulář), jedná se pouze o XML data.
Jak budu řešit ukládání zpráv? Dobrý dotaz. Napadají mě dvě řešení, buď ukládat zprávu i s binární obálkou podpisu ve formátu PKCS#7 nebo výsledný XML dokument po odstranění této obálky, ten neobsahuje SOAP tělo. Do obsahu zprávy přitom nebudu nijak zasahovat, jmenné prostory ponechám. Zprávy pro archivaci budu stahovat službou SignedMessageDownload.
U toho SOAPu a služby MessageDownload je problém s tím, že nesmím porušit fyzickou strukturu dokumentu kvůli výpočtu haše zprávy a ověření časového razítka, takže bych tu zprávu musel ukládat i se SOAP tělem, tak jak ji dostanu, což nedává moc smysl nebo tu SOAP tělo odstranit a přitom ponechat fyzickou strukturu zprávy, což je problém.
Protože zbaběle utekly od XMLdsigu, tak se to bohužel jinak udělat nedá. Když aplikace poskytne zprávu, kterou si někdo někde ukuchtil, tak nebude sedět hash. Prostě to bude zodpovědnost aplikace.
„Rozepsanou“ zprávu prostě nebude možné ověřit. Respektive zpráva bude považována za netotožnou. Jinak bych musel simulovat pochody ISDS (a dělat takové úchylárny jako je doplňování nedefinovaného čísla organizační jednotky na nulu) se všemi jeho chybami.
Tiskni
Sdílej: