Blog

Je Drupal je najbezpečnejší open-source CMS?

2016/05
Letmé porovnanie bezpečnosti voľne dostupných redakčných systémov. Na úvod mi dovoľte venovať sa hlavne dvom open-source redakčným systémom (CMS) z nich - Wordpressu a Drupalu. Dávnejšie sme sa venovali aj Joomle, ale je to minulosť a TYPO3 obchádzam s rešpektom, takže hlavné slovo bude mať Drupal a Wordpress. Celá téma je ako reťaz,má viac navzájom súvisiacich ohniviek a treba sa venovať každému z nich. Open-source vs vlastné CMS O výhodách používania open-source sa popísalo veľa, je to filozofická otázka prístupu k projektom aj ku klientovi. Ak vás ako klienta presvedčil dodávateľ na jeho vlastné riešenie, je podla mňa dobrý obchodník. Nenápadne vytvoril vašu závislosť od jeho služieb. Ak má jeho systém bezpečnostnú  chybu, nemusíte na ňu prísť niekoľko rokov ak vôbec. Pri niekoľkých desiatkach inštalácií webstránky by to bola skôr náhoda alebo veľký amaterizmus. Veľké CMS sú na tom rádovo inde, pri státisícoch projektov je každé riziko problém veľkého počtu ľudí. Veľa inštalácií znamená veľa testovaní a zároveň veľa pokusov o zlomenie systému. Celkom sa bavím pri čítaní serverových logov Drupal projektu ako roboty úplne pravidelne volajú prihlasovaciu linku z Wordpressu (/wp-login.php). Tlaky na vyriešenie problému sú obrovské. Najlepšie je, že pri open-source sa problém skôr či neskôr vyrieši “sám” (viď ďalší odstavec).   Bezpečnosť jadra CMS Našťastie Drupal  a Wordpress po rokoch vývoja priplávali do relatívne bezpečných vôd a ich jadrá sú pri dodržaní základných pravidiel pomerne v poriadku. Oba majú zriadené bezpečnostné tímy a procesy, pomocou ktorých sa dajú problémy reportovať a aj riešiť (Drupal, Wordpres ). Niekoľko krát do roka vychádza bezpečnostná aktualizácia, ktorú netreba ignorovať. V minulosti sa stalo, že aj hlavné verzie mali principiálny problém a niekoľko mesiacov bol web úplne otvorený (SQL injection). Najčastejšie problémy webstránok platia všeobecne: SQL Injection - databázové dopyty posielané z používateľského vstupu Cross Site Scripting (XSS) -  upravený výstup do prehliadača cez modifikovanú URL (napríklad cez jQuery, WYSIWYG) Cross Site Request Forgery (CSRF) - odosielanie príkazov napr. cez adresy obrázkov, vstupov z formulárov a podobne   Tieto kritické miesta majú oba systémy už za sebou. Minimálne v okruhu Drupalistov (WP neviem) sa téma bezpečnosti riešila na každom stretnutí komunity - konferencii, DrupalCampe, DrupalCone a musím povedať chvála Bohu! Aj vďaka tomu môžme lepšie spávať.   Aktualizácia pluginov sa deje pár klikmi. Pri security update jadra vám v ideálnom prípade mail o úspešnom upgrade systému. Treba mať zapnutý modul “update manager”,  aby vám chodili notifikácie o potrebe aktualizácie. Update si urobíte manuálne (FTP, drush), alebo dostávať bezpečnostný newsletter.   Bezpečnosť externých modulov a knižníc Všetky CMS ponúkajú tisíce voľných alebo spoplatnených modulov a pluginov. Aj ich nesprávna voľba môže vážne narušiť bezpečnosť celej stránky. Mnohé z nich používajú navyše externé knižnice, ktoré môžu obsahovať škodlivý kód. Oba systémy majú zadefinované ‘best practices’ pre vývojára modulov, ktoré sú podmienkou pri schvaľovaní kódu. Samotné schvaľovanie nie je jednoduché a trvá dlho. Z časti pomôžu automatické validátory kódu, ktoré odhalia základné chyby (syntax, formát, bezpečnosť), ale finálny krok je na komunite vývojárov.   Drupal coding standards Wordpress best practices   Prepracovaný postup vytvárania Drupal modulov https://www.drupal.org/node/1011698. Zaujímavý je koncept vzájomného schvaľovania modulov - Bonus Program,  je to systém kontroly, kde ak ja skontrolujem minimálne 3 ďalšie projekty a minimálne traja iní skontrolujú môj projekt, proces sa tak urýchli a skvalitní. Celkom potešujúci je aj projekt  http://pareview.sh/, kde sa dajú kontrolovať a testovať celé repozitáre v sandboxe.   Postup pri pridávaní pluginov https://wordpress.org/plugins/about/   Wordpress rieši hlavne právne otázky, bezpečnosť až tak nie. Externé knižnice (javascript, php) sa nahrávajú do špeciálneho adresára “libraries”, ktorý je určený len na čítanie. Nahrávaju sa do wp-content adresára spolu s ďalšími zdrojmi, čo môže byť problém.   Chybná konfigurácia CMS Toto je veľký problém administrátorov webstránok a veľká bezpečnostná diera. Všetci klikači, občasní implementátori sypte popol na hlavu. Triviálne hesla pre klientov (veď si ich neskôr zmenia), benevolentné nastavenie právomocí v rámci redakčného systému, chýbajúca antispam / boot ochrana, nesprávne nastavenie práva na zápis do adresárov, možnosť čítania settings / config súboru s prístupom do databázy - to sú tie najväčšie chyby, ktoré vás, skôr, či neskôr dobehnú.   Drupal má hneď niekoľko pomôcok. Priamo v kontrole stavu Drupal inštalácie vám vyskočia hlavné problémy (napr. vyšsie spomenuté write permissions). Komu to nestačí - môže použiť moduly Security review alebo Hacked na hlbšiu kontrolu zabezpečenia webu. Aj v rámci Drupalu existujú platené služby a DropGuard je jednou z nich, ktorá udržuje váš web v dobrej kondícii https://www.drop-guard.net/. Wordpress má na to tiež modul WP Security Scan alebo platené služby. V tomto ohľade musím pochváliť server administrátorov Websupportu, ktorý pripravili pre svojich klientov Virus Scanner, ktorý funguje celkom spoľahlivo. Predpokladám, že chceli uľahčiť život klientom ale hlavne sebe : ).    Asi ste zažili zdesený telefonát od klienta, že mu Websupport posielam mail, že má napadnutú stránku. Toto funguje.   Najväčším problém - aktualizácia Pre klientov:  Vrelo odporúčam dohodnúť sa dodávateľom po odovzdaní projektu, nech sa vám o web naďalej stará.Tých pár Eur mesačne zvládnete, rozhodne to vyváži možné riziko. Pre dodávateľov: Vrelo odporúčam dohodnúť sa s klientom, že mu za pár EUR budete webstránku pravidelne aktualizovať, vyhnete sa tak veľkej blamáži. Asi ste zaregistrovali kauzu posledných týždňov - Panama papers, obrovský únik tajných informácií a dokumentov z daňového raja. Mohli za to vraj okrem Putina neaktualizované verzie Wordpressu a Drupalu. Miliónová firma si nevedela zabezpečiť aktualizácie za pár EUR. Ak to aj bolo inak, je to výstraha pre všetkých. Viac o téme: theregister.co.uk root.cz/zpravicky Tips&Tricks na záver Existuje zopár rád, ktorými sa odporúčam držať, okrem vyššie spomenutého. Dôležitá je voľba dôveryhodného modulu - pluginu. Treba sa orientovať podľa počtu stiahnutí, hodnoteniu, frekvencie aktualizácií, prípadne zoznam a riešenie chýb. Ak to CMS podporuje, je dobré nepoužívať predvolené nastavenia. Napríklad Drupal ukladá nahrané obrázky a prílohy do adresára “sites/default/files”, ale ľahko to môžete umiestniť hocikde inde. Podobne to je s adresárom “private”, kde sa ukladajú privátne prílohy, môžete ho nazvať a umiestniť hocikde inde. Odporúčam si prejsť aj tieto typy na udržanie Drupalu v kondícii https://www.acquia.com/blog/keeping-drupal-secure, vrátane infografiky update cykloch. Bezpečnosť open-source redakčných systémov je otvorená téma. Kto má záujem sa o problematike dozvedieť viac, prípadne si vydiskutovať problémy osobne, najbližšia príležitosť je už v sobotu 28.5.2016 na československom DrupalCampe, kde bude mať prednášku aj bezpečnostný expert Drupal.org Gábor Hojtsy, aktuálny člen Drupal Security teamu a bývalý leader php.net (a doteraz patrí medzi najdôležitejších editorov - zdroj: http://php.net/manual/en/preface.php ).    V bezpečnostnom porovnaní Drupal vs Wordpress mi osobne vychádza lepšie Drupal. Súdiac aj podľa počtu požiadavkov na záchranu webstránok (Drupal už dávno nie, Wordpress niekoľko krát do roka). Posolstvo na záver: Aktualizujte! PS. Vidíme sa na DrupalCampe.  
Line + Line Created with Sketch.

DrupalCamp 2015 Viedeň

2015/11
Tento víkend od piatka 27.11.2015 do soboty 28.11.2015 sme boli vo Viedni na DrupalCampe. Jeho účelom je zdielanie informácií a vytváranie priateľstiev vrámci Drupal komunity po svete. Počas dvoch dní prednášok sme sa dozvedeli veľa zaujímavého. Tento rok bola hlavnou nosnou témou nová verzia Drupalu, už ôsma v poradí, ktorého stabbilná verzia v týchto dňoch dosiahla oficiálne vydanie a je pripravená na požívanie. Tá prináša veľa zmien a úprav a pokiaľ môže posúdiť všetky rapídne k lepšiemu. Množstvo z modulov vytvorených pre pre Drupal 7 zatiaľ nie sú dostupné, ale na druhej strane veľa funkcí teraz zabečuje jadro. Už sa teším na stavanie nových stránok v tomto systéme. Pre mňa osobne boli naužitočnejšie prednášky o multijazyčnej podpore v novom systéme - v pôvodnom Drupale 7 bolo vždy trápenie vytvoriť stránku s viacjazyčnou podporou. Okrem natívnej podpory viacjazyčnosti Drupal 8 zjednodušuje updaty prekladov a umožňuje "prekladať" stránku do angličtiny - teda meniť pôvodné systémové názvy a popisy. Do Bratislavy sme sa vrátili v sobotu večer s hlavou plnou tém na ďaľšie uvažovanie a spracovanie.
Line + Line Created with Sketch.

Ako nakladať s reklamou

2015/11
Už sa vám niekedy stalo, že ste chceli napísať niečo ohromujúce, nové, prekvapivé a zábavné, a ono nie a nie o vás nič rozumné zakopnúť? Bol som hlboko presvedčený, že po takom smutnom víkende, ako sme zažili uprostred novembra po teroristických útokoch v Paríži, bude tento víkend plný optimizmu. noviniek a inovácií. Pravdepodobne aj niekde boli, ale akosi sa mi ukryli. 
Line + Line Created with Sketch.

Drupal 8 je vonku

2015/11
Štvrtok 19.11.2015 bol pamätný z viacerých dôvodov. Okrem toho, že mal narodeniny otec Drupalu - Dries Buytaert, bol na tento deň stanovený release novej verzie Drupalu - verzie 8. 
Line + Line Created with Sketch.

Neuveriteľné koľko námahy stojí vytvoriť vlastný web

2015/10
Neuveriteľné koľko námahy stojí vytvoriť vlastnú webstránku. Je to ako výstup na vysokú horu. Mesiace robíme na projektoch pre iných klientov a na ten náš web akosi neostáva čas.
Line + Line Created with Sketch.

Povedali o nás

S dodanou prácou som som bol veľmi spokojný.

Roman Gabura, GreenProduction

Nachádzate sa v okolí?

Ak ste neďaleko, príďte nás navštíviť.

Kontakt