Digital Peak vydal mimořádné bezpečnostní aktualizace pro DPAttachments, DPCalendar, DPMedia a DPCases. Nejnaléhavější je DPAttachments 5.8.1: starší verze mohly bez přihlášení zpřístupnit přílohy, které měly zůstat neveřejné. Přinášíme přehled rizik, opravených verzí a konkrétní postup kontroly webu.

Co se stalo

Vývojář rozšíření Digital Peak zveřejnil mimo běžný plán bezpečnostní opravy čtyř produktů. Podle oznámení shrnují aktualizace dvanáct nálezů, z nichž čtyři mají vysokou závažnost. Chyby byly nalezeny při interním auditu výrobce.

Nejvyšší prioritu má DPAttachments 5.8.1, protože problematický odkaz pro stažení přílohy mohl být dostupný anonymnímu návštěvníkovi. Ostatní popsané problémy zpravidla vyžadují přihlášený účet, určité oprávnění nebo důvěryhodný zdroj obsahu.

Důležité: V době zveřejnění tohoto článku nemusely mít všechny nové nálezy přidělené CVE. Absence CVE není důkazem, že je chyba málo závažná; rozhodující je způsob zneužití, dopad a dostupnost opravy.

Proč je chyba v DPAttachments nejzávažnější

DPAttachments umožňuje připojovat soubory k obsahu Joomla a nastavovat jejich přístupovou úroveň či interval zveřejnění. Ve zranitelných verzích kontroloval download, zda příloha existuje, ale nemusel správně ověřit, zda ji smí konkrétní návštěvník stáhnout.

Útočník tak mohl požádat o přílohu přímo podle jejího číselného ID. Protože se identifikátory obvykle přidělují postupně, bylo možné zkoušet další hodnoty a získat například:

  • nezveřejněné nebo připravované přílohy,
  • soubory omezené na registrované či vybrané skupiny uživatelů,
  • přílohy před začátkem nebo po konci publikačního období,
  • dokumenty připojené k obsahu, který sám nebyl veřejný.

Jde o chybu řízení přístupu, často označovanou jako IDOR nebo broken access control. Nevyžaduje prolomení hesla ani převzetí administrace. Dopad závisí na tom, jaké soubory web v DPAttachments uchovával.

Na jaké verze aktualizovat

RozšířeníCílová verzePriorita
DPAttachments5.8.1Okamžitě, dostupné bez přihlášení
DPMedia1.21.1Vysoká
DPCases3.8.1Vysoká
DPCalendar pro Joomla 4.4, 5 a 610.12.1Vysoká
DPCalendar pro Joomla 38.19.6Bezpečnostní backport

U DPCalendaru zkontrolujte také samostatně nainstalované pluginy a moduly. Balík zahrnuje řadu integrací, platebních pluginů a modulů a Joomla může jejich aktualizace zobrazit jako více samostatných položek. Aktualizace pouze hlavní komponenty proto nemusí znamenat, že je celý balík hotový.

Řada DPCalendar 9.x nemá podle upozornění samostatnou opravu. Přechod na současnou řadu je nutné naplánovat postupně a předem otestovat.

Jaké další typy chyb aktualizace řeší

Součástí oprav jsou mimo jiné problémy s výstupním escapováním a se zpracováním dat. Typickým příkladem je uložené XSS: hodnota uložená v databázi se vypíše do HTML atributu bez správného escapování a může se změnit ve spustitelný kód v prohlížeči návštěvníka.

U DPAttachments se problém týkal také CSV náhledu, kde byly ošetřeny datové buňky, ale ne záhlaví. U DPCalendaru se obdobný vzor objevil v mapové šabloně: jedna hodnota byla escapována, sousední nikoli. Právě takové nesymetrické ošetření se při ruční kontrole snadno přehlédne.

Výrobce již dříve v řadě DPCalendar 10.12 řešil autentizovanou blind SQL injection a uložené XSS. Starší instalace je proto vhodné aktualizovat rovnou na nejnovější podporovanou verzi, nikoli pouze na první meziverzi s jednou opravou.

Co by měl správce Joomla udělat nyní

  1. V administraci otevřete Systém → Aktualizace → Rozšíření a spusťte kontrolu aktualizací.
  2. Zjistěte verze DPAttachments, DPCalendar, DPMedia a DPCases na všech spravovaných webech.
  3. Nejprve aktualizujte DPAttachments na 5.8.1.
  4. Potom aktualizujte DPMedia na 1.21.1, DPCases na 3.8.1 a DPCalendar na správnou větev.
  5. U DPCalendaru projděte i všechny související moduly a pluginy.
  6. Před aktualizací vytvořte ověřenou zálohu souborů a databáze.
  7. Po instalaci vymažte mezipaměť Joomla a otestujte frontend, kalendáře, média, přílohy a formuláře.
  8. Zkontrolujte, zda na webu nezůstaly staré nebo nepoužívané účty s oprávněním vytvářet či upravovat obsah.

Jak prověřit možný únik neveřejných příloh

Pokud DPAttachments sloužil jen k publikaci veřejných letáků, katalogů nebo návodů, obvykle stačí rychle aktualizovat a ověřit funkčnost. Pokud ale obsahoval nabídky, faktury, členské dokumenty, smlouvy, návrhy nebo jiné neveřejné soubory, zacházejte s nimi jako s potenciálně zpřístupněnými.

  • Vytvořte seznam všech příloh a jejich původních přístupových úrovní.
  • Určete, zda obsahovaly osobní, obchodní nebo přihlašovací údaje.
  • Projít můžete webserverové a proxy logy; samotná komponenta však nemusí poskytovat úplnou auditní stopu stažení.
  • Hledejte neobvyklé série požadavků na download endpoint a postupně se měnící ID.
  • Pokud soubor obsahoval heslo, token nebo klíč, okamžitě jej zneplatněte a nahraďte.
  • U osobních údajů vyhodnoťte s pověřencem či právníkem oznamovací povinnosti podle konkrétního dopadu.

Jak podobným problémům předcházet

Citlivé dokumenty neukládejte do veřejně dostupné webové struktury pouze s předpokladem, že je skryje odkaz nebo položka menu. Každé stažení musí na serveru znovu ověřit identitu uživatele, přístupovou úroveň, stav publikace a vazbu přílohy na chráněný obsah.

Pomáhá také pravidelný inventář rozšíření, automatické upozornění na nové verze, odstranění nepoužívaných doplňků, testovací kopie webu a přehled účtů s rozšířenými právy. Bezpečnostní aktualizace instalujte podle reálného rizika: anonymně dostupná chyba chránící neveřejná data má přednost před běžnou údržbou.

Časté otázky

Ano, popsaná chyba ve starších verzích mohla umožnit anonymní stažení přílohy podle jejího ID. Oprava je ve verzi 5.8.1.

Ne. Skrytý odkaz není řízení přístupu. Oprávnění musí ověřit server při každém stažení.

Nejprve DPAttachments 5.8.1, protože tato chyba nevyžaduje účet. Poté aktualizujte ostatní produkty Digital Peak.

Pro podporované Joomla 4.4, 5 a 6 použijte 10.12.1. Pro Joomla 3 je určen bezpečnostní backport 8.19.6.

Samostatná opravená verze této větve není uvedena. Přechod na aktuální řadu je nutné naplánovat a otestovat.

Ano. DPCalendar se skládá z více samostatných položek a každá nainstalovaná část může mít vlastní aktualizaci.

V době prvotního upozornění nemuselo být CVE přidělené každému nálezu. To nemění nutnost instalovat opravu.

Ne. Znamená možnost zneužití. Skutečný incident je nutné posoudit podle uložených dat a dostupných logů.

Někdy pomohou webserverové, CDN nebo proxy logy, komponenta však nemusí uchovávat úplnou historii stažení.

Aktualizaci proveďte, ale dopad na důvěrnost bude malý, pokud v komponentě skutečně nebyly neveřejné soubory.

Považujte jej za kompromitovaný, zneplatněte jej a vytvořte nový. Pouhá změna přístupové úrovně přílohy nestačí.

WAF může některé vzory omezit, ale nenahrazuje kontrolu oprávnění v aplikaci ani instalaci opravené verze.

Ano. Záloha databáze a souborů umožní návrat při nečekané kolizi rozšíření nebo šablony.

Zkontrolujte čísla verzí všech součástí, vymažte cache a prakticky otestujte přílohy, kalendáře, média i formuláře.

Neošetřená hodnota se může změnit v HTML nebo JavaScript a spustit se návštěvníkovi jako uložené XSS.

Další zdroje