Skip to main content

SABER DISTILLERY

Objednávky a informácie o tovare (Po - Pia: 8:00 do 16:00 hod.)

SABER.SK – Audit 01: prvý technický nález

Dátum: 2026-07-13 Rozsah: stage kópia, prenesený zákazkový zdrojový kód a technická inventúra Zhrnutie Aktuálny stav nie je výsledkom jednej chyby. Ide o kombináciu historicky vrstvenej vlastnej témy, masívneho kopírovania WooCommerce šablón, paralelných verzií vlastného pluginu, zásahov do aktualizácií a najmenej jedného vysoko podozrivého MU-pluginu. Hlavný strategický záver: web sa nemá ďalej udržiavať ručným prepisovaním všetkých WooCommerce šablón. Najprv treba oddeliť skutočné zákazkové úpravy od nepoužívaných kópií a balastu. P0 – kritické 1. Podozrivý MU-plugin wp-content/mu-plugins/404.php Súbor zachytáva chyby 404 a pri vybraných slugoch vykonáva HTTP 301 presmerovania na nesúvisiace externé profily a fóra. Príklady slugov: fortune, ventrilo, bitcoin-black, proko, myworldgo. Vyhodnotenie: veľmi pravdepodobný pozostatok SEO spamu alebo kompromitácie. Nie je súčasťou bežnej funkcie webu SABER. Odporúčanie: okamžite preveriť, či je rovnaký súbor aj na produkcii, pred odstránením uchovať forenznú kópiu, odstrániť alebo deaktivovať ho na stage, rozšíriť bezpečnostný audit na celý wp-content, administrátorov, cron, databázové options a modifikované core súbory. 2. Databáza nie je dostupná z WP-CLI WordPress core sa načíta a hlási verziu 6.9.4, ale každý pokus o čítanie options, aktívnej témy a aktívnych pluginov končí Error establishing a database connection. Vyhodnotenie: zatiaľ nie je dokázané, že nefunguje webová stage. Problém môže byť špecifický pre CLI kontext alebo konfiguráciu wp-config.php. Bez opravy však nie je možné spoľahlivo auditovať aktívny stav cez WP-CLI. P1 – vysoká priorita 3. Téma obsahuje 317 súborov v strome WooCommerce V téme saber je prakticky kópia veľkej časti WooCommerce template stromu vrátane cart, checkout, account, order, email, plain email, block email, brands a block templates. Sú tam aj ďalšie vnorené kópie: woocommerce/templates/… woocommerce/templates/templates/… woocommerce/emails.6689/… woocommerce/global.7197/… woocommerce/saber-woocommerce.zip Overená duplicita: súbory woocommerce/single-product/price.php woocommerce/templates/single-product/price.php majú identický obsah aj identický Git blob SHA. Vyhodnotenie: veľká časť stromu pravdepodobne nie je zákazková úprava, ale skopírovaný obsah WooCommerce. To spôsobuje trvalý dlh pri aktualizáciách. Odporúčanie: automaticky porovnať každý override s aktuálnym súborom v wp-content/plugins/woocommerce/templates a rozdeliť ich na: identické kópie – odstrániť z témy, skutočne zmenené šablóny – zdokumentovať a ponechať len nevyhnutné, súbory bez platného náprotivku – preveriť pôvod a použitie, vnorené a záložné adresáre – odstrániť po overení referencií. 4. Paralelné verzie vlastného kupónového pluginu Hlavná verzia: wp-content/plugins/saber-after-order-coupon/saber-after-order-coupon.php verzia 0.1.1, spúšťa sa pri completed, platnosť kupónu 3 mesiace. Vnorená staršia verzia: wp-content/plugins/wp-content/plugins/saber-after-order-coupon/saber-after-order-coupon.php verzia 0.1.0, spúšťa sa pri processing aj completed, platnosť kupónu 30 dní. Vyhodnotenie: adresár wp-content vo vnútri plugins je pravdepodobne omylom skopírovaná cesta alebo pozostatok ručného nasadenia. Aktívny plugin loader WordPressu vnorený plugin štandardne nenačíta, ale vytvára nejasnosť a riziko nasadenia nesprávnej verzie. Odporúčanie: po overení aktívnej cesty odstrániť vnorený adresár a ponechať jediný zdroj pravdy v GitHube. 5. Kupónový plugin označí kupón ako odoslaný bez kontroly výsledku e-mailu Aktuálna verzia vytvorí kupón, zavolá wp_mail() a následne bez kontroly návratovej hodnoty uloží meta príznak _saber_after_order_coupon_sent = 1. Dôsledok: ak pošta zlyhá, kupón existuje, ale zákazník ho nedostane a automatický opakovaný pokus sa už nevykoná. Odporúčanie: kontrolovať výsledok wp_mail(), oddeliť stav coupon_created od mail_sent, zapisovať auditnú poznámku k objednávke a umožniť bezpečný retry. P2 – stredná priorita 6. Téma je staršia zákazková šablóna s technickým dlhom Hlavička témy uvádza verziu 1.5 a pôvodné vytvorenie spoločnosťou ersor s.r.o.; obsahuje poznámku o aktualizácii v októbri 2024. Zistené problémy: wp_title() namiesto modernej podpory title-tag, natvrdo vložené robots=index, follow, natvrdo autor stage.saber.sk, body_class( $class ) s premennou, ktorá v súbore nie je definovaná, duplicitný HTML identifikátor menu_container, chýba wp_body_open(), logo nemá alt, staršie volania bloginfo() priamo v atribútoch. 7. Vypnuté cacheovanie vlastných CSS a JS Téma používa time() ako verziu pri enqueue CSS aj JavaScriptu. Každá požiadavka preto vytvorí novú URL a prehliadač nemôže efektívne použiť cache. Odporúčanie: použiť verziu témy alebo filemtime() príslušného súboru. 8. Easy Updates Manager môže blokovať aktualizácie Plugin stops-core-theme-and-plugin-updates je legitímny Easy Updates Manager 9.0.20. Nie je sám osebe škodlivý, ale jeho účelom je riadiť alebo vypínať aktualizácie jadra, pluginov a tém. Odporúčanie: po obnovení DB prístupu skontrolovať jeho nastavenia. Nehodnotiť iba podľa názvu adresára. Čo zatiaľ nevieme Pre chybu DB pripojenia nepoznáme: aktívnu tému, aktívne pluginy, nastavenia Easy Updates Manager, aktívne cron udalosti, admin používateľov, aktuálne WooCommerce nastavenia a verzie v databáze. Prenesený audit neobsahuje celý WordPress core, všetky pluginy ani uploads. Bezpečnostné preverenie preto zatiaľ nie je úplný forenzný audit. Odporúčané poradie ďalšej práce Bezpečne preveriť a izolovať MU-plugin 404.php na stage aj produkcii. Opraviť WP-CLI prístup k stage databáze bez zverejnenia hesiel. Automaticky porovnať 317 WooCommerce súborov s nainštalovanou verziou WooCommerce. Odstrániť identické a vnorené kópie; ponechať iba preukázateľné zákazkové zmeny. Zjednotiť vlastný kupónový plugin a opraviť spracovanie zlyhania e-mailu. Až potom rozhodnúť, či sa téma bude refaktorovať, alebo sa vzhľad prenesie do čistej novej témy.

13. júla 2026

kONTAKUJTE NáS