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.
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á verze | Priorita |
|---|---|---|
| DPAttachments | 5.8.1 | Okamžitě, dostupné bez přihlášení |
| DPMedia | 1.21.1 | Vysoká |
| DPCases | 3.8.1 | Vysoká |
| DPCalendar pro Joomla 4.4, 5 a 6 | 10.12.1 | Vysoká |
| DPCalendar pro Joomla 3 | 8.19.6 | Bezpeč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í
- V administraci otevřete Systém → Aktualizace → Rozšíření a spusťte kontrolu aktualizací.
- Zjistěte verze DPAttachments, DPCalendar, DPMedia a DPCases na všech spravovaných webech.
- Nejprve aktualizujte DPAttachments na 5.8.1.
- Potom aktualizujte DPMedia na 1.21.1, DPCases na 3.8.1 a DPCalendar na správnou větev.
- U DPCalendaru projděte i všechny související moduly a pluginy.
- Před aktualizací vytvořte ověřenou zálohu souborů a databáze.
- Po instalaci vymažte mezipaměť Joomla a otestujte frontend, kalendáře, média, přílohy a formuláře.
- 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.